假设我是基于集线器的本地网络10.0.0.0/24
提供访问互联网的路由器。pcap过滤器选择数据包严格传入和传出网络
+------+
| pc A +-----+
+------+ |
+--+--+ +-------------+
| hub +---+ router (me) +---- internet
+--+--+ +-------------+
+------+ |
| pc B +-----+
+------+
我实现使用libpcap的了解用户的PPS该网络从/互联网进去一小包计数器。例如,我想收集分组:
-
从A
- (或任何内部,如B)到stackoverflow.com(或任何外部)
- 从stackoverflow.com到A(即答复)
但我想滤波器分组:
-
从A到B
- (这是一个集线器基于网络,所以我看到他们)
- 从A(或内部)给我或我可以做其他的方式
最好的过滤器是net 10.0.0.0/24 and \(not src net 10.0.0.0/24 or not dst net 10.0.0.0/24 \)
但是是不是有更好的语法?
对不起,例子不清楚。实际上,我想要将来自网络中* any *主机的数据包捕获到外部主机或其他方式。例如,在这里我想捕获A和B.我将编辑这个问题,目前尚不清楚。 – FunkySayu
但是你的答案给了我一个主意。像'host \(ether $ ROUTER_MAC而不是ip $ ROUTER_IP \)'。我不确定这种语法是否允许,并且'ether host $ ROUTER_MAC而不是主机ip $ ROUTER_IP'不是同一个请求。 – FunkySayu