介绍

ZeroTiernetwork hypervisor是一个自包含的网络虚拟化引擎,它实现了一个类似于VXLAN建立在加密安全的全球点对点网络之上。它提供了与企业SDN交换机相当的高级网络虚拟化和管理功能,但跨越局域网和广域网,并连接几乎任何类型的应用程序或设备。

雷竞技网站microtik已经将ZeroTier作为一个单独的包添加到Rl雷竞技outerOS v7.1rc2中手臂/ ARM64体系结构。

等等,那我能用它做什么?

  • 在家里托管一个游戏服务器(对于局域网游戏很有用),或者和你的朋友一起创建一个局域网聚会;
  • 直接访问NAT后的局域网设备;
  • 通过SSH访问局域网设备,而不打开连接Internet的端口;
  • 使用本地Pi-Hole设置从任何地方通过互联网;

视频教程

网络配置

ZeroTier使用哪些端口?

它监听三个3 UDP端口:

  • 9993—默认值
  • 从您的零层地址派生的随机高编号端口
  • 一个随机的高编号端口,用于UPnP/NAT-PMP映射

这意味着你的同行可以监听任何端口。要直接与它们对话,您需要能够将它们发送到任何端口。

本地网络和外网网关推荐配置

这些ZeroTier推荐的指南与绝大多数使用商品网关和接入点的典型部署一致:

  • 不限制出方向UDP流量。
  • 在您的网络上支持UPnP或NAT- pmp可以通过允许ZeroTier端点映射外部端口并完全避免NAT穿越来极大地提高性能。
  • 建议使用IPv6协议,如果直连链路的两端都支持IPv6协议,可以大大提高直连的可靠性。如果存在,它应该在没有NAT的情况下实现(NAT对于IPv6来说是完全不必要的,只会增加复杂性),并使用允许双向UDP会话的有状态防火墙。
  • 不要使用“对称”NAT。使用“全锥”或“端口限制锥”NAT。对称NAT对点对点流量非常不利,并且会降低VoIP,视频聊天,游戏,WebRTC和许多其他协议以及ZeroTier。
  • 在零层端点和Internet之间不应存在超过一层的NAT。多层NAT由于不同层间状态和行为的混乱交互,导致连接不稳定。没有双重NAT。
  • nat的端口映射或连接超时时间不应短于60秒。
  • 每个nat管理的外部IP地址后面放置的设备不超过16000台,以保证每个设备映射的端口数量充足。
  • 交换机和无线接入点应该允许本地设备之间的直接本地流量。关闭任何“本地隔离”功能。有些交换机可能允许更细粒度的控制,在这些交换机上,允许本地UDP流量进出9993(或一般情况下)就足够了。

配置示例

缺省值为ZeroTier被设计为零配置。用户无需编写配置文件或提供其他节点的IP地址即可启动新的ZeroTier节点。它的设计也是为了快速。世界上任何两台设备都应该能够相互定位并几乎立即通信,所以下面的例子将在RouterOS设备上启用ZeroTier,并使用ZeroTier应用程序连接一台手机。l雷竞技


  1. 注册上my.zerotier.com创建网络,获取网络ID,在这个例子中:1 d71939404912b40;
  2. 下载在RouterOS中安装ZeroTier NPK包,你可以在“Extral雷竞技 packages”下找到,把包上传到设备上并重启设备;
  3. 启用默认的(官方的)ZeroTier实例:

    [admin@雷竞技网站mikrotik] > zerotier/enable zt1
  4. 添加一个新网络,指定你在ZeroTier云控制台中创建的网络ID:

    [admin@雷竞技网站mikrotik] zerotier/interface/add network=1d71939404912b40 instance=zt1
  5. 验证ZeroTier配置:

    [admin@雷竞技网站MikroTik] > zerotier/interface/print标志:R - RUNNING列:NAME, MAC-ADDRESS, NETWORK, NETWORK-NAME, STATUS # NAME MAC-ADDRESS NETWORK NETWORK-NAME STATUS 0 R zerotier1 42:AC:0D:0F:C6:F6 1d71939404912b40 modest_metcalfe OK
  6. 现在您可能需要允许从ZeroTier接口连接到您的路由器,并且(可选),连接到其他局域网接口:

    /ip firewall filter add action=accept chain=forward in-interface=zerotier1 place-before=0 /ip firewall filter add action=accept chain=input in-interface=zerotier1 place-before=0
  7. 在您的智能手机或计算机上安装ZeroTier客户端,按照ZeroTier手册了解如何从那里连接到相同的网络。
  8. 如果访问控制”设为“私人”,您必须在节点成为成员之前对其进行授权:
  9. [admin@雷竞技网站MikroTik] > ip/address/print where interface~" 0 "标志:D - DYNAMIC列:address, NETWORK, interface # address NETWORK interface 3 D 192.168.192.105/24 192.168.192.0 zerotier1 [admin@MikroTik] > ping 192.168.192.252 count=3 SEQ HOST SIZE TTL TIME STATUS 0 192.168.192.252 56 64 407us 1 192.168.192.252 56 64 452us 2 192.168.192.252 56 64 451us发送=3接收=3丢数据包=0% min-rtt=407us avg-rtt=436us max-rtt=452us

