识别 VoIP 用户

识别 VoIP 用户

我正在寻找一种方法,使用数据包分析来识别我的 ISP 网络上尽可能多的消费者 VoIP 用户。

我的设置如下:

在我的核心交换机上,所有进出千兆位1的流量都是已 SPAN到千兆位2,我有一个Linux服务器连接在那里。

以下是我一直在尝试的:

我运行 tshark 来查找我的网络和标准 SIP 端口的过滤。例如:

tshark -i eth0 -f "(net 1.2.3.4/24 or net 4.5.6.7/24) and (port 5060 or port 5061)" -w ./outfile

运行了一个多星期,然后通过输出文件搜索唯一 IP 列表。

我看到一些 SIP 用户采用这种方式,但数量远远不够。这种方法有什么问题吗?据我了解,大多数主要的消费类 VoIP 产品(如 Vonage)都使用 SIP 进行信令传输。

我想要的是:

我想对协议进行分类,寻找 SIP、RTP 等。如果我安装L7 过滤器我可以使用 iptables 来标记我感兴趣的流量,但我不知道从哪里获取唯一 IP 列表。

我愿意接受任何建议。

答案1

监控流量的最佳选择可能是 sflow - 请查看网络设备制造商的文档,了解如何在交换机上配置它。对于聚合器,请查看类似阿古斯或者如果您只是想捕获进程的 sflow 数据,请参阅 Inmon 的 sflow 工具包。

还有其他协议在广泛使用,MGCP 主要是被淘汰的,您可能会看到 SCCP 或更可能是一些 IAX 中继。另外,请注意 Skype 使用完全专有的 P2P 协议。

我以前曾使用过像 Packeteer 这样的设备来分析和优先处理这些流量,但您的描述告诉我,这对您来说可能不具有商业可行性。

是什么让您认为使用 VoIP 的用户比您所看到的要多?

答案2

所以真正的问题是你想追踪什么?如果这是一个正常的电话系统,我会支持 Zypher 的建议,检查 PBX,如果那不是一个选项,我建议确认相关设备确实在使用 SIP。我支持了一个使用 Shoretel VOIP 电话的环境,发现虽然一些会议电话运行 SIP,但绝大多数电话使用 MGCP。

相关内容