Here am going to create sub AS this will
eliminate the need of full mesh iBGP peer within the AS.
R1#sh run | s router bgp
router bgp 6500
no
synchronization
bgp
log-neighbor-changes
bgp
confederation identifier 100
bgp
confederation peers 65412
neighbor 150.2.2.2 remote-as 65412
neighbor 150.2.2.2 ebgp-multihop 2
neighbor 150.2.2.2 update-source Loopback0
neighbor 155.1.16.6 remote-as 600
no
auto-summary
R2#sh run | s router bgp
router bgp 65412
no
synchronization
bgp
log-neighbor-changes
bgp
confederation identifier 100
bgp
confederation peers 6500
neighbor 150.1.1.1 remote-as 6500
neighbor 150.1.1.1 ebgp-multihop 2
neighbor 150.1.1.1 update-source Loopback0
neighbor 150.3.3.3 remote-as 65412
neighbor 150.3.3.3 update-source Loopback0
no
auto-summary
R3#sh run | s router bgp
router bgp 65412
no
synchronization
bgp
log-neighbor-changes
bgp
confederation identifier 100
neighbor 150.2.2.2 remote-as 65412
neighbor 150.2.2.2 update-source Loopback0
neighbor 155.1.34.4 remote-as 400
neighbor 155.1.35.5 remote-as 500
no
auto-summary
What's the use of confederation?? Lets look
at prefixes advertisement.
As we knew R5 advertising the prefixes to R3 and R3 will be advertise to R2
, and since R2 and R1 is eBGP peer we don’t need to modify the Route reflector. R2 will automatically advertise
to R1. So lets have a look on R2 bgp updates.
R3#sh ip bgp
BGP table version is 10, local router ID is
150.3.3.3
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
*> 4.1.0.0/24 155.1.34.4 0 0 400 i
*> 4.2.0.0/24 155.1.34.4 0 0 400 i
*> 4.3.0.0/24 155.1.34.4 0 0 400 i
*> 5.1.0.0/24 155.1.35.5 0 0 500 i
*> 5.2.0.0/24 155.1.35.5 0 0 500 i
*> 5.3.0.0/24 155.1.35.5 0 0 500 i
*>i6.1.0.0/16 155.1.16.6 0 100
0 (6500) 600 i
*>i6.2.0.0/16 155.1.16.6 0 100
0 (6500) 600 i
*>i6.3.0.0/16 155.1.16.6 0 100
0 (6500) 600 i
R3 getting the prefixes from R5 with a next
hop 155.1.35.5. Since R3 and R2 is an iBGP peer R3 will send the update to R2
but R3 will not change the next hop.
R2#sh ip bgp
BGP table version is 4, local router ID is
150.2.2.2
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
* i4.1.0.0/24 155.1.34.4 0 100
0 400 i
* i4.2.0.0/24 155.1.34.4 0 100
0 400 i
* i4.3.0.0/24 155.1.34.4 0
100 0 400 i
* i5.1.0.0/24 155.1.35.5 0 100
0 500 i
* i5.2.0.0/24 155.1.35.5 0 100
0 500 i
* i5.3.0.0/24 155.1.35.5 0 100
0 500 i
*> 6.1.0.0/16 155.1.16.6 0 100
0 (6500) 600 i
*> 6.2.0.0/16 155.1.16.6 0 100
0 (6500) 600 i
*> 6.3.0.0/16 155.1.16.6 0 100
0 (6500) 600 i
R2 didn’t mark this prefixes as the best
and valid routes. Since we don’t have the reachability to the next hop. Lets
simply tell the R3 to do next hop modification.
R3(config)#router bgp 65412
R3(config-router)#neighbor 150.2.2.2
next-hop-self
R2#sh ip bgp
BGP table version is 10, local router ID is
150.2.2.2
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
*>i4.1.0.0/24 150.3.3.3 0 100
0 400 i
*>i4.2.0.0/24 150.3.3.3 0 100
0 400 i
*>i4.3.0.0/24 150.3.3.3 0 100
0 400 i
*>i5.1.0.0/24 150.3.3.3 0 100
0 500 i
*>i5.2.0.0/24 150.3.3.3 0 100
0 500 i
*>i5.3.0.0/24 150.3.3.3 0 100
0 500 i
*> 6.1.0.0/16 155.1.16.6 0 100
0 (6500) 600 i
*> 6.2.0.0/16 155.1.16.6 0 100
0 (6500) 600 i
*> 6.3.0.0/16 155.1.16.6 0 100
0 (6500) 600 i
See all the prefixes marked as best and
valid routes. Now R2 will update these
prefixes to R1 because they are in eBGP peer. So lets have a look on R1 .
R1#sh ip bgp
BGP table version is 10, local router ID is
150.1.1.1
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
*> 4.1.0.0/24 150.3.3.3 0 100
0 (65412) 400 i
*> 4.2.0.0/24 150.3.3.3 0 100
0 (65412) 400 i
*> 4.3.0.0/24 150.3.3.3 0 100
0 (65412) 400 i
*> 5.1.0.0/24 150.3.3.3 0 100
0 (65412) 500 i
*> 5.2.0.0/24 150.3.3.3 0 100
0 (65412) 500 i
*> 5.3.0.0/24 150.3.3.3 0 100
0 (65412) 500 i
*> 6.1.0.0/16 155.1.16.6 0 0 600 i
*> 6.2.0.0/16 155.1.16.6 0 0 600 i
*> 6.3.0.0/16 155.1.16.6 0 0 600 i
Note R1 getting the prefixes but have a
deep look on the prefixes, the prefixes comes with the sub AS value prepended. The Sub AS will be denoted in
bracket (65412). So let have look on the
last router R6.
R6#sh ip bgp
BGP table version is 36, local router ID is
150.6.6.6
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
*> 4.1.0.0/24 155.1.16.1 0 100 400 i
*> 4.2.0.0/24 155.1.16.1 0 100 400 i
*> 4.3.0.0/24 155.1.16.1 0 100 400 i
*> 5.1.0.0/24 155.1.16.1 0 100 500 i
*> 5.2.0.0/24 155.1.16.1 0 100 500 i
*> 5.3.0.0/24 155.1.16.1 0 100 500 i
*> 6.1.0.0/16 0.0.0.0 0 32768 i
*> 6.2.0.0/16 0.0.0.0 0 32768 i
*> 6.3.0.0/16 0.0.0.0 0 32768 i
Did u noted one interesting thing the Sub
AS is removed as it come out the sub AS into normal/main AS.
No comments:
Post a Comment