指定到特定内部子网的路由零层云控制台,以确保从其他设备连接时可以访问这些网络。

同行

zerotier /同行/

ZeroTier的peer是一个信息性部分,其中包含您的节点所知道的节点列表。节点之间不能相互通信,除非它们在同一网络上加入并获得授权。

[admin@Home] > zerotier/peer/print实例、zt地址、延迟、角色、路径#实例ZT-ADDRESS延迟作用路径0 zt1 61 d294b9cb 186 ms星球活跃,首选,50.7.73.34/9993,recvd: 4 s526ms 62 zt1 f865ae71 270 ms星球活跃,首选,50.7.252.138/9993,recvd: 4 s440ms发送:9 s766ms zt1 778 cde7190 132 ms星球活跃,首选,103.195.103.66/9993,recvd: 4 s579ms发送:9 s766ms 3 zt1 992 fcf1db7 34星球活跃,女士优先,195.181.173.159/9993,recvd: 4 s675ms发送:4 s712ms zt1 130 d630 159924叶活跃,女士优先,34.121.192.xx / 21002, recvd: 3 s990ms发送:3 s990ms

参数

[admin@雷竞技网站MikroTik] > zerotier/
财产 描述
名字(年代特林;默认值:zt1 实例名。
港口数量;默认值:9993 实例侦听的端口号。
身份字符串;默认) 实例40位唯一地址。
接口(字符串;默认值:全部) 通过ARP和IP类型连接发现零层对等体的接口列表。
route-distance(数量;默认值:1 从行星/月球服务器获得的路线距离。
[admin@雷竞技网站MikroTik] > zerotier/interface/
财产 描述
allow-default字符串;是|否) 网络可以覆盖系统默认路由(强制VPN方式)。
使全球字符串;是|否) 零层IP地址和路由可以在公网IP空间重叠。
allow-managed字符串;是|否) 完成零层管理IP地址和路由的分配。
arp-timeout数量;默认值:汽车 ARP超时值。
评论字符串;默认值:) 接口的描述性注释。
临摹 允许复制现有接口配置。
disable-running-check字符串;是|否) 强制界面处于“运行”状态。
实例字符串;默认值:zt1 ZeroTier实例名。
名字(年代特林;默认值:zerotier1 一个简短的名字。
网络字符串;默认) 16位网络ID。

控制器


l雷竞技RouterOS以节点的角色实现了ZeroTier功能,其中大多数网络配置必须在ZeroTier网页仪表板上完成。然而,在你希望在自己的设备上完成所有配置的情况下,RouterOS可以为你提供自己的控制器l雷竞技

