如何防止跨子网通信?

网络工程 路由 转变 VLAN
2021-07-14 12:50:31

是什么阻止了不同子网中的两个设备相互通信?

当设备d1在子网S1想跟设备d2子网S2,它会发送一个ARP请求。鉴于d1d2连接到同一交换机,交换机会将广播 ARP 请求泛洪到所有端口。d2可以接收请求并用其发送到d1ARP 请求提供的 MAC 地址的 MAC 地址进行回复没有什么可以阻止设备的进一步通信。

几个问题:

  • 我认为协议是唯一规定使用网关进行跨子网通信的东西?
  • 这是使用 VLAN 来裁剪广播域的原因吗?
  • 如果以前知道 MAC 地址,单独的 VLAN 如何防止d1d2通信?

谢谢!

1个回答

在您的场景中(使用 TCP/IP),如果 d1 想与 d2 通信,它首先确定 d2 不在子网 s1 中。通常,设备会将数据转发到默认网关。如果在您的情况下没有默认网关,则 d1 将不会进行 ARP,而是向应用程序返回“网络无法访问”错误。

回答您的问题:

  1. 是的,它实际上是定义子网的协议,因此需要路由。还有其他协议,例如 Netbios,没有网络的概念,因此是不可路由的。

  2. 使用 VLAN 的原因有很多。大多数情况下,每个子网有一个 VLAN,反之亦然。

  3. 交换机不会将帧从一个 VLAN 转发到另一个 VLAN。所以他们之间没有交通。