在 NSX-V 逻辑交换机的虚拟线路端口组上配置一些额外设置,以启用与 NSX Edge 网桥的连接。
仅在连接到 NSX Edge 网桥的 NSX-V 逻辑交换机的分布式端口组上需要进行此额外配置。如果 NSX-V 传输区域跨多个 vSphere Distributed Switch,则每个逻辑交换机都会为自己创建一个虚拟线路端口组。vSphere Distributed Switch (VDS) 上的其他分布式端口组不需要此配置。
例如,Vwire-1 逻辑交换机的 VDS-1 上的虚拟线路端口组为 vxw-dvs-36-virtualwire-1-sid-10600-Vwire-1。此虚拟线路端口组连接到 Edge 网桥节点 EN1。
有两种方法可启用此连接:
- 方法 1:启用混杂模式和伪信号
- 在连接 NSX Edge 网桥节点的逻辑交换机的分布式端口组上启用这两个配置设置。启用混杂模式的缺点是,逻辑交换机上的所有虚拟机均可访问数据包,即使单个虚拟机接收数据包也是如此。因此,启用混杂模式可能会影响网络性能。
- 方法 2:启用 MAC 学习和伪信号
-
与混杂模式相比,MAC 学习的效率更高。MAC 学习是 vSphere Distributed Switch 的一项本机功能。从
vSphere 6.7 开始提供此功能,在 vSphere Distributed Switch 6.6.0 或更高版本中支持该功能。但是,您只能使用
vSphere API 启用 MAC 学习,并且必须熟悉脚本才能在端口组上启用此功能。
请参见 NSX Tech Zone 文章中的示例 Python 脚本,以在端口组上启用 MAC 学习和伪信号。在启用 MAC 学习后,您可以在 http://{vCenter-IP-Address}/mob 上的 vCenter Managed Object Browser (MOB) 中验证
macLearningPolicy
设置。由于方法 2 需要具备脚本编写技术知识,因此,您可以使用更简单的方法 1 在逻辑交换机虚拟线路端口组上启用配置设置。
过程
- 在分布式端口组上启用混杂模式和伪信号。
- 在 vSphere Client 中,导航到主机和集群,然后从左侧导航器视图中单击网络。
- 在 VDS-1 下面,右键单击连接到 NSX Edge 网桥节点的虚拟线路端口组,然后单击编辑设置。
例如,右键单击 VDS-1 上的 vxw-dvs-36-virtualwire-1-sid-10600-Vwire-1 虚拟线路端口组。
- 单击安全。
- 在混杂模式下拉菜单中,选择接受。
- 在伪信号下拉菜单中,选择接受。
- 单击确定。
- 如果使用 Python 脚本启用了 MAC 学习,请验证是否在分布式端口组上启用了
macLearningPolicy
属性。- 在 vSphere Client 中,检查虚拟线路端口组的 dvportgroupId。
要获取 dvportgroupId,请导航到 主机和集群,然后从左侧导航器视图中单击 网络。单击导航器视图中的虚拟线路端口组。从浏览器中的 URI 路径检索 dvportgroupId。您可以在 URI 中看到类似以下内容: DistributedVirtualPortgroup:dvportgroup-id例如,单击 VDS-1 上的 vxw-dvs-36-virtualwire-1-sid-10600-Vwire-1 虚拟线路端口组。此 dvportgroupId 是
dvportgroup-72
。dvportgroupId 在您的环境中可能有所不同。 - 登录到 VMware vCenter MOB,然后转到以下 URL 以查看 dvportgroup 的配置属性:
https://{vcenter-ip}/mob/?moid={dvportgroupId}&doPath=config%2edefaultPortConfig
请确保将 vcenter-ip 和 dvportgroupId 替换为您的环境中相应的实际值。
将显示VMwareDVSPortSetting
对象类型的属性。 - 单击“值”列中的 macManagementPolicy。
例如:
将显示DVSMacManagementPolicy
对象类型的属性。 - 确认
forgedTransmits
属性是否已设置为true
。例如:
- 再次单击“值”列中的 macManagementPolicy。
将显示
DVSMacLearningPolicy
对象类型的属性。 - 确认
macLearningPolicy
已进行如下配置:enabled
:truelimit
:4096limitPolicy
: Drop
例如:
注: 如果limit
和limitPolicy
的值为Unset
,即使启用了macLearningPolicy
,也无法使用 MAC 学习。
- 在 vSphere Client 中,检查虚拟线路端口组的 dvportgroupId。