一个常见的误解是将网络控制器与根服务器(行星和卫星)混为一谈。根服务器是在以下位置操作的连接促进器VL1水平。的配置管理器和证书颁发机构VL2水平通常,根服务器不连接或控制虚拟网络,网络控制器也不是根服务器,尽管节点可以同时执行这两项任务。

/ / zerotier /控制器

每个ZeroTier实例都有一个可用于托管虚拟网络的自托管网络控制器。控制器负责允许成员进入网络,并发布包括证书在内的默认配置信息。理论上,控制器可以承载多达2^24个网络,并为数百万(或更多)设备提供服务,但出于负载平衡和容错的原因,我们建议将大量网络分布在许多控制器上。

参数

财产 描述
广播(yes | no;默认值:是的 允许接收广播(FF: FF: FF: FF: FF: FF)包。
评论字符串;默认值:) 控制器的描述性注释。

临摹字符串;默认值:)

复制现有项。它从另一个项目中获取新项目属性的默认值。如果不想进行精确的复制,可以为某些属性指定新值。当复制有名称的项时,通常需要为副本指定一个新名称。
实例字符串;默认值:zt1 ZeroTier实例名。
ip范围知识产权;默认值:) IP范围,例如:172.16.16.1-172.16.16.254。
ip6-6plane(yes | no;默认值:没有 一个选项给每个成员一个/80在一个/40网络,但使用NDP模拟路由所有低于80的ip给其所有者。的6架飞机模式对于像Docker这样的用例来说是很好的,因为它允许每个成员在其/80范围内分配IPv6地址,这些地址在网络上即时和全局地工作。
ip6-rfc4193(yes | no;默认值:没有 rfc4193模式给每个成员一个/128在一个/88网络。
ip6-rangeIPv6;默认值:) IPv6范围,例如fd00:feed:feed:beef::-fd00:feed:feed:beef:ffff:ffff:ffff:ffff:ffff。
mtu(整数;默认值:2800 MTU网络。
multicast-limit整数:默认值:32 组播报文的最大接收方。
名字字符串;默认值:) 此控制器的简称。
网络字符串;默认) 16位网络ID。
私人(yes | no;默认值:是的 启用访问控制。
路线IP@GW;默认值:) 按以下格式推送路由:
Routes::= Route[,Routes]
Route::= Dst[@Gw]

配置示例

在下面的例子中,我们将使用RouterOS内置的ZeroTier控制器来发送l雷竞技我们的新网络主机适当的证书、凭据和配置信息。控制器将从“RouterOS Home”设备操作,我们将加入我们的网络3个单l雷竞技元:手机,笔记本电脑,RouterOS Office设备,但理论上,您可以在一个网络中加入多达100个设备。

l雷竞技RouterOS回家

首先,我们启用在VL1水平:

[admin@Home] /zerotier> print列:NAME, PORT, IDENTITY。公共# name端口标识。公共的;;;ZeroTier中央控制器- https://my.zerotier.com/ 0 zt1 9993 879c0b5265:0:d5fd2d17805e011d9b93ce8779385e427c8f405e520eea9284809d8444de0335a817xxb21aa4ba153bfbc229ca34d94e08de96d925a4aaa19b252da546693a28

现在我们通过控制器部分创建一个新的网络,它将在VL2的水平。每个网络都有自己的控制器,每个网络ID由控制器地址和控制器ID组合生成。

注意,我们使用私人= yes选择更安全的网络:

[admin@Home] /zerotier> controller/add name=ZT-private instance=zt1 ip-range=172.27.27.10-172.27.27.20 private=yes routes=172.27.27.0/24 [admin@Home] /zerotier> controller/print列:instance, name, NETWORK, private # instance name NETWORK private 0 zt1 ZT-private 879c0b5265a99e4b yes

在接口部分下添加我们的新网络:

[admin@Home] /zerotier> interface/add network=879c0b5265a99e4b name=myZeroTier instance=zt1 [admin@Home] /zerotier> interface/print interval=1 Columns: name, MAC-ADDRESS, network, STATUS # name MAC-ADDRESS network STATUS 0 myZeroTier 4A:19:35:6E:00:6E 879c0b5265a99e4b ACCESS_DENIED

