首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Wireshark过滤-试图过滤掉我自己的本地ip

Wireshark过滤-试图过滤掉我自己的本地ip
EN

Server Fault用户
提问于 2013-09-23 18:33:40
回答 3查看 29.9K关注 0票数 8

我试图过滤掉本地机器的IP地址192.168.5.22

我使用ip.src != 192.168.5.22|| ip.dst !=192.168.5.22,我不断看到我的地址弹出。

EN

回答 3

Server Fault用户

发布于 2013-09-23 20:00:22

米奇是对的。与您所拥有的负面匹配,您需要这两个条件是真实的过滤您的IP,因此,而不是或。你也可以这样写:

代码语言:javascript
复制
not (ip.addr == 192.168.5.22)

把它写成ip.addr != 192.168.5.22似乎更符合逻辑,但是虽然这是一个有效的表达式,但它将匹配连接的另一端,因为它不是特定的ip,而且仍然是真的。例如,当从192.168.5.22连接到192.168.5.254时,ip.addr != 192.168.5.22不匹配*.22 IP,它匹配*.254,因此数据包匹配筛选表达式。下面是一个过滤http的完整示例:

代码语言:javascript
复制
not ip.addr == 192.168.5.22 and not tcp.dstport == 80

tcp.dstport != 80有类似的问题;tcp.dstport != 80的意思是“只匹配tcp流量,但只有tcp不是dstport == 80”。

虽然不是严格来说您的问题,但我更喜欢在捕获过滤器中进行过滤(双击capture-options对话框中的接口名称),它的语法与tcpdump完全一样。它避免捕获要忽略的数据包,从而使捕获占用的内存和磁盘更少。缺点是,如果以后要检查数据包,并且不能在捕获会话期间以这种方式更改筛选器,则不会捕获这些数据包。例如,为了防止捕获到任何主机的http和ssh通信量,以及从192.168.5.22到192.168.5.22的任何数据包,

代码语言:javascript
复制
not host 192.168.5.22 and not port 80 and not port 22

如果只希望筛选进出该主机的http通信量,则可以这样做:

代码语言:javascript
复制
not (host 192.168.5.22 and port 80)
票数 10
EN

Server Fault用户

发布于 2013-09-23 18:49:15

你的or应该是and

代码语言:javascript
复制
ip.src != 1.2.3.4 && ip.dst != 1.2.3.4
票数 3
EN

Server Fault用户

发布于 2022-11-22 22:59:24

现在是2022年,IPv6已经成为一件事了!IPv6使这个问题变得更加棘手,因为您通常会有多个v6地址,并且它们经常会更改。列举每一个都是痛苦的。相反,我们知道链接本地IPv6前缀是FE80::/10,因此,为了排除来自这个范围的通信量,并且它的目的地是这个范围,我们使用这个筛选器:

not (ipv6.dst == fe80::/10 and ipv6.src == fe80::/10))

综合起来,此筛选器将排除本地IP、IPv6和广播/多播数据包:

代码语言:javascript
复制
not (ipv6.dst == fe80::/10 and ipv6.src == fe80::/10) and 
not (ip.dst == 192.168.0.0/16 and ip.src == 192.168.0.0/16) and 
not (ip.dst == 10.0.0.0/8 and ip.src==10.0.0.0/8) and 
not (eth.dst[0] & 1)

请注意,上述仅在192.168.*和10.* IP范围内排除本地IP通信量。您可能正在使用其他本地范围。and not (eth.dst[0] & 1)排除任何将以太网多播比特设置为true的数据包。如果您希望看到多播通信量,只需排除它。(最好只是排除多播协议,比如使用not mdns)

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/541075

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档