据我了解:
- 如果 ping 请求通过集线器传递到另一台计算机,则网络上的所有 5 台计算机都可以看到该 ping 请求
- 如果 ping 请求传递到同一网络上的另一台计算机(pc1 和 pc2、pc3、pc4 和 pc5),则只有发送该请求的计算机和接收该请求的计算机才能看到该 ping 请求
- 如果 ping 请求通过交换机传递到另一台计算机,则只有发送该请求的计算机和接收该请求的计算机才能看到该 ping 请求
因此:
- PC1 ping PC2 将在两台计算机上显示 ping 请求
- PC1 ping PC5 将显示所有计算机上的 PIN 请求(因为它们必须通过集线器)
- PC4 ping PC1 将在所有计算机上显示 ping 请求(因为它们必须通过集线器)
我理解的对吗?还是说如果 ping 请求必须通过集线器,那么由于 ARP 请求,并非所有计算机都能看到它?
答案1
这个问题有两个不同的部分 -
Ping 发送一个数据包并得到一个响应(或偶尔得到多个响应 - 通常这很糟糕)。与所有其他流量一样,此请求会被它经过的所有设备看到(但通常它们不会响应)。如果您执行跟踪路由,则会显示路径中的所有路由器,这是看到数据包的系统的一个合理(但不完整)的近似值。
集线器是一种旧技术,它通过局域网将数据发送到通过它连接的所有系统。因此,如果您执行 ping 并且您正在使用集线器,则局域网上的所有计算机都会看到它 - 但不会响应。如果您使用的是交换机 - 这是集线器的非旧版本,并且更为常见,则只有交换机和路由器才会看到请求。
(我确实注意到一些交换机有镜像端口,这些镜像端口也可以看到数据包)