二层交换机可以处理不同的分段IP吗

网络工程 转变
2021-08-03 00:04:23

我对以下问题感到困惑,我们假设:在我的实验室中,我有 10 个 linux 服务器和一个第 2 层交换机,我试图将它们分成 5 组:

Group one:   10.1.1.0/24  include server1(10.1.1.2), server2(10.1.1.3)
Group two:   10.1.2.0/24  include server3(10.1.2.2), server4(10.1.2.3)
Group three: 10.2.0.0/16  include server5(10.2.2.2), server6(10.2.2.3)
Group four:  10.3.0.0/16  include server7(10.3.2.2), server8(10.3.2.3)
Group five:  10.0.0.0/8   include server7(10.5.2.2), server8(10.5.2.3)

那么,在每个组中,两台服务器应该能够很好地通信吗?而且,所有 10 个服务器都可以很好地相互通信,对吗?

2个回答

那么,在每个组中,两台服务器应该能够通信吗?

是的。

而且,所有 10 个服务器都可以相互通信,对吗?

不可以。因为您的组位于不同的子网中,所以它们将无法通信。为了从一个子网到另一个子网进行通信,您需要一个路由器。

问题与交换机的关系不大,而与您的寻址计划有关。

二层交换机可以处理不同的分段IP吗

您的问题根本与第 2 层交换机无关:

二层交换机只关心以太网帧的目的 MAC 地址;对于第 2 层交换机,IP 数据包的(目标)IP 地址只不过是正在发送的数据的一些字节。

Group one:   10.1.1.0/24  include server1(10.1.1.2) ...
...
Group five:  10.0.0.0/8   include server7(10.5.2.2) ...

...而且,所有 10 个服务器都可以很好地相互通信,对吗?

服务器 7 很有可能向服务器 1 发送数据包,但服务器 1 将无法向服务器 7 发送数据包:

如果服务器 7 将向服务器 1 发送一些 IP 数据包,它将检查服务器 1 的地址是否在其自己的“组”的地址范围内。10.1.1.2 位于地址范围 10.0.0.0/8 中,因此服务器 7 将假定服务器 1 是“组五”的成员。

因此,服务器 7 将向以太网中的所有计算机广播 ARP 数据包。这个包中包含了10.5.2.2想要知道10.1.1.0的MAC地址的“ARP​​请求”。服务器 1 将使用包含自己的 MAC 地址的 ARP 数据包进行应答。(我不是 100% 确定服务器 1 是否会检查服务器 7 是否是“第一组”的一部分。我假设服务器 1 不会检查这个。)

现在服务器 7 知道服务器 1 的 MAC 地址,它可以向该服务器发送 IP 数据包。

但是,如果服务器 1 想要向服务器 7 发送 IP 数据包,它会发现 10.5.2.2 不在 10.1.1.0/24 范围内,因此服务器 7 不是“第一组”的成员。

因此,服务器 1 将假定服务器 7 不能通过以太网“直接”到达,而只能使用其间的某个路由器才能到达。

如果服务器 1 的路由配置中没有包含地址在 10.1.1.0/24 范围内并且能够将数据包转发到服务器 7 的路由器的信息,则服务器 1 的操作系统将拒绝向其发送任何 IP 数据包。服务器 7.