我们在处理expressway 的相关问题时,无论是B2B call 还是MRA login 还是webrtc 加会,都会用到expressway 的diagnostic logging 中的tcpdump 来抓取wireshark packet capture. 但是从网页开启的tcpdump session最大的file size 就是50 M。对于流量比较大的环境,有可能会出现抓包抓不到我们想要的内容的情况。
所以说我们可以通过expresway 的root 账号,来利用root 下的tcpdump 来获取数据包。
mkdir /mnt/harddisk/traces <<<<<<<创建一个traces 的文件夹用来存放抓包文件。
Enter command, tcpdump -w /mnt/harddisk/traces/trace-eth0.pcap -s 0 -C 40 -W 100 -i eth0 <<<<抓取eth0
-C File size 40 million bytes, almost 40M.
-s Sets how much of the packet to see. 0 shows the full packet.
-i Sets the interface to use
-W file count
所以我们这个命令的意思就是说在/mnt/harddisk/traces 路径下存放trace-eth0.pcap 的文件。抓所有的包,最多存放100 个,每个最多40M 。
对于双网卡的expressway-e,我们可以再开一个SSH session 然后抓另一个网口。
Enter command,tcpdump -w /mnt/harddisk/traces/trace-eth1.pcap -s 0 -C 40 -W 100 -i eth1
通过按ctrl C 来停止tcpdump。之后就可以通过winscp 下载/mnt/harddisk/traces 路径下的文件。将文件从trace-eth1.pacp00 改成trace-eth1.pcap即可用wireshark 直接打开看。