无法从 CentOS 中的 VLAN 接口访问 VLAN 主机

无法从 CentOS 中的 VLAN 接口访问 VLAN 主机

我正在 CentOS 6.4 上进行 VLAN (虚拟 LAN) 配置。我有 2 个接口,eth0 和 eth1。

我已经配置了 2 个 VLAN 接口 eth0.20 和 eth0.30 作为

#file: ifcfg-eth0.20
#-------------

VLAN=yes
DEVICE=eth0.20
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.20.1
GATEWAY=192.168.20.1
NETMASK=255.255.255.0
USERCTL=no


#file: ifcfg-eth0.30
#-------------
VLAN=yes
DEVICE=eth0.30
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.30.1
GATEWAY=192.168.30.1
NETMASK=255.255.255.0
USERCTL=no

然后使用 LAN 电缆将桌面连接到接口 eth0 端口并分配 192.168.30.2/24 IP。

当我尝试从 192.168.30.2 机器 ping 192.168.30.1 时,它显示目标主机不可访问。我也无法从 192.168.30.1 ping 192.168.130.2。

但是ping -I eth0 192.168.30.2效果很好。有什么建议吗?

答案1

看起来你的设计是错误的。

在 VLAN 中,您基本上有两种类型的端口:TRUNK PORTS(或带标签的端口)和 ACCESS PORTS(或不带标签的端口)。TRUNK PORTS 应连接到 TRUNK PORTS,ACCESS PORTS 应连接到 ACCESS PORTS。

现在,在您的配置中,您有一个 TRUNK 端口 eth0,其中有两个 TAGGED VLAN - eth0.20 和 eth0.30,以及桌面端的 ACCESS 端口(默认)。您需要在电缆的另一端(桌面)进行相同的配置才能实现连接。在桌面上,配置一个 TRUNK 端口,其中有两个 TAGGED VLAN,并为 vlan20(Linux 中的 eth0.20)和 vlan30(eth0.30)设置子接口。然后在 vlan30 子接口上配置 192.168.30.2/24 IP。现在您将能够 ping 192.168.30.1。

另一个选择是使用支持 VLAN 的硬件交换机。然后在交换机上,您可以配置一个带有两个 TAGGED VLAN 的 TRUNK 端口并将其连接到 Centos 端。再次在交换机上将 ACCESS 端口配置为 vlan30 并将其连接到桌面。将桌面上的当前配置保留为 192.168.30.2/24 IP 直接放在接口上。您将获得连接。

相关内容