为什么在 tcpdump 的输出中看不到其他计算机的流量?

为什么在 tcpdump 的输出中看不到其他计算机的流量?

在局域网上,当我tcpdump在我的eth0接口上使用来监控数据包时,虽然其他计算机正在使用互联网,但什么也没有发生。

只有当我开始使用互联网并访问某个网站时,才会出现输出。为什么会这样?

答案1

路由器和/或交换机只会向您发送广播或发往您自己网卡 (NIC) 的数据包。如果您使用集线器,情况就不一样了,集线器会盲目地将收到的所有内容转发给所有人。使用交换机(或合适的路由器)可确保您能够使用两个 NIC 之间的整个带宽,而不会被其他 NIC 的数据包所淹没。

想象计算机1以 100Mb/s 的速度下载计算机2计算机3然后尝试以 100Mb/s 的速度从计算机4。如果每个人的包裹都发给每个人,计算机1/2无法使用全部带宽,只能使用一半,同样的事情计算机3/4

答案2

您的问题已在 tcpdump-faq 中回答,请参阅http://www.tcpdump.org/faq.html问题Why don't I see all the traffic I expect?,也许还有以下段落。

相关内容