我仔细检查了tcpdump和pcap-filter(它决定了tcpdump表达式的语法)的手册页,但我找不到为什么我的表达式出错:
$ sudo tcpdump -i lo 'ip proto tcp'
tcpdump: syntax error
手册页清楚地说明ip proto protocol
是有效的语法:https://www.tcpdump.org/manpages/pcap-filter.7.html
问题可能是版本不匹配吗?
答案 0 :(得分:1)
看起来tcpdump并不理解该上下文中的tcp
别名。您需要使用实际的IP协议号:
sudo tcpdump -i lo ip proto 0x6
如果您也想要IPv6(tcpdump -i lo tcp
转换为):
sudo tcpdump -i lo ip proto 0x6 or ip6 proto 0x6