linux – 使用VLAN将Android置于以太网网络上

在我们的实验室中,我们为所有内容分配了静态IP.我们在ESXi上的设备少于20台,一些是物理设备,一些是虚拟设备,从服务器到安卓平板电脑.一切都是有线以太网.交换机上有3个VLAN.我们的虚拟linux机器工作正常,因为vSwitch似乎应用了标签,但我们的物理Linux机器需要将其ifcfg-eth0接口更改为ifcfg-eth0.20才能参与网络.我们带有以太网加密狗的Android平板电脑无法为vlan标记linux的方式创建这个新的以太网配置,因为它没有扎根,据我所知,没有用于有线vlan设置的工具. (这是Android 4.0.)

交换机不应该根据计算机的子网和插入的端口来标记网络流量吗?为什么物理Window的机器似乎在没有额外设置的情况下处理VLAN,但是Linux物理机需要新的接口配置来查看流量?物理交换机不应该像vSwitch为我们的虚拟机那样执行此操作吗?

我只是希望Android设备使用来自VM和Windows机器的服务,但我甚至无法ping它们或网关,因为无法在设备上手动设置VLAN.

最佳答案

Shouldn’t the switch be responsible for tagging the network traffic based on a machine’s subnet and the ports it is plugged into?

VLAN是第2层构造,IP地址是第3层构造. VLAN和IP地址之间没有直接关系.

对我来说,就像你将交换机端口配置为VLAN的标记端口一样,你可能不应该将它们配置为这样.当交换机端口被标记时,交换机在帧中插入VLAN标记,并且连接到该交换机端口的端点负责处理该VLAN
标签.通常,除交换机上的中继端口外,您不需要或不需要VLAN标记.大多数VLAN流量都会使交换机无标记.交换机知道流量属于哪个VLAN,并根据VLAN适当地在交换机端口之间移动它. Trunk端口通常在交换机之间承载多个VLAN的流量,因此需要对这些帧进行标记,以便接收交换机知道流量属于哪个VLAN.

听起来您在ESXi vSwitch上使用VST(虚拟交换机标记),这可以解释您的虚拟机工作原因. vSwitch正在处理VLAN标记.

我怀疑Windows机器连接到原始/默认VLAN,这是未标记的,这解释了它们工作的原因.

总结一下我的假设:

您的物理Windows计算机正在运行,因为它们已连接到本机/默认VLAN中的交换机端口(未标记),并且它们的NIC配置中不需要VLAN标记.

您的虚拟机正常工作,因为ESXi vSwitch正在管理VLAN标记.

您的其他设备无法正常工作,因为它们不在本机/默认VLAN中,并且您已将VLAN端口配置为已标记,并且这些计算机的NIC配置未配置相应的VLAN ID,因此无法处理VLAN标记的流量.

转载注明原文:linux – 使用VLAN将Android置于以太网网络上 - 代码日志