In NSX-T environments, the Virtual Distributed Router (VDR) may fail to resolve the Service Router (SR) backplane MAC address if both the workload VM and the Edge VM are on the same host. This issue arises from having two different values for the same configuration key (com.vmware.port.extraConfig.vdl2.nestedTNConfig) in the logical port configuration.
Example Object Type: vmware.nsx.nestdb.LogSwitchPortConfigMsg
[root@xx-xx-xx-xx-xx-xx:~] /opt/vmware/nsx-nestdb/bin/nestdb-cli --beautify --cmd get vmware.nsx.nestdb.LogSwitchPortConfigMsg | grep nested
{'id': {'left': ###########, 'right': ###########},
'log_switch_id': {'left': ###########, 'right': ###########},
'attachment': {'vif_attachment': {'vif_id': '######################', 'type': 'INDEPENDENT'}},
'extra_config': [{'key': 'com.vmware.port.extraConfig.vdl2.nestedTNConfig',
'value': 'version=1;vlan=###,label=XXXXX;vlan=###,label=XXXXX'},
{'key': 'com.vmware.port.extraConfig.vdl2.nestedTNConfig',
'value': 'version=1;vlan=###,label=YYYYY;vlan=###,label=YYYYY'}]}
Observations:
com.vmware.port.extraConfig.vdl2.nestedTNConfig with differing values in extra_config and system_extra_config.com.vmware.port.extraConfig.vdl2.nestedTNConfig. Use commands like net-dvs -l.
port ######-####-####[PortID]:
com.vmware.common.port.alias = ######-####-####[PortID] , propType = CONFIG
com.vmware.common.port.connectid = ######### , propType = CONFIG
com.vmware.common.port.backingType = nsx , propType = CONFIG
com.vmware.port.extraConfig.vdl2.nestedTNConfig = version=1;vlan=##,label=111617 , propType = POLICY
Relevant Logs
Impacted Version:
The issue arises due to having two different values for the same configuration key (com.vmware.port.extraConfig.vdl2.nestedTNConfig) in the logical port configuration. This discrepancy results in network traffic failures when VMs and the Edge VM are on the same host, potentially causing significant disruptions.
This issue will be resolved in a later version of NSX.
Workaround for 4.1 and above releases
For workaround user can run attached fixNestedTNConfigForAllLPsOnEdgeNode_version_4_1_and_above.py script. It is preferable to take a maintenance window before applying workaround.
Steps To run Script:
python3 fixNestedTNConfigForAllLPsOnEdgeNode_version_4_1_and_above.py <edge_uuid_file>
<edge_uuid_file> → This file contains list of impacted edge UUIDs. Each edge node UUID needs to be in separate line in this file. Review and use impacted_edge_uuids.txt generated by findAllImpactedLogicalPortsGroupedByEdgeNodes.py script
Script performs below steps for fixing issue:
If you suspect you are experiencing this issue and need assistance with validation, please open a support case with Broadcom.