对于排除转储中私有 IP 地址之间的所有流量的通用过滤器,我想出了以下内容:
sudo tcpdump -n '
(not
(
(src net 172.16.0.0/20 or src net 10.0.0.0/8 or src net 192.168.0.0/16)
and
(dst net 172.16.0.0/20 or dst net 10.0.0.0/8 or dst net 192.168.0.0/16)
)
) and
(not
(
(dst net 172.16.0.0/20 or dst net 10.0.0.0/8 or dst net 192.168.0.0/16)
and
(src net 172.16.0.0/20 or src net 10.0.0.0/8 or src net 192.168.0.0/16)
)
)' -w test2.dump
Run Code Online (Sandbox Code Playgroud)
看起来很过分,但它似乎也有效,这个过滤器是否比它需要的时间长得多,并且有更好的方式来表达这个逻辑,或者过滤器有什么问题?
Spi*_*iff 13
我在 Mac OS X v10.6.2 上运行内置的 tcpdump 4.0.0 和 libpcap 1.0.0,似乎我可以摆脱这个:
'not (src net (10 or 172.16/12 or 192.168/16) and dst net (10 or 172.16/12 or 192.168/16))'
Run Code Online (Sandbox Code Playgroud)
我跑了几个快速测试,似乎做什么你问:那是既要交通和从任何RFC 1918私有地址子网省略,但是包括所有的流量,其中一个或两个端点有一个公共地址。
请注意,您在 172.16 网络的原始过滤器中存在错误。您已将子网掩码 4 位移动到错误的方向。172.16 实际上是 /12,而不是您写的 /20。也就是说,172.16.0.0 - 172.31.255.255 都是 RFC 1918 私有地址,而您的过滤器只捕获 172.16.0.0 - 172.16.15.255。
不是你的第二个街区
(not
(
(dst net 172.16.0.0/20 or dst net 10.0.0.0/8 or dst net 192.168.0.0/16)
and
(src net 172.16.0.0/20 or src net 10.0.0.0/8 or src net 192.168.0.0/16)
)
)
Run Code Online (Sandbox Code Playgroud)
和你的第一个块一样,只是颠倒了?我会说这and是一个对称操作,所以它不会有什么不同?(这意味着您也可以删除第二个块。)
| 归档时间: |
|
| 查看次数: |
32963 次 |
| 最近记录: |