Networking

使用 Ubiquiti Edge Router X 時使用 Zerotier 暴露 LAN?

  • January 26, 2021

所以我設法通過以下方式安裝了帶有 Ubiquiti Edge Router X 的 ZeroTier:

admin@edgerouter# sudo -i
root@edgerouter:~# curl -s https://install.zerotier.com | sudo bash

並通過 ZeroTier 全球 IP 訪問 Edge OS (Edge Max) 介面,因此我可以在世界任何地方訪問我的路由器,這很棒。

但是,如何訪問連接到路由器的 LAN 設備?例如,我在路由器中有一台具有本地 IP 的設備,192.168.1.39

如何使用 ZeroTier 網路訪問它?

這是解決方案:

  1. 用韌體 2.0.8 更新 Ubiquiti EdgeRouter-X (ER-X)(你可以很容易地Google這個)
  2. 從命令行安裝 ZeroTier(跳過設備映射)
ubnt@edgerouter# sudo -i
root@edgerouter:~# curl -s https://install.zerotier.com | sudo bash

此時 ER-X 無法與 ZeroTier “互動”,因此我們需要修補。

  1. 使用 zerotier-edgeos 進行更新檔(Dennis Kruyt) 從https://github.com/dkruyt/resources/raw/master/zerotier-edgeos.tgz下載此文件
root@edgerouter:/# tar -C / -xvzf /home/admin/zerotier-edgeos.tgz

此時重新啟動後,ZeroTier 界面現在將顯示在路由器儀表板中。

  1. 在 ER-X 路由器中設置 DNAT 和 SNAT 規則,考慮到 Upstream IP 地址和 ZeroTier IP 地址以及 switch0 地址,此外,為了保持設置簡單,創建了一個 Network Group,分別為 Upstream 和 ZeroTier 組(沒有此處特別只是按照標準 Ubiquiti 指南設置組

然後

ubnt@edgerouter# configure
edit service nat rule 1
set description "ZeroTier DNAT" 
set destination group network-group ZeroTier
set inbound-interface ztzlgezugz
set inside-address address 192.168.0.157
set log disable
set protocol all
set type destination
top

edit service nat rule 5000
set description "ZeroTier SNAT"
set log disable
set outbound-interface ztzlgezugz
set outside-address address 10.147.17.15
set protocol all
set source group network-group Upstream
set type source
top

commit
save exit

其中IP192.168.0.157是上游IP eth0,即10.147.17.15是ZT IP

  1. 在 ZeroTier 中設置託管路由:

注意:192.168.1.0/24這裡是連接 LAN 設備的 switch0 地址,在我的情況下是 eth1、eth2、eth3 和 eth4,因為我有 ER-X 路由器

ZT_Managed_Route

完畢。

從這裡,您將能夠訪問switch0通過 Internet 連接的 LAN 設備。

參考:

您可以在第 2 層橋接和第 3 層路由之間進行選擇。我們對 Ubiquiti 沒有太多直接的經驗,但你可以找到很多關於做這些事情的資訊。ZeroTier 介面應顯示為 Ubiquiti 上的另一個介面,然後您應該能夠路由或橋接至/從。

引用自:https://serverfault.com/questions/1003948