07-04-2021 11:50 PM
Dear Community.
I'm currently facing a somewhat interesting Task.
We're about to merge 2 former separatet parts of our MPLS Backbone. The Problem I'm having is the verification of disjunction of Route-Targets on both parts of the Network.
Prior of bringing up the Full-Mesh BGP-Sessions between the Route-Reflectors I wanted to make sure that we don't have overlapping Route-Targets (that would result in routes imported into uninteded vrfs).
Are you aware of any command / Method that would
Our Route-Reflectors are using IOSXE 16.12.05 - while the PEs are on different Versions of IOS-XR.
Thank you for some enlightening thoughts.
Michael
07-05-2021 02:00 AM - edited 07-05-2021 02:03 AM
Hello Michael,
are the two parts that you are going to merge using the same BGP AS number or a different one?
What type of convention have you used in building route targets :
a) AS number: <value 32 bit>
Clearly if the AS is the same and this AS is 16 bit wide the potential for overlap in route targets exists
You can try what is suggested here
using an extcommunity-list to filter vpnv4 routes.
It requires multiple iterations to find out.
However, if you have coded a customer ID in the value sub-field in the route-target the chances of overlapping are low.
Hope to help
Giuseppe
07-05-2021 05:26 AM - edited 07-05-2021 05:28 AM
Dear Giuseppe,
Thank you for your reply.
Yes - we're merging in iBGP - and the AS-Number is the same (in Process as well as the RT-AS-Prefix).
I've allready read the Thread that you are referring to but this is not really helping as I'm rather trying to list all Route-Targets than actively looking for one that migt be existing. Building 2^32 extcommunity-Lists to filter on them programmatically doesn't seem to be a good solution to me
I've digged a little deeper into the XR CLI using command completion and CLI Help and found a cli-Command that is not documented in the Command Reference I was expecting to find someting like this in: (https://www.cisco.com/c/en/us/td/docs/routers/asr9000/software/asr9k-r7-3/routing/command/reference/b-routing-cr-asr9000-73x/bgp-commands.html)
show bgp rt [RT|all|ipv4|ipv6|l2vpn|link-state|vpnv4|vpnv6]
This Command actually generates an Output in the Format I do need:
RP/0/RSP0/CPU0:HOSTNAME#show bgp rt all
Mon Jul 5 14:18:34.073 MEST
EXTCOMM AFs
RT:65000:xxxxxxxxx IPv4 Unicast
RT:65000:yyyyyyyyy IPv4 Unicast
RT:65000:zzzzzzzzz IPv4 Unicast
[...]
Unfortunately this command does seem to show only the RTs that are either imported or exported (through import- or export-statements as well as through route-policies) from or to a VRF on the PE where I'm issuing the command.
It also doesn't seem to exist on the IOSXE.
This will force me to issue that command on all PEs and copy the list out to a new (deduplicated) external list...
Maybe someone else has a better Idea?
Regards,
Michael
07-05-2021 07:05 AM
Hello @Fischi ,
>>
Unfortunately this command does seem to show only the RTs that are either imported or exported (through import- or export-statements as well as through route-policies) from or to a VRF on the PE where I'm issuing the command.
This is a key point of MP BGP scalability a PE node will not store VPNv4 routes that are not for any of the locally defined VRFs.
There is a command to disable this and it is used on ASBR in inter AS scenario.
You may need a dedicated node where you enable this command it will try to get all VPNv4 prefixes so it needs to have enough memory in route processor an ASR 9000 should be able to support it, but it would be better to use a device with no customers on it.
it could be
retain route-target all
see
Hope to help
Giuseppe
07-05-2021 06:01 AM
PE1 and PE2 will advertise prefix to PE3"RR" and PE3 will re-advertise to other PE,
now you want to make PE1 and PE2 be advertise the "same" prefix ?
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide