Below are the prerequisites for seeing this issue:
• Tier-0 logical router present in environment.
• Creating a new segment and attach it to the Tier-0.
• Checking the routing table of the Tier-0 SR/DR the subnet for the segment is NOT present.
• Existing segments already connected to the Tier-0 have no issues and the subnet for the segment is present in the routing table.
• Have a IPv4 routing prefix list configured with a length greater than 32 (which is invalid).
• In the /var/log/rcpm/frr_logs/frrfailedcfg.<date/time>.txt file, entries similar to the below will be seen:
ip prefix-list a6e35d49-####-####-####-6aa27ced4100 seq 20 deny 0.0.0.0/96 le 128
Note: The frrfailedcfg.<date/time>.txt logs are contained in a tar.bz2 tarball and will need to be extracted to view them.
• In the /var/log/rcpm/frr-reload.log file, below entries will be seen:
ERROR: Command '['/usr/bin/vtysh', '-m', '-f', '/config/vmware/edge/frr/frrbasecfg.txt']' returned non-zero exit status 2.
VMware NSX 4.x
VMware NSX-T Data Center 3.x
The IPv4 prefix length is configured with a invalid length, there was incorrect validation on this and once the invalid length is entered, it means the frr process is unable to load the configuration, therefore new configurations added since the invalid prefix was added will also fail to be added.
Note: In the above log it was less than or equal to (le) 128, it can not be anything greater than 32 for IPv4 and 128 for IPv6, this also includes greater than or equal to (ge) values.
This issue is resolved in VMware NSX 4.2.0
Workaround:
Review the prefix length in the Tier 0 Routing - IP Prefix Lists and correct invalid lengths.
For details on configuring IP Prefix List, please review the Administration Guide.