我刚刚阅读了关于可以打开互联网接口的混杂模式?于是做了一个小测试环境,在digitalocean上开了3个droplet server,私网开启。所以我最终在10.130.x.x
本地网络中有 3 台服务器。
服务器1:10.130.247.92
服务器2:10.130.237.218
服务器3:10.130.237.219
在 server1 中,我使用 tshark 通过以下方式从 eth1(私有网络接口)捕获数据包
tshark -i eth1
在 server2 中,我不断 ping server1
ping 10.130.247.92
现在 server1 捕获了 server2 的所有 ICMP 数据包,同时我在 server3 中打开了 eth1 的混杂模式
ifconfig eth1 promisc
并开始捕获 eth1,但我无法捕获到 server1 的 ICMP 数据包。
这是为什么?我猜网络是基于交换机的,而不是基于集线器的,所以server3无法捕获从server2到sever1的数据包,即使它们都在同一个本地网络中并且混杂模式处于打开状态