首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ZeroTier上连接来自不同局域网的两个SIP电话

在ZeroTier上连接来自不同局域网的两个SIP电话
EN

Server Fault用户
提问于 2019-10-14 16:56:13
回答 1查看 597关注 0票数 1

我想通过ZeroTier连接来自不同地点的两个SIP电话。我没有问题配置星号,但我迷失了如何连接远程(局域网2)电话使用转发。

这种情况可以这样描绘:

代码语言:javascript
复制
--------------------------+---------------------------------     
LAN 1                     I           LAN 2
192.168.2.0/24            I           192.168.3.0/24
--------------------------+---------------------------------
                          I                          
  ASTERISK +              I           
ZeroTier node 1           I           ZeroTier node 2
192.168.192.117  <================>   192.168.192.128                               
192.168.2.117             I           192.168.3.105
      ^                   I                 ^
      |                   I                 |
      v                   I                 v                                   
SIP phone 1               I           SIP phone 2                                        
192.168.2.101             I           192.168.3.101

我在192.168.2.117上运行了星号服务器。在LAN 1上看电话没有问题。问题是如何在LAN 2上看到电话。

我阅读了关于iptable的一些说明,并取得了部分成功--似乎我可以在LAN-1上的ZeroTier节点上看到来自远程电话的数据包,因为有以下规则:

代码语言:javascript
复制
iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A PREROUTING -p udp -i eth0 -j DNAT --to 192.168.192.117

这个想法是把所有传入的UDP从LAN 2转发到LAN 1上的ZeroTier。我必须承认我不完全理解这里写的是什么。而且这可能是完全错误的:

不过仅此而已。回不去了。

ZeroTier在本地支持一些桥接,但我必须承认,网络对我来说是“高数学”。

有人能帮忙吗?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2019-12-16 20:22:49

在同事的大力帮助下,我设法使它发挥作用。这个想法是用星号来显示来自ZeroTier节点2的电话2数据包--使192.168.3.101看起来像192.168.192.128。所以:

  • 对于来自电话2 (192.168.3.101)的每个UDP数据包,源IP改为192.168.192.128,目的地更改为192.168.192.117。
  • 对于来自星号的响应数据包(192.168.192.117) -将源IP更改为192.168.192.128,将目的地IP更改为192.168.3.101
代码语言:javascript
复制
iptables -t nat -A PREROUTING  -p udp -s 192.168.3.101   -j DNAT --to 192.168.192.117
iptables -t nat -A POSTROUTING -p udp -s 192.168.3.101   -j SNAT --to 192.168.192.128
iptables -t nat -A PREROUTING  -p udp -s 192.168.192.117 -j DNAT --to 192.168.3.101
iptables -t nat -A POSTROUTING -p udp -s 192.168.192.117 -j SNAT --to 192.168.192.128

现在,使用一些超级基本的星号配置,我可以通过ZeroTier调用远程some,而无需对ZeroTier节点进行任何额外的配置,也不需要以任何方式更改LAN-2配置。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/987965

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档