由 ZeroTier 提供支援。 建立虛擬網路的實用指南。 第2部分

在本文所描述的前五個步驟中 由 ZeroTier 提供支援。 建立虛擬網路的實用指南。 第1部分 我們透過虛擬網路連接了三個地理上遙遠的節點。 其中一個位於實體網路中,另外兩個位於兩個獨立的 DC 中。  

由 ZeroTier 提供支援。 建立虛擬網路的實用指南。 第2部分
儘管這些節點中的每一個都被一一添加到網路中,但這並沒有花費太多時間。 但是,如果您需要將實體網路上的所有節點而不是一個節點連接到 ZeroTier 虛擬網絡,該怎麼辦? 有一天,當我對組織從虛擬網路到網路印表機和路由器的存取的問題感到困惑時,出現了這項任務。 

我嘗試使用上面描述的方法,但它並不快,而且到處都不容易。 例如,網路印表機 - 您不能只是連接它。 Mikrotik - ZeroTier 不支援。 怎麼辦? 經過大量谷歌搜尋並分析硬體後,我得出的結論是有必要組織一個網橋。

(還 源自英語橋接器(bridge)是 OSI 模型的二級網路設備,旨在將電腦網路的各個網段(子網路)組合成一個網路。

我想在這篇文章中分享我是如何做到這一點的故事。 

蓋一座橋要花多少錢...

首先,身為管理員,我必須決定網路中的哪個節點將充當橋樑。 研究了這些選項後,我意識到它可以是任何能夠在網路介面之間組織橋樑的電腦設備。 它可以變得像路由器一樣——一個設備 運行 OpenWRTTeltonika的RUT系列設備,以及常規伺服器或電腦。 

當然,一開始我考慮使用有 OpenWRT 的路由器。 但考慮到現有的 Mikrotik 完全適合我,雖然不支援與 ZeroTier 集成,而且我實在不想變態、“手鼓跳舞”,所以我決定用電腦作為網橋。 也就是說,Raspberry Pi 3 Model B 不斷連接到運行最新版本 Raspbian(基於 Debian Buster 的作業系統)的實體網路。

為了能夠組織橋接,設備上必須有一個未被其他服務使用的網路介面可用。 就我而言,主乙太網路已經在使用中,所以我組織了第二個。 使用基於 Realtek RTL8152 晶片組的 USB 乙太網路適配器來完成此任務。

將適配器連接到空閒 USB 連接埠後,更新並重新啟動系統:

sudo apt update && sudo apt upgrade -y
sudo reboot

我檢查了系統是否看到 USB 乙太網路適配器:

sudo lsusb

分析所得的數據後

Bus 001 Device 004: ID 0bda:8152 Realtek Semiconductor Corp. RTL8152 Fast Ethernet Adapter
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

我很高興地註意到設備 004 只是我的適配器。

接下來,我澄清了哪個網路介面分配給該適配器:

dmesg | grep 8152

[    2.400424] usb 1-1.3: New USB device found, idVendor=0bda, idProduct=8152, bcdDevice=20.00
[    6.363837] usbcore: registered new interface driver r8152
[    6.669986] r8152 1-1.3:1.0 eth1: v1.09.9
[    8.808282] r8152 1-1.3:1.0 eth1: carrier on

結果是 eth1 🙂 我現在可以設定它和網橋。 

我實際上所做的是遵循以下演算法:

  • 安裝的網橋管理套件:
    sudo apt-get install bridge-utils
  • 已安裝 ZeroTier XNUMX:
     

    curl -s https://install.zerotier.com | sudo bash
  • 連接的 將其連接到現有的 ZeroTier 網路:
    sudo zerotier-cli join <Network ID>
  • 執行命令禁用 ZeroTier IP 位址和路由管理:
    sudo zerotier-cli set <networkID> allowManaged=0

接下來在您的網路控制器上:

В 網絡應用 點擊了 細節,找到並點擊鏈接 v4分配模式 並且透過取消選取該複選框來停用 IP 位址的自動分配 從 IP 分配池自動分配

由 ZeroTier 提供支援。 建立虛擬網路的實用指南。 第2部分
之後,我透過設定名稱並選取複選框來授權連接的節點 合法 и 主動橋。 我沒有分配IP位址。

由 ZeroTier 提供支援。 建立虛擬網路的實用指南。 第2部分
然後他回到在節點上設置網橋,為此他透過終端機開啟網路介面設定檔進行編輯:

sudo nano /etc/network/interfaces

我在哪裡添加了以下幾行?

auto eth1
allow-hotplug eth1
iface eth1 inet manual

auto br0
allow-hotplug br0
iface br0 inet static
        address 192.168.0.10
        netmask 255.255.255.0
        gateway 192.168.0.1
        network 192.168.0.0
        broadcast 192.168.0.255
        dns-nameservers 127.0.0.1
        bridge_ports eth1 ztXXXXXXXX
        bridge_fd 0
        bridge_maxage 0

在哪裡 eth1 — 未指派 IP 位址的已連接 USB 乙太網路轉接器。
br0— 使用從我的實體網路的位址範圍分配的永久 IP 位址建立網橋。
ztXXXXXXXXX — ZeroTier 虛擬介面的名稱,由指令識別:

sudo ifconfig

輸入資訊後,我儲存了設定檔並使用以下命令重新載入網路服務:

sudo /etc/init.d/networking restart

為了檢查橋的功能,我運行了命令:

sudo brctl show   

根據收到的數據,大橋已經升起。

bridge name	bridge id		STP enabled	interfaces
br0		8000.00e04c360769	no		eth1
							ztXXXXXXXX

接下來,我切換到網路控制器來設定路由。

為什麼我要點擊網頁節點清單中的連結? IP分配 . 接下來,在打開的視窗中,按一下 管理路線。 我轉到了一個新頁面,其中 目標 指出 0.0.0.0 / 0, 並作為 網關 — 先前指定的組織網路位址範圍內網橋的 IP 位址。 以我為例 192.168.0.10

由 ZeroTier 提供支援。 建立虛擬網路的實用指南。 第2部分
他確認了輸入的數據,並開始檢查節點的網路連接性,從實體網路節點 ping 虛擬網路中的節點,反之亦然。

就這樣!

然而,與截圖中的原型不同的是,虛擬網路節點的 IP 位址與實體網路節點的 IP 位址位於同一範圍。 當橋接網路時,這種模型是可能的,主要是它們不與 DHCP 伺服器分配的位址重疊。

在本文中,我不會單獨討論在運行 MS Windows 和其他 Linux 發行版的主機端設定網橋 - 互聯網上有很多關於此主題的材料。 網路控制器側的設定與上述相同。

我只是想指出,Raspberry PI 是一種經濟且方便的工具,用於透過 ZeroTier 連接網絡,而不僅僅是作為固定解決方案。 例如,外包商可以使用基於 Raspberry PI 的預先設定網橋將所服務用戶端的實體網路與基於 ZeroTier 的虛擬網路快速結合。

讓我總結一下故事的這一部分。 我期待著提問、回覆和評論 - 因為我將在它們的基礎上建立下一篇文章的內容。 同時,我建議您嘗試使用專用網路控制器來組織自己的虛擬網絡,該控制器具有基於市場上 VDS 的 GUI 在線 RUVDS。 而且,所有新客戶都有3天的免費試用期!

-> 介紹。 理論部分。 地球智慧乙太網路交換機
-> 建立虛擬網路的實用指南。 第1部分
-> 建立虛擬網路的實用指南。 第2部分

由 ZeroTier 提供支援。 建立虛擬網路的實用指南。 第2部分

來源: www.habr.com

添加評論