场景
要在 159.75.206.103 这台机器上抓取指定 UDP 流量的包,你可以直接使用 tcpdump 命令来实现。
以下是具体的操作步骤:
🖥️ 在 159.75.206.103 上执行抓包
你需要使用 tcpdump 工具。如果系统提示未找到命令,请先安装(CentOS: yum install tcpdump,Ubuntu: apt-get install tcpdump)。
请在终端执行以下命令:
1tcpdump -i any -s 0 -w /tmp/wvp_capture.pcap udp port 15062 and host 183.238.228.2
命令参数解释:
-i any:监听所有网卡接口(因为不确定流量具体走哪个网卡,用 any 最稳妥)。-s 0:设置抓包长度为 0(即抓取完整的数据包,不截断,这对分析 SIP 信令内容很重要)。-w /tmp/wvp_capture.pcap:将抓到的数据写入到/tmp/wvp_capture.pcap文件中。udp port 15062 and host 183.238.228.2:这是过滤条件,只抓取 UDP 协议、端口为 15062、且 IP 为 183.238.228.2 的流量。
注意: 命令执行后终端通常不会有任何输出,这是正常的,说明它正在后台静默抓包。你可以让程序运行几分钟(或者在 WVP 上点击几次"目录订阅"),然后按 Ctrl + C 停止抓包。
使用系统自带的抓包工具(推荐)
CentOS 系统通常默认安装了 tcpdump 的底层依赖库 libpcap。即使没有安装 tcpdump 命令行工具,你也可以直接调用这个库来执行抓包,生成的文件是一样的。
请在终端执行以下命令(注意去掉了前面的 1):
1/usr/sbin/tcpdump -i any -s 0 -w /tmp/wvp_capture.pcap host 183.238.228.2
💻 在本地电脑使用 Wireshark 查看
-
下载文件:
你需要把刚才在服务器上生成的
/tmp/wvp_capture.pcap文件下载到你的本地 Windows 电脑上。-
可以使用工具如 WinSCP、FileZilla,或者直接在 PowerShell 中使用
scp命令:1scp root@159.75.206.103:/tmp/wvp_capture.pcap C:\Users\YourName\Downloads\
-
-
Wireshark 分析:
- 双击打开下载好的
wvp_capture.pcap文件。 - 在 Wireshark 的过滤栏输入
sip并回车(因为 GB28181 的信令是基于 SIP 协议的)。 - 重点关注:
- 是否有
MESSAGE包?(通常用于目录订阅和通知) - 是否有
200 OK回复? - 如果有红色的
TCP Retransmission或者大量重复的包,说明网络可能不稳定。
- 是否有
- 双击打开下载好的