OpenSIPS vs Kamailio, 你应该选择哪个?
维度 opensips kamalio 说明 性能 4.5 5 性能接近 脚本能力 4 5 kmailio脚本更友好,支持预处理,宏 稳定性 4 5 opensips开发更激进,所以稳定性没有kamailio高 特殊能力 5 3 opensips在拓扑隐藏,注册信息同步,动态新增SIP端口方面能力更强 无论从哪些方面,OpenSIPS和Kamailio似乎都可以相互替代。 但是,有几个特别的能力,你可能要提前考虑。 1. 拓扑隐藏能力 1.1. 什么是拓扑隐藏 假设某 VoIP 运营商没有启用拓扑隐藏,对方运营商收到的 INVITE 可能是这样的: INVITE sip:441234567890@carrierB.net SIP/2.0 Via: SIP/2.0/UDP gw3.carrierA.net:5060;branch=z9hG4bK-342343 Via: SIP/2.0/UDP core-switch1.internal.local:5060;branch=z9hG4bK-983423 Via: SIP/2.0/UDP edge1.carrierA.net:5060;branch=z9hG4bK-238472 From: <sip:+12065550123@carrierA.net>;tag=98324 To: <sip:+441234567890@carrierB.net> Call-ID: a98sdasdh23@10.12.0.15 Contact: <sip:fs1.internal.local:5060> Record-Route: <sip:edge1.carrierA.net;lr> Record-Route: <sip:core-switch1.internal.local;lr> User-Agent: FreeSWITCH-mod_sofia/1.10 看起来只是普通 SIP 报文,但实际上信息量非常巨大。 Via头会暴露所有经过的节点, 只靠一个包就能画出你的 SIP 网络图 Call-ID暴露内网地址:Call-ID: a98sdasdh23@10.12.0.15 User-Agent暴露了服务器类型和版本,黑客会直接去查询对应版本的CVE和漏洞 Record-Route暴露dialog经过哪些节点 黑客利用上面的信息,针对弱点攻击: SIP flood REGISTER attack RTP injection SIP scanning 启用拓扑隐藏后,对方只能看到一个对外的SIP Server, 内部网络信息被完全隐藏。 ...