如果我在不同的 VLAN(100 和 200)上有两个接口(eth0
和eth1
),是否可以将它们绑定在一起bond0
,以便可以正确路由每个 VLAN 的流量?
假设子网10.1.1.0/24
在 VLAN 100 上,子网10.1.2.0/24
在 VLAN 200 上,网关分别是10.1.1.1
和10.1.2.1,
。
- 服务器 1:具有
eth0
(VLAN100) 和eth1
(VLAN200)。eth0
有 IP10.1.1.2
,并且eth1
有 IP 10.1.2.2。 - 服务器 2:具有
eth0
(VLAN100) 和eth1
(VLAN200)。eth0
有 IP10.1.1.3
和eth1
没有 IP。
是否可以将服务器 1 上的eth0
和eth1
绑定到bond0
,以便10.1.1.0/24
子网的流量将流过eth0
,并且10.1.2.0/24
将流过eth1
?
是否可以将服务器 2 中的eth0
和eth1
绑定到bond0
这样它就可以到达子网中的 IP 10.1.2.0/24
,即使它在该子网/VLAN 中没有 IP?
不,绑定的全部意义在于使两个端口充当单个统一连接(通常是为了增加可用带宽)。如果您的接口必须保留在不同的 VLAN 和不同的 IP 子网上,那么绑定是完全错误的工具。
要使接口保持分离,您只需将它们保持分离即可,仅此而已。
正如上面已经提到的,这不是“绑定”的作用。
服务器可以配置为到达 10.1.2.0/24 子网,但如果它没有直接连接到该子网,则它使用路由器来实现。您所要求的只是网络之间的常规 IP 路由。
如果两个子网共享同一个网关,则所有必要的路由都应该已经存在。只需确保路由器的防火墙未配置为阻止此类连接。
如果每个子网使用不同的设备作为其网关,则在每个网关上添加指向对面子网的静态路由。
最后,没有 IP 地址的 VLAN 成员资格是没有用的。(与物理网络相同。)如果您希望一台服务器直接连接到多个网络,那么每个接口都需要一个 IP 地址。如果您希望服务器只有一个 IP 地址,则根本不要创建额外的 VLAN 接口。