网状透明代理和服务器在同一系统上

我想使用netsed更改在Linux系统(debian 10 Stretch)上运行的PBX服务器上的传入SIP通信(UDP端口5060)。

在第一步中,我只是尝试设置电话以连接到UDP / 5061,并使用以下命令开始联网:

./netsed udp 5061 127.0.0.1 5060 s/profile-level-id=4280D/profile-level-id=42800D

流量被截取,更改并转发到PBX软件的端口5060。

不幸的是,SIP协议“通知”电话使用的端口与PBX不匹配(由于端口转发,pbx使用的是5060,电话使用的是5061)。现在的问题是如何使用网状网。

所以问题是如何在与pbx相同的系统上创建透明代理。

还是有一种方法可以监听端口5060上的nets,然后将其传递给端口5060上的pbx软件?

较深的背景是Mobotix门电话,这些电话用于未正确编码配置文件级别ID字段的呼出电话(该字段的长度应为6个base16字符,但长度为5个字符)。我的想法是,只要SIP邀请进入PBX,就简单地更改配置文件级别ID。

StackExchange的相同问题。

xyhjojoy 回答:网状透明代理和服务器在同一系统上

如果我不误解你的想法,我的事情很有趣;您正在尝试使用 kill -9 $(lsof -i:9604 -t) 2> /dev/null 设置透明的应用程序IP代理。根据该实验,直接解决方案不适合,因为SIP协议“ 通知”表明“ netsed”正在更改数据路径。

一些需要注意的地方:

  • SIP 本身无法通过 NAPT 用作传输数据 包含IP地址和端口号。

  • 此外, TLS SIP 传输协议无关 表示已授权 SIP 会话在站点上同时使用 UDP TCP 同时。

我建议您查看 SIP 代理, SBC B2BUA STUN ,以便进行构建正确理解所有这些问题,似乎是一条艰难的道路,但很有价值。

或者您可以从 SIP 代理中获得灵感,并在netsed中实现最少的 SIP 代理功能。这很有趣,但并不容易。

但是,如果您放弃了“基本”代理的最初想法,则可以使用netsed之类的SIP工具箱。这是进行SIP相关管道的一种已知方法,但是显然您的最初目标很远。

希望此帮助。

本文链接:https://www.f2er.com/3155967.html

大家都在问