1. 常用命令
监听p4p1网卡上来自 192.168.162.14 的包
tcpdump -i p4p1 src host 192.168.162.14
tcpdump -i p4p1 dst port 5060 and udp -s 0 -w aaa.pcap
tcpdump -i p4p1 src host 192.168.162.14 and dst port 5060 and udp -s 0 -w aaa.pcap
tcpdump -i p4p1 dst host 192.168.162.14 and dst port 5060 and tcp -s 0 -w aaa.pcap
tcpdump -i p4p1 src host 192.168.162.14 and udp port 5060 -s 0 -w aaa.pcap
tcpdump -i p4p1 host 192.168.162.14 and 192.168.162.18
tcpdump ip host 210.27.48.1 and ! 210.27.48.2
tcpdump -i eth0 src host hostname
tcpdump -i eth0 dst host hostname
转自:http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html
2. tcpdump 丢包问题解决
- 最小化抓取过滤范围,即通过指定网卡,端口,包流向,包大小减少包数量
- 添加-n参数,禁止反向域名解析
tcpdump -i eth0 dst port 1234 and udp -s 2048 -n -X -tt >a.pack
大多数情况这样就可以解决了
可以通过改善tcpdump上层的处理效率来减少丢包率
- 将数据包输出到cap文件
tcpdump -i eth0 dst port 1234 and udp -s 2048 -n -X -tt -w a.cap
用了这一步,基本上所有的网络server都可以搞定了
- 用sysctl修改SO_REVBUF参数,增加libcap缓冲区长度
这一步是绝招了,由于设计内核参数修改,尽量不要使用,要用了不行,那就没办法了