VLAN 广播可以工作,但 ping 不可以

VLAN 广播可以工作,但 ping 不可以

我有一台服务器ESX5Standar Switch其中有一个 (vswitch1),上面连接了一个物理网卡,vswitch1 VLAN ID 设置为,All(4095)因此它可以看到任何 VLAN 上的流量,连接到 vswitch1 的我有 2 个 VM,分别是 Debian 6 和 XP SP2。到目前为止一切正常,现在,debian 的界面配置如下所示:

auto eth0
iface eth0 inet static
    address 192.168.106.250
    netmask 255.255.255.0

auto vlan52
iface vlan52 inet static
    address 11.10.1.65
    netmask 255.255.255.248
    vlan_raw_device eth0

我也激活了modprobe 8021q,但没有 iptables 规则,因此,我没有丢包
现在,在 XP VM 中,有以下网络配置:

IP Address: 11.10.1.66
Subnet Mask: 255.255.255.248

IP Address: 192.168.106.251
Subnet Mask: 255.255.255.0

如你所见,XP VM 有 2 个 IP 地址,因此,从 XP ping 到192.168.106.250是可以的,但是,从 XP ping 到 11.10.1.65 会失败,然后在 XP VM 中使用Wireshark,你会看到类似这样的信息

Source                Destination           Protocol Length Info
11.10.1.66            11.10.1.65            ICMP     74     Echo (ping) request  id=0x0200, seq=2816/11, ttl=128
Vmware_aa:3d:e6       Broadcast             ARP      42     Who has 11.10.1.65?  Tell 11.10.1.66
Vmware_aa:3d:e1       Vmware_aa:3d:e6       ARP      60     11.10.1.65 is at 00:50:56:aa:3d:e1
11.10.1.66            11.10.1.65            ICMP     74     Echo (ping) request  id=0x0200, seq=1280/5, ttl=128
Vmware_aa:3d:e1       Broadcast             ARP      64     Who has 11.10.1.66?  Tell 11.10.1.65
Vmware_aa:3d:e1       Broadcast             ARP      64     Who has 11.10.1.66?  Tell 11.10.1.65
11.10.1.66            11.10.1.65            ICMP     74     Echo (ping) request  id=0x0200, seq=1536/6, ttl=128

等等,但是 ping 不通,我也尝试用 putty 通过 ssh 连接到 11.10.1.65,但也失败了。

然后我决定用工作中的物理网络进行测试,其中我有 2 个共享 vlan ID 的物理交换机(其他人配置了交换机,但我有访问配置的权限),交换机上存在 vlan 52,debian 上vlan52也有一个,以下是交换机配置的部分内容

#SWITCH 1
vlan 51
  description DPC
vlan 52
  description OBEM
#
interface GigabitEthernet0/0/22
 description LAN_DPC
 port hybrid pvid vlan 51
 port hybrid untagged vlan 3 51 to 63
 ip-subnet-vlan enable


#SWITCH 2
vlan 51
  description DPC
vlan 52
  description OBEM
#
interface Ethernet0/0/1
 port hybrid pvid vlan 52
 port hybrid untagged vlan 51 to 52
#
interface GigabitEthernet0/0/1
 port link-type trunk
 undo port trunk allow-pass vlan 1
 port trunk allow-pass vlan 50 to 52
 stp disable

开关Huawei Quidway S3300 Series

因此,我将笔记本电脑连接到Ethernet0/0/1SWITCH 2,从我的笔记本电脑(IP 为 11.10.1.67)ping 11.10.1.65,结果相同,甚至在Wireshark捕获中也是如此。

我不是交换机配置方面的专家,我甚至不完全了解配置中某些部分的含义,例如端口中继允许通过 VLAN 50 至 52端口混合未标记 VLAN 51 至 52也许您可以推荐一篇关于此的好文档。

但是现在,我真正头疼的是,如何让它工作,因为我真的需要它,我需要所有这些 VLAN 都通过防火墙的单个 NIC,而现在我真的被卡住了,如果你认为我需要在交换机中更改某些东西,我可以做到,正如我所说,我有访问权限,所以,希望你能帮助我

谢谢

答案1

在华为/H3C/HP世界中(它们都或多或少共享相同的软件),如果我们谈论VLAN(802.1Q),则有3种端口:

- 访问端口:您将访问端口分配给一个 VLAN ID,这样交换机内部就知道来自该端口的所有流量都属于该 VLAN。同时会将该 VLAN 内的所有广播流量转发到该端口。您应该将计算机或最终设备连接到此类端口,因为进出设备的流量是无标记的。

interface Ethernet0/0/0
  port link-type access
  port default vlan XXX
#

-Trunk 端口:您可以将一个中继端口分配给多个 VLAN ID。除属于 PVID(端口 VLAN ID)的流量外,从中继端口发出的流量都带有标记。未标记的传入流量将在内部分配给 PVID,任何与允许的 VLAN 不匹配的标记流量都将被丢弃

interface Ethernet0/0/0
  port link-type trunk
  port trunk pvid vlan 100
  port trunk allow-pass vlan 2 3 200
#

-混合端口:这是华为/H3C 发明的新东西。在此模式下,您可以将任何 VLAN 设置为 TAGGED 或 UNTAGGED。从我的角度来看,我发现这种模式毫无用处,因为为多个 VLAN 发送未标记的流量是没有意义的,因为连接的另一端无法知道哪个帧属于哪个 VLAN,不是吗?如果将一组 VLAN ID 配置为 TAGGED,其中一个配置为 UNTAGGED 和 PVID,则结果与配置中继端口相同。我能看到的唯一区别是,混合端口上 TAGGED VLAN 的 ARP 广播被标记,如果配置中继端口,所有 ARP 广播都将变为 UNTAGGED

interface Ethernet0/0/0
  port link-type hybrid
  port hybrid tagged vlan XX XX XX
  port hybrid untagged vlan XX XX XX
  port hybrid pvid vlan XXX
#

现在,我对虚拟机了解不多,但如果你了解这些概念并避免使用混合端口,我想你会自己找到解决方案。只要记住:

同一端口上有多个 VLAN:TRUNK、TAGGED VLAN(如果连接到它的设备支持 VLAN,并且 VMWARE VM 支持)一个端口中只有一个 VLAN:ACCESS、UNTAGGED VLAN。

问候, Yul

相关内容