cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2022
Views
0
Helpful
7
Replies

receiving route

sergio.danelli
Level 1
Level 1

Hello,

I am trying to understand the following. I have a PE(7200-SF02) router peering with 10 other PE routers and one E-BGP, all these routers are sending a default route to each other, but this router only shows 2 learned routes in the RIB-IN:

7200-SF02#show ip bgp v v vrfData 0.0.0.0

BGP routing table entry for 100:3:0.0.0.0/0, version 1007

Paths: (3 available, best #2, table vrfData)

Advertised to peer-groups:

mbgp-ut mbgp-sf

P1 P2, imported path from 100:1:0.0.0.0/0

10.0.0.3 (metric 2) from 10.0.0.3 (10.0.0.3)

Origin IGP, metric 0, localpref 100, valid, internal

Extended Community: RT:100:1,

mpls labels in/out 142/98

26749 3356

69.x.x.x from 69.x.x.x (x.x.x.x)

Origin IGP, localpref 100, valid, external, best

Extended Community: RT:100:1,

mpls labels in/out 142/nolabel

P1 P2, (received-only)

x.x.x.x from x.x.x.x (x.x.x.x)

Origin IGP, localpref 100, valid, external,

mpls labels in/out 142/nolabel

On another router which has the same peerings and route targets I show:

7200-SF04#show ip bgp v v vrfData 0.0.0.0

BGP routing table entry for 100:1:0.0.0.0/0, version 333461

Paths: (12 available, best #11, table vrfData)

Advertised to peer-groups:

mbgp-ut mbgp-sf

P1 P2, imported path from 100:3:0.0.0.0/0

10.0.0.2 (metric 2) from 10.0.0.2 (10.0.0.2)

Origin IGP, metric 0, localpref 100, valid, internal

Community: no-export

Extended Community: RT:100:1,

mpls labels in/out 212/142

P1 P2

10.0.0.4 (metric 2) from 10.0.0.4 (10.0.0.4)

Origin IGP, metric 0, localpref 100, valid, internal

Community: no-export

Extended Community: RT:100:1,

mpls labels in/out 212/206

P1 2828

10.0.0.5 (metric 5) from 10.0.0.5 (10.0.0.5)

Origin IGP, metric 0, localpref 100, valid, internal

Extended Community: RT:100:1,

mpls labels in/out 212/66

P1 2828

10.0.0.6 (metric 5) from 10.0.0.6 (10.0.0.6)

Origin IGP, metric 0, localpref 100, valid, internal

Extended Community: RT:100:1,

mpls labels in/out 212/254

P1 2828

10.0.0.10 (metric 4) from 10.0.0.10 (10.0.0.10)

Origin IGP, metric 0, localpref 100, valid, internal

Extended Community: RT:100:1,

mpls labels in/out 212/123

P1 2828

10.0.0.1 (metric 4) from 10.0.0.1 (10.0.0.1)

Origin IGP, metric 0, localpref 100, valid, internal

Extended Community: RT:100:1,

mpls labels in/out 212/121

P1 P2

CUT OUTPUT DUE TO LIMIT

I see the other routers sending this:

200-SF04#show ip bgp v a neighbors 10.0.0.2(SF02) advertised-routes

BGP table version is 333779, local router ID is 10.0.0.7

Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,

r RIB-failure, S Stale

Origin codes: i - IGP, e - EGP, ? - incomplete

Network Next Hop Metric LocPrf Weight Path

Route Distinguisher: 100:1 (default for vrf vrfData)

*> 0.0.0.0 xxxxxx 0 P1 P2 i

The only difference is that they have a different route distinguisher, but don't know how the RD is relevant since the route targets are the same and the RD are only locally significant.

This routers are running the same version.

TIA

1 Accepted Solution

Accepted Solutions

Hi,

the import mechanism creates the 100:3:0.0.0.0/0 from the received 100:1:0.0.0.0/0 and that will be done only for the best - according to BGP path selection.

If you receive 100:1:0.0.0.0/0 and the VRF has RD 100:1 configured, no import, i.e. copy made from original, is required.

Thus all the routes with identical RD will end up in the VRF BGP table. There BGP path selection will determine, which to insert into the routing table.

So import required, because RD different means by default one route in the VRF

No import required, as RD is identical (received and configured) means all routes in the VRF BGP table.

Regards, Martin

View solution in original post

7 Replies 7

olorunloba
Level 5
Level 5

Are you doing any route filtering? Check if there are any inbound route filters.

Can you give us the config, as well as the show ip bgp vpn all sum

No filtering going on.

show ip bgp v a summ

BGP router identifier 10.0.0.2, local AS number 65520

BGP table version is 1522, main routing table version 1522

788 network entries using 95348 bytes of memory

926 path entries using 59264 bytes of memory

157 BGP path attribute entries using 9420 bytes of memory

2 BGP AS-PATH entries using 48 bytes of memory

1 BGP community entries using 24 bytes of memory

100 BGP extended community entries using 3888 bytes of memory

0 BGP route-map cache entries using 0 bytes of memory

0 BGP filter-list cache entries using 0 bytes of memory

BGP using 167992 total bytes of memory

1 received paths for inbound soft reconfiguration

BGP activity 903/115 prefixes, 1104/178 paths, scan interval 15 secs

Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd

10.0.0.1 4 65520 1707 1810 1522 0 0 1d04h 7

10.0.0.3 4 65520 1706 1836 1522 0 0 1d04h 3

10.0.0.4 4 65520 1780 1836 1522 0 0 1d04h 117

10.0.0.5 4 65520 1783 1810 1522 0 0 1d04h 92

10.0.0.6 4 65520 1745 1810 1522 0 0 1d04h 99

10.0.0.7 4 65520 1789 1836 1522 0 0 1d04h 81

10.0.0.8 4 65520 1761 1836 1522 0 0 1d04h 98

10.0.0.9 4 65520 1706 1836 1522 0 0 1d04h 3

10.0.0.10 4 65520 1707 1810 1522 0 0 1d04h 7

10.0.0.11 4 65520 1735 1836 1522 0 0 1d04h 23

x.x.x.x.7 4 xxxx 1705 1778 1522 0 0 1d04h 1

Which part of the config. is relevant?

Only difference is that the RD on that particular vrf is different.

router bgp 65520

no synchronization

bgp log-neighbor-changes

neighbor mbgp-ut peer-group

neighbor mbgp-ut remote-as 65520

neighbor mbgp-ut update-source Loopback0

neighbor mbgp-ut soft-reconfiguration inbound

neighbor mbgp-sf peer-group

neighbor mbgp-sf remote-as 65520

neighbor mbgp-sf update-source Loopback0

neighbor mbgp-sf soft-reconfiguration inbound

neighbor 10.0.0.1 peer-group mbgp-ut

neighbor 10.0.0.3 peer-group mbgp-sf

neighbor 10.0.0.4 peer-group mbgp-sf

neighbor 10.0.0.5 peer-group mbgp-ut

neighbor 10.0.0.6 peer-group mbgp-ut

neighbor 10.0.0.7 peer-group mbgp-sf

neighbor 10.0.0.8 peer-group mbgp-sf

neighbor 10.0.0.9 peer-group mbgp-sf

neighbor 10.0.0.10 peer-group mbgp-ut

neighbor 10.0.0.11 peer-group mbgp-sf

no auto-summary

!

address-family vpnv4

neighbor mbgp-ut send-community both

neighbor mbgp-sf send-community both

neighbor mbgp-sf route-map noexport out

neighbor 10.0.0.1 activate

neighbor 10.0.0.3 activate

neighbor 10.0.0.4 activate

neighbor 10.0.0.5 activate

neighbor 10.0.0.6 activate

neighbor 10.0.0.7 activate

neighbor 10.0.0.8 activate

neighbor 10.0.0.9 activate

neighbor 10.0.0.10 activate

neighbor 10.0.0.11 activate

exit-address-family

!

address-family ipv4 vrf vrfData

redistribute static

redistribute ospf 101 match internal external 1 external 2 route-map igp2bgp

neighbor x.x.x.7 remote-as xxxxx

neighbor x.x.x.7 activate

neighbor x.x.x.7 soft-reconfiguration inbound

neighbor x.x.x.7 route-map metric out

no auto-summary

no synchronization

exit-address-family

All of my neighbors are sending a default, but I am only receiving the one from 10.0.0.3 and the peer on vrfData

Hmmm. I can't see exactly what is wrong, but a few things to check.

1. Can you post the output of show ip bgp vpn all. This should list all the recieved routes, irrespective of the RDs.

2. Have you tried to clear the BGP sessions

3. What is the outbound route-map configuration (on the vpnv4 sessions) for. I assume it is on all the peers.

The bgp vpnv4 config of the remote peers should help also, as well as the show ip bgp for the default route (including the best path this time)

mheusing
Cisco Employee
Cisco Employee

Hi,

The RD makes the difference. In case the RD matches, any route does not have to be imported into a VRF. The import takes the original BGP route and creates a copy for the VRF. You can see that from the BGP table, where the original route with it's RD and a copy with the VRF specific RD is found. By default only one route will be imported - independent of how many you have originally.

Try

router bgp 65000

address-family ipv4 vrf test

maximum-path ibgp 6 import 6 ! or whatever number you like to have and IOS allows

This should create more copies in the VRF, and lead to the desired result.

Hope this helps! Please use the rating system.

Regards, Martin

Thanks for the response.

So if I understand correctly, all the routes are received but since the RD matches it only imports one route into the vrf?

"In case the RD matches, any route does not have to be imported into a VRF"

I am still cloudy as to why the behavior is different because my RD is different, the route that is advertised from my neighbors is 100:1:0.0.0.0/0, since locally I have 100:3 configured as the RD, the route is turned into 100:3:0.0.0.0/0 when imported, how is the different RD relevant?

I understand(I think) what the RD does in relation to other vrfs, it helps differentiate a route in case subnets overlap, so the RD needs to be different for different vrfs, but I do not see the correlation with other PEs yet.

thanks again and sorry for the follow up.

Hi,

the import mechanism creates the 100:3:0.0.0.0/0 from the received 100:1:0.0.0.0/0 and that will be done only for the best - according to BGP path selection.

If you receive 100:1:0.0.0.0/0 and the VRF has RD 100:1 configured, no import, i.e. copy made from original, is required.

Thus all the routes with identical RD will end up in the VRF BGP table. There BGP path selection will determine, which to insert into the routing table.

So import required, because RD different means by default one route in the VRF

No import required, as RD is identical (received and configured) means all routes in the VRF BGP table.

Regards, Martin

thanks. makes sense now.