这是我的tcpdump
过滤器(ip[8]
是IP ttl字段,icmp[0]=11
对应于超时的ICMP消息):
(ip and ip[8]=2 and src host $myIPAddress) or (icmp and dst host $myIPAddress and icmp[0]=11)
以下是我在捕获文件中找到的内容:
>>> p.show()
###[ Ethernet ]###
dst = 00:15:f2:e3:90:e9
src = 00:11:43:e5:48:10
type = 0x800
###[ IP ]###
version = 4L
ihl = 5L
tos = 0xc0
len = 56
id = 19126
flags =
frag = 0L
ttl = 254
proto = icmp
chksum = 0xa697
src = 127.0.0.1
dst = 127.0.0.1
\options \
为什么我会捕获 ICMP localhost 数据包?无论如何这样的包的目的是什么?而且,最重要的是,为什么它不被上述过滤器拒绝?
答案 0 :(得分:0)
什么是“$ myIpAddress”?它是字面上的IPv4地址吗?如果它实际上类似于FQDN或主机名,则手册页会解释会发生什么:
http://www.tcpdump.org/manpages/pcap-filter.7.html
host host
(stuff removed)
If host is a name with multiple IP addresses, each address will be checked for a match.
我不确定会发生什么,可能是IP映射到MAC地址?
我喜欢盖伊关于使用-d。
的建议