使用 Procurve 交换机和 RHEL 标记的 VLAN 未按预期工作

使用 Procurve 交换机和 RHEL 标记的 VLAN 未按预期工作

我想在 RHEL6 上配置带标记的 VLAN,其中涉及的以太网交换机是 ProCurve 交换机。现在我所做的是:

  1. 我在 RHEL6 上为 server1 创建了 VLAN 接口 eth0.1001 和 eth0.1002,并在 server2 中的 RHEL6 上创建了 VLAN 接口 eth0.1001:

服务器1:

vconfig add eth0 1001
ifconfig eth0.1001 192.168.199.199 netmask 255.255.0.0 up
vconfig add eth0 1002
ifconfig eth0.1002 192.168.198.198 netmask 255.255.0.0 up

服务器2:

vconfig add eth0 1001
ifconfig eth0.1001 192.168.197.197 netmask 255.255.0.0 up
  1. 在 ProCurve 交换机上创建了标记的 VLAN:

     vlan 100
     tagged 9
     tagged 18
    
  2. 从 server2 运行一些流量到 server1:

     ping 192.168.199.199
    

    成功了

  3. 从 server2 运行一些流量到 server1:

     ping 192.168.198.198
    

    再次成功!!

另一方面,当我检查默认 VLAN(即 1)的端口分配时,它显示端口 9 和 18 均为未标记。如果我从默认 VLAN 中删除 VLAN,则服务器之间不会进行任何流量(即使在相同的 VLAN 接口(即 eth0.1001)之间也是如此)。在这种情况下,将 VLAN 从“标记”更改为“未标记”可再次使流量继续进行。

现在我想知道我在这里做错了什么。据我所知,当在操作系统中创建两个 VLAN,然后将流量从一个主机发送到属于同一 VLAN 的另一个主机时,驱动程序将添加适当的标记,当数据包到达交换机时,它将看到标记并适当地将其移动到正确的端口。网上提供的示例显示了两个服务器之间的配置。我想知道是否也可以使用相同的交换机 VLAN 标记。

答案1

我从您的例子中发现了几个问题。

首先,由于您使用的掩码为255.255.0.0,因此您的所有 IP 地址都在一个第 3 层网络。通常,单个第 3 层网络与单个 VLAN 相关联。您可能正在网络上执行其他操作,因此这是有效的,但不清楚。

其次,RHEL6 服务器上使用的 VLAN 接口的号码需要与交换机上使用的 VLAN 号码相匹配。

假设您在实验室环境中可以进行这些更改,以下配置应该允许 server1 ping server2:

服务器1:vconfig add eth0 1001

ifconfig eth0.1001 192.168.199.199 netmask 255.255.255.0 up
vconfig add eth0 1002
ifconfig eth0.1002 192.168.198.199 netmask 255.255.255.0 up

服务器2:vconfig add eth0 1001

ifconfig eth0.1001 192.168.199.200 netmask 255.255.255.0 up

在 ProCurve 交换机上创建了标记的 VLAN:

vlan 1001 tagged 9,18
vlan 1002 tagged 9,18

以下应该有效:

从 server2 运行一些流量到 server1:ping 192.168.199.199

从服务器1到服务器2运行一些流量:ping 192.168.199.200

除非您在交换机上正确配置了路由,否则以下操作将会失败:

从 server2 运行一些流量到 server1:ping 192.168.198.199

相关内容