Linux中國

ZeroTier:你自己的虛擬骨幹網

自動化是現在的一個熱門話題。在我作為網站可靠性工程師(SRE)的日常工作中,我的部分職責是將儘可能多的重複性任務自動化。但是我們當中有多少人在日常生活、非工作生活中這樣做呢? 今年,我專註於自動化工作,以便我們可以專註於重要的事情。

在實現一切自動化的同時,我在一些遠程站點上遇到了困難。我不是一個網路專家,所以我開始研究我的選擇。在研究了各種虛擬專用網路(VPN)、硬體端點、防火牆規則以及支持多個遠程站點的所有東西後,我感到困惑、暴躁,並對這一切的複雜性感到沮喪。

然後我發現了 ZeroTierZeroTier 是一個加密的虛擬主幹網,允許多台機器像在一個網路上一樣通信。代碼全部是開源的,你可以自行託管控制器,或者使用 ZeroTierOne 服務,有免費或付費計劃。我現在使用的是它們的免費計劃,它很強大、可靠,而且非常穩定。

因為我使用的是 Web 服務,所以我不打算詳細介紹運行控制器和根服務。ZeroTier 在他們的 文檔 中對如何做到這一點有完整的參考,而且非常好。

在 Web 用戶界面中創建了我自己的虛擬網路之後,客戶端的安裝幾乎是微不足道的。ZeroTier 有 APT、RPM、FreeBSD 和許多其他平台的軟體包,所以讓第一個節點上線不需要什麼努力。

安裝完畢後,客戶端就會連接到控制器服務,並為節點生成一個唯一的 ID。在 Linux 上,你使用 zerotier-cli 命令來加入一個網路,使用 zerotier-cli join NETWORKID 命令:

$ sudo zerotier-cli info
200 info 469584783a 1.x.x ONLINE

你也可以使用 zerotier-cli 來獲得連接和可用節點的列表,改變網路設置,以及離開網路。

Image of Setting up a New Node

在加入一個網路後,你必須批准該節點的訪問,可以通過網路控制台或調用應用程序編程介面(API)。這兩種方法在 ZeroTier 網站上都有文檔說明。連接兩個節點後,無論你身在何處或位於防火牆的哪一側,你都可以相互連接,就像你們在同一個建築的同一個網路中。我的主要用例之一是 遠程訪問我的家庭助理環境,而不需要打開防火牆埠或將其暴露在互聯網上(關於我的家庭助理設置和相關服務的更多信息,見後文)。

我自己做的一件事是為內部 DNS 設置了一個 Beta ZeroNDS 服務。這為我管理自己的名稱服務或為我所有的私人主機和 IP 地址創建公共記錄減少了很多複雜性。我發現操作說明非常簡單直白,並且能夠在大約 5 分鐘內為我的私人網路建立一個 DNS 伺服器。每個客戶端必須允許 Zerotier 設置 DNS,這在 GUI 客戶端中非常簡單。要使它在 Linux 客戶端上使用,請使用:

$ sudo zerotier-cli setNETWORKID allowDNS=1

在你添加和刪除主機時,不需要其他更新,它「就能工作」。

$ sudo zerotier-cli info
200 info 469584845a 1.x.y ONLINE
$ sudo zerotier-cli join
93afae596398153a 200 join OK
$ sudo zerotier-cli peers
200 peers
<ztaddr> <ver> <role> <lat> <link> <TX> <RX> <path>
61d294b9cb - PLANET 112 DIRECT 7946 2812 50.7.73.34/9993
62f865ae71 - PLANET 264 DIRECT 7946 2681 50.7.76.38/9993
778cde7190 - PLANET 61 DIRECT 2944 2901 103.195.13.66/9993
93afae5963 1.x LEAF 77 DIRECT 2945 2886 35.188.31.177/41848
992fcf1db7 - PLANET RECT 79124 DI47 2813 195. 181.173.159/9993

我只提到了它所有功能的表面。ZeroTier 還允許在 ZeroTier 網路之間建立橋接、高級路由規則等。它們甚至有一個 Terraform 提供者 和一個 很棒的 Zerotier 資源 清單。到今天為止,我正在使用 ZeroTier 連接四個物理站點的機器,其中三個在 NAT 防火牆後面。Zerotier 的設置很簡單,而且管理起來幾乎完全不費力。

via: https://opensource.com/article/22/5/zerotier-network

作者:Kevin Sonney 選題:lkxed 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國