微信关注,获取更多

ZeroTier路由器配置技巧:优化网络连接

ZeroTier被设计用于在尽可能多的环境中工作。我们提供多层备用方案,以确保即使在最受限制或故障的物理网络下,也能实现某种程度的连接性。但是,“某种程度的连接性”并不意味着“最佳连接性”。本页面将详细介绍我们推荐的物理网络配置,以获得最佳效果。

问题描述

在使用ZeroTier时,如果你的网络配置不友好,可能会导致大部分ZeroTier流量通过中继间接传输,从而降低速度。其他设置,比如“本地隔离”,也可能对性能产生显著干扰,强制本地流量在互联网上进行传输。

解决方法

1. 更新所有节点至最新版本

确保你的所有节点都已更新到最新版本,以确保你使用的是最新的功能和性能优化。

2. 推荐的本地网络和Internet网关配置

以下是一些推荐的本地网络和Internet网关配置,这些配置适用于大多数典型的部署情况:

  • 不要限制出站UDP流量。
  • 在你的网络上支持UPnP或NAT-PMP可以极大地提高性能,允许ZeroTier端点映射外部端口,从而避免NAT遍历。
  • 如果双方都支持IPv6,建议使用IPv6,它可以极大地提高直接连接的可靠性。如果存在IPv6,应该在没有NAT的情况下实现(IPv6与NAT完全不必要,只会增加复杂性),并配备有允许双向UDP会话的有状态防火墙。
  • 不要使用“对称”NAT。使用“全锥形”或“端口限制锥形”NAT。对称NAT对点对点流量非常不友好,会降低VoIP、视频聊天、游戏、WebRTC以及ZeroTier等许多协议的性能。

3. 多重NAT层次

在ZeroTier端点和互联网之间不应该存在多重NAT层次。多层NAT会引入连接不稳定性,因为不同层次的状态和行为之间会发生混乱的相互作用。不要使用双重NAT。

4. NAT端口映射和连接超时

NAT应该具有不短于60秒的端口映射或连接超时时间,以确保每个设备都可以映射足够数量的端口。

5. 允许本地设备间的直接流量

交换机和无线接入点应该允许本地设备之间的直接本地流量。关闭任何“本地隔离”功能。一些交换机可能允许更精细的控制,在这些设备上,只需允许本地UDP流量在9993端口上进行。

6. ZeroTier使用的端口

ZeroTier监听三个UDP端口:

  • 9993 - 默认端口
  • 从你的ZeroTier地址派生的一个随机高端口号
  • 用于UPnP/NAT-PMP映射的一个随机高端口号

这意味着你的对等方可以在任何端口上监听。为了直接与它们通信,你需要能够发送到任何端口。

7. 是否需要在路由器中转发端口?

不需要。让ZeroTier和UPnP、NAT-PMP和IPv6自动处理端口转发。

8. 系统防火墙和安全软件

如果你的计算机有本地防火墙,请允许与UDP端口9993的流量进出。某些情况下(比如Windows内置防火墙),如果使用我们的安装包之一安装,ZeroTier会自动执行此操作。在其他情况下,比如Linux iptables,我们将此任务留给用户,因为有太多的变化,我们不想尝试手动修改用户设置以避免意外损坏。

一些系统可能还有安全软件,只允许特定应用程序与互联网通信。在这种情况下,你可能需要找到ZeroTier服务二进制文件并进行授权。

最后,需要注意的是,ZeroTier One的虚拟网络端口对于你的系统就像正常的LAN或WiFi端口一样,并受到本地防火墙规则的约束。如果一切看起来正常但你无法访问本地服务,比如SSH或HTTP,请检查本地防火墙规则,确保允许虚拟网络本身上的所需流量。

9. 如何判断我的设备是否在中继?

查看ZeroTier Central的网络成员列表。如果一个成员没有列出物理IP,那么它可能在进行中继。

如果你熟悉命令行,可以尝试使用以下命令行界面:zerotier-cli命令(可能需要管理员/超级用户权限):

  • zerotier-cli info -j:是否为“tcpFallbackActive” true?TCP回退是中继的最慢形式,是最后的手段。
  • zerotier-cli listpeers:查找你要通信的设备的节点ID ,并查看下是否列出了IP地址。如果没有IP地址,则正在进行中继。

结论

通过本教程,你已经学会了如何配置路由器以优化ZeroTier网络连接,确保你能够获得最佳性能。这些配置和技巧将有助于你解决ZeroTier网络中的连接问题,使其更加稳定和高效。

希望这个教程对你有所帮助。如果你有任何其他问题或需要更多的帮助,请随时联系我们。祝你在使用ZeroTier时取得出色的结果!

未经允许不得转载:大神网 » ZeroTier路由器配置技巧:优化网络连接

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