每个新的对等体都要求一个控制器加入网络,在这种情况下,我们有ACCESS_DENIED状态,我们必须授权一个新的对等体,那是因为我们使用了私人= yes选择。

授权后,网络中的每个成员从控制器接收到新的对等体的信息,并批准他们可以与它们交换数据包:

[admin@Home] /zerotier> controller/member/print Columns: NETWORK, ZT-ADDRESS # NETWORK ZT-ADDRESS 0 ZT-private 879a0b5265 [admin@Home] /zerotier> controller/member/set 0 authorized=yes

验证新配置的IP地址和路由:

[admin@Home] /zerotier> /ip/address/print where interface~"Zero" Flags: D - DYNAMIC列:address, NETWORK, interface # address NETWORK interface 4 D 172.27.27.15/24 172.27.27.0 myZeroTier [admin@Home] /zerotier> /ip/route/pr where gateway~"Zero" Flags: D - DYNAMIC;A -活跃的;c, y - COPY列:DST-ADDRESS, GATEWAY, DISTANCE DST-ADDRESS网关距离DAc 172.27.27.0/24 myZeroTier 0

l雷竞技RouterOS办公室

Office设备侧配置。我们将启用默认实例,并要求控制器加入879年c0b5265a99e4b网络:

[admin@office] /zerotier> interface/add network=879c0b5265a99e4b instance=zt1 name=ZT-interface [admin@office] /zerotier> interface/print interval=1 Columns: name, MAC-ADDRESS, network, STATUS # name MAC-ADDRESS network STATUS 0 ZT-interface 4A:40:1C:38:97:BA 879c0b5265a99e4b ACCESS_DENIED

和前面一样,因为我们的网络是私有的,我们必须通过“RouterOS主设备”来授权一个新的对等体。l雷竞技然后验证从控制器接收到的IP地址和路由:

[admin@Home] /zerotier> controller/member/print标志:A - AUTHORIZED Columns: NETWORK, ZT-ADDRESS, IP-ADDRESS, LAST-SEEN # NETWORK ZT-ADDRESS IP-ADDRESS LAST-SEEN 0 A ZT-private 879a0b5265 172.27.27.15 1 A ZT-private 554a914c7f 172.27.27.17 2 A ZT-private a83ac6032a 172.27.27.10 3 ZT-private deba5dc5b1 172.27.27.13 3s348ms [admin@Home] /zerotier> controller/member/set 3 AUTHORIZED =yes [admin@Home] /zerotier> controller/member/print标志:A - AUTHORIZED Columns:NETWORK, ZT-ADDRESS, IP-ADDRESS, LAST-SEEN # NETWORK ZT-ADDRESS IP-ADDRESS LAST-SEEN 0 A ZT-private 879a0b5265 172.27.27.15 1 A ZT-private 554a914c7f 172.27.27.17 2 A ZT-private a83ac6032a 172.27.27.10 3 A ZT-private deba5dc5b1 172.27.27.13 4s55ms

通过ZeroTier验证获得的IP地址和路由:

[admin@office] /zerotier> /ip/address/print where interface~“ZT”标志:D - DYNAMIC列:address, NETWORK, interface # address NETWORK interface 0 D 172.27.27.13/24 172.27.27.0 ZT-interface [admin@office] /zerotier> /ip/route/print where gateway~“ZT”标志:D - DYNAMIC;A -活跃的;c, y - COPY列:DST-ADDRESS, GATEWAY, DISTANCE DST-ADDRESS网关距离DAc 172.27.27.0/24

其他设备


下载ZeroTier应用程序为您的手机或电脑,并加入您新创建的网络:

1)通过我们的笔记本电脑零层应用程序,我们加入879年c0b5265a99e4b网络;

2)用户Zerotier手机app加入879年c0b5265a99e4b网络;

还有所有其他的新主机你都必须在/ / zerotier /控制器/成员部分。


















  • 没有标签