WillemYiex Asked: 2023-10-10 16:30:41 +0800 CST2023-10-10 16:30:41 +0800 CST 2023-10-10 16:30:41 +0800 CST VMWare ESXi 虚拟机的 ping 772 我的 VMWare ESXi 8.0 的 VLAN18 中有 2 个虚拟机 我想 ping 另一台,但没有找到。现在我关闭了防火墙,如果它们位于同一 VLAN 中,它就可以工作,现在我希望我的 1 个虚拟机位于 VLAN17 中,另一个虚拟机位于 VLAN18 中,并互相 ping 通,但我收到消息“目标主机无法访问”。两个 VLAN 位于同一 vSwitch 中。(有时也说超时)。 virtual-machine 1 个回答 Voted Best Answer u1686_grawity 2023-10-10T18:03:22+08:002023-10-10T18:03:22+08:00 这是完全正常的——这就是 VLAN 的全部目的;它们的存在是为了将端口彼此隔离。仅可在同一 VLAN 中的端口 (VM) 之间进行直接“同一子网”访问。 要在 VLAN 之间转发(即路由)数据包,您需要路由器。这可以是支持 802.1Q VLAN 的物理路由器,也可以是“L3 交换机”或“L2+ 交换机”(可以路由 IP 以及交换以太网),也可以是设置为充当路由器的虚拟机(同样,运行支持 802.1Q VLAN 的操作系统)。 根据其文档,您的 Draytek VigorSwitch G2500 只是一个普通的以太网 L2 交换机。尽管它具有 VLAN 和 IP 路由配置,但这似乎纯粹是为了对交换机本身进行管理访问(显然还有其 ONVIF 支持)——它很可能不会在VLAN 之间转发数据包。 您的 Draytek Vigor 3910 是一个 IP 路由器,支持 802.1Q VLAN(根据其文档最多支持 100 个)。 无论哪种情况,路由器都需要有 VLAN“中继”连接(就像 ESXi 本身一样)。如果它们通过交换机连接,则交换机上的两个端口(路由器和 ESXi)都需要对所有 VLAN 进行“标记”。每个“标记”VLAN 对应于路由器本身上的一个虚拟 VLAN 接口(您必须一一创建),而单个“未标记”VLAN 对应于路由器上的物理以太网接口。 (如果您决定使用 ESXi 上的虚拟机作为路由器,请将其放入具有特殊 VLAN ID 4095 的端口组中;这样它将获得带有“标记”的所有 VLAN 的完整“干线”连接。) 最重要的是,每个 VLAN 需要有一个不同的 IP 网络(地址范围)。在路由器上配置 VLAN 接口时,请确保选择不重叠的 IP 网络 - 将它们视为完全独立的 LAN。 (如果它们重叠,主机将无法知道目的地位于不同的网络中 - 就像在您自己的示例中一样,您尝试 ping 位于不同 VLAN 中的主机,但源主机认为目的地是本地。)
这是完全正常的——这就是 VLAN 的全部目的;它们的存在是为了将端口彼此隔离。仅可在同一 VLAN 中的端口 (VM) 之间进行直接“同一子网”访问。
要在 VLAN 之间转发(即路由)数据包,您需要路由器。这可以是支持 802.1Q VLAN 的物理路由器,也可以是“L3 交换机”或“L2+ 交换机”(可以路由 IP 以及交换以太网),也可以是设置为充当路由器的虚拟机(同样,运行支持 802.1Q VLAN 的操作系统)。
根据其文档,您的 Draytek VigorSwitch G2500 只是一个普通的以太网 L2 交换机。尽管它具有 VLAN 和 IP 路由配置,但这似乎纯粹是为了对交换机本身进行管理访问(显然还有其 ONVIF 支持)——它很可能不会在VLAN 之间转发数据包。
您的 Draytek Vigor 3910 是一个 IP 路由器,支持 802.1Q VLAN(根据其文档最多支持 100 个)。
无论哪种情况,路由器都需要有 VLAN“中继”连接(就像 ESXi 本身一样)。如果它们通过交换机连接,则交换机上的两个端口(路由器和 ESXi)都需要对所有 VLAN 进行“标记”。每个“标记”VLAN 对应于路由器本身上的一个虚拟 VLAN 接口(您必须一一创建),而单个“未标记”VLAN 对应于路由器上的物理以太网接口。
(如果您决定使用 ESXi 上的虚拟机作为路由器,请将其放入具有特殊 VLAN ID 4095 的端口组中;这样它将获得带有“标记”的所有 VLAN 的完整“干线”连接。)
最重要的是,每个 VLAN 需要有一个不同的 IP 网络(地址范围)。在路由器上配置 VLAN 接口时,请确保选择不重叠的 IP 网络 - 将它们视为完全独立的 LAN。
(如果它们重叠,主机将无法知道目的地位于不同的网络中 - 就像在您自己的示例中一样,您尝试 ping 位于不同 VLAN 中的主机,但源主机认为目的地是本地。)