网络交换机是否支持 IP?

The*_*can 14 networking ip switch mac-address

我有一些关于网络的非常微不足道的基本问题,但我发现了不同的信息,所以我只想解决这个问题。

据我所知,网络交换机以“智能”方式处理流量,它只将数据包传播到它知道接收器所在的端口(与集线器相反,集线器将所有数据暴力发送到所有端口)。

  • 正确的?

所以交换机需要记住所有连接到它的主机的地址。如果找不到主机,则将数据包发送到默认路由(通常是 Up 链接到更广泛的网络)

  • 正确的?

现在我的主要问题是:

  • 交换机是否记住 IP 地址或 MAC 地址来计算其决策?

wol*_*gsz 22

嗯,这取决于您使用的开关类型。

非常基本的类型在链路层运行并且不知道 IP 地址。他们使用 MAC 地址进行操作。这些交换机通常不受管理。

但是,还有更多智能交换机,它们在 IP 层提供功能,例如访问控制列表,并且这些交换机知道 IP 地址。通常,这些交换机是受管理的,即它们具有 Web 界面或控制台界面(或两者)以允许用户配置各种选项。但是,附加功能是在基本开关功能之上运行的。

交换机通过侦听流量“学习”连接到其端口的设备的 MAC 地址,并使用它们来决定将传入数据报发送到何处。交换机一般不执行路由。这通常由路由器完成,路由器发送的数据报使用链路层地址(以太网网络中的 MAC 地址)将数据包发送到下一跳。

  • VLAN _not_ IP 层;它们在第 2 层运行。但是,对于大多数 2+3 层交换机,您可以为 VLAN 接口分配 IP 地址。也许这就是你的意思。 (6认同)

小智 9

只是对@wolfgangsz 和@sleske 的答案稍加补充,应该强调的是,标准交换机,如前所述,纯粹是第 2 层设备,因此它只能理解 MAC 地址。

尽管“数据包”通常用作通用术语,但第 2 层的协议数据单元 (PDU) 是“帧”,第 3 层的 PDU 是数据包。

可以将“多层交换机”视为包含路由器的交换机,与传统路由器不同,该路由器将数据包从 VLAN 路由到 VLAN,而不是从一个物理接口路由到另一个物理接口。

如果交换机支持 VLAN(这不一定使它成为多层交换机),那么具有未知目标 MAC 地址的帧将从与数据包属于同一 VLAN的所有端口(称为泛洪)发送出去因为 VLAN 是一个广播域并且帧不会超出广播域的边界,所以被接收。

编辑:为了完整起见,我还应该提到支持 VLAN 的交换机也将支持中继端口,这些端口使用扩展帧,允许来自多个 VLAN 的流量在单个物理链路上传输。


sle*_*ske 8

据我所知,网络交换机以“智能”方式处理流量,它只将数据包传播到它知道接收器所在的端口(与集线器相反,集线器将所有数据暴力发送到所有端口)。

对,那是正确的。

所以交换机需要记住所有连接到它的主机的地址。如果找不到主机,则将数据包发送到默认路由(通常是 Up 链接到更广泛的网络)

嗯,不完全是。交换机确实会记住哪些主机连接到哪个端口(通常通过观察到达端口的数据包的 MAC 地址)。然而,交换机通常不知道“默认路由”,因为这是来自更高网络层的概念。交换机在 OSI 模型的第 2 层(数据链路层)上工作。“默认路由”是用于路由的概念,它发生在第 3 层(网络层)。

因此,交换机没有“默认路由”。如果它不知道目标 MAC 地址,它只会将数据包发送到所有端口(至少在开始时,它只能这样做——这被称为“泛洪”)。无论如何,在以太网中,每个数据包都必须寻址到本地 MAC 地址,否则它将永远不会到达。发送到“互联网”的数据包仍然获得本地 MAC 地址目的地,即网络默认网关的地址。交换机只是将此数据包传递到默认网关,网关(在第 3 层运行)然后从数据包中嵌入的 IP 地址读取“真实”目的地,并在途中发送。

交换机是否记住 IP 地址或 MAC 地址来计算其决策?

如上所述,交换机与 IP 无关,因为它在较低的抽象级别上工作。因此,只有 MAC 地址。

一种并发症:如wolfgangsz的回答解释的,存在开关,其还对层3操作(所谓的多层交换机)。这些有点复杂,它们可以处理 IP 地址等等。