networking嗅探软件如何在交换机上工作?

我们在networking中有几个标准的不可pipe理的3com交换机。 我认为交换机应该只在连接的对等方之间发送软件包。

然而,在任何一台交换机上连接的计算机上运行的networking嗅探软件似乎能够检测连接到networking上的其他交换机的其他主机的stream量(即,YouTubevideostream,网页)。

这是甚至可能或者是networking彻底破碎?

为了完成David的回答,交换机通过查看端口上接收到的数据包的MAC地址来了解端口后面的人员。 当开关打开时,它什么都不知道。 一旦设备A从端口1发送数据包到设备B,交换机就会知道设备A在端口1后面,并将数据包发送到所有端口。 一旦设备B从端口2答复A,交换机只在端口1上发送数据包。

这个MAC到端口的关系存储在交换机的一个表中。 当然,许多设备可能位于一个端口之后(例如,如果一个交换机插入端口),所以可能有许多与一个端口相关联的MAC地址。

这个algorithm在表不够大时不能存储所有关系(交换机中没有足够的内存)。 在这种情况下,交换机丢失信息并开始向所有端口发送数据包。 这可以很容易地完成(现在你知道如何破解你的networking),通过从一个端口伪造大量不同MAC的数据包。 它也可以通过伪造你想要窥探的设备的MAC包来完成,交换机将开始向你发送该设备的stream量。

pipe理型交换机可以configuration为接受来自端口(或固定号码)的单个MAC。 如果在该端口上find更多的MAC,则交换机可以closures该端口以保护networking,或向pipe理员发送日志消息。

编辑:

关于YouTubestream量,上述algorithm仅适用于单播stream量。 以太网广播(ARP为例)和IP多播(有时用于stream传输)的处理方式不同。 我不知道youtube是否使用多播,但可能是您可以嗅探不属于您的stream量的情况。

关于网页stream量,这很奇怪,因为TCP握手应该已经正确设置了MAC到端口表。 无论是networking拓扑结构级联了许多非常便宜的交换机,而且小桌子总是满的,或者有人在搞networking。

这是一个常见的误解。 除非静态configuration,否则交换机必须通过每个端口发送每个数据包,而不能certificate它不需要发送该数据包。

这可能意味着数据包仅被发送到包含目标设备的端口。 但是情况并非总是如此。 例如,考虑交换机收到的第一个数据包。 它怎么知道哪个端口发送出去?

抑制在“错误”端口上发送的数据包是交换机可以使用时的优化。 这不是一个安全function。 pipe理型交换机通常提供实际的端口安全性。

ARPcaching中毒可能是有效的。 这是一种常常恶意地用来嗅探交换networking的技术。 这是通过说服networking上的每一台机器,每一台机器都有你的MAC地址(使用ARP协议)来完成的。 这将导致交换机将所有数据包转发到您的计算机 – 您将要分析后转发它们。 这通常用于中间人攻击,并且可以使用各种嗅探工具,如Cain&Abel或ettercap。