vmware虚拟交换机二层详解

一、布景介绍

实验室进了一批新设备,方案用vmware建立集群,运用华为S5700三层交流机将办理与事务网别离,架构拓扑如下:
vmware虚拟交换机二层详解
物理交流机的1--12口为办理口,端口类型为access,pvid为10物理交流机13--20口为事务口,端口类型为trunk,pvid为20;21--24口为物理交流机上联接口,网关坐落三层交流机的vlanif接口上

二、问题描绘

装备完成后,办理网络通讯正常,但此刻发现事务网络通讯反常,问题如下:
规划事务口走vlan20,所以,在事务的虚拟交流机端口组上给的VID是20
vmware虚拟交换机二层详解
事务口上联至物理交流机的13口,链路状况是TRUNK,物理接口装备如下:
vmware虚拟交换机二层详解
事务网络的网关在物理交流机的vlanif20口上
vmware虚拟交换机二层详解
此刻发现,这么装备后VM无法ping通网关,如果把虚拟交流机端口组的VID改成0或许4095,VM都能够ping通网关

三、问题定位

仔细观察虚拟交流机,发现数据包从vm出来后2次经过了虚拟交流机,并不是之前认为的1次,符号1处的vid能够在端口组上设置,符号2处的端口类型与pvid在vmware产品中有默认设置,不答应用户修正

经过实践得出定论,符号处2的端口类型为trunk,且trunk pvid为1,此刻的数据报文传输如下图所示
vmware虚拟交换机二层详解
此刻入方向的二层传输途径为:

  1. vm宣布纯以太网帧
  2. 进入虚拟交流机时,打上tag20
  3. 脱离虚拟交流机时,trunk答应报文带tag20经过
  4. 进入物理交流机时,trunk答应报文带tag20进入交流模块

此刻报文现已进入物理交流机的内部,数据在回来时二层传输途径为:

  1. 此刻报文在物理交流机内部tag为20,且物理交流机trunk口的pvid也为20,所以报文在脱离物理交流机端口时剥离tag,以纯以太网帧脱离物理交流机
  2. 进入虚拟交流机时,打上trunk口的pvid,此刻tag为1
  3. 但vm衔接虚拟交流机的端口组tag为20,所以不通

四、解决方法

在理解了问题点后,依照上面数据报文的流经进程,就能解释出为什么将虚拟交流机端口组(标签1)处的vid设置为0或许4095能够正常通讯,而依据规划,事务网络的vid为20,此刻只需要将物理交流机trunk口的pvid改为1,就能够正常通讯,详细的通讯进程为:
vmware虚拟交换机二层详解

  1. vm宣布纯以太网帧
  2. 经过虚拟交流机端口组时,打上tag20
  3. 带着tag20脱离虚拟交流机trunk端口
  4. 带着tag20进入物理交流机内部
  5. 带着tag20脱离物理交流机trunk端口
  6. 带着tag20经过虚拟交流机trunk端口,进入交流模块
  7. 脱离虚拟交流机access端口时,剥离tag20,以纯以太网帧送往vm

五、总结

经过上述特征,能够得出以下几个定论:

  1. 一切进入交流机内部的报文都是带着tag的
  2. vmware虚拟交流机的上行口虽然不能装备,端口类型为trunk,且pvid为1,答应一切vlan经过
  3. 虚拟交流机的端口组vid为0时,端口类型为access,pvid为1;vid为4095时,端口类型为trunk,pvid为1,且答应一切vlan经过(vid4095之前有文章介绍,此处不再赘述)

vmware虚拟交换机二层详解