BGP local-as option allows a router to appear as if it is in another AS. Suppose we have a frame-relay cloud with 3 routers all EBGP peers with each other:
R6: 172.14.45.6 (AS 65000)
R5: 172.14.45.5 (AS 65005)
R4: 172.14.45.4 (AS 345)
We can configure R6 to use the local-as option to appear to be from AS 65006 to R5, but remain in AS65000 for R4. Here's how:
R6(config-router)#router bgp  65000
R6(config-router)#neighbor 172.14.45.5 local-as 65006
On R5:
R5(config)#router bgp 65005
R5(config-router)#neighbor 172.14.45.6 remote-as 65006
Let's take a look at the neighbor summary:
R5# show ip bgp summary | be Ne
Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
172.14.45.6     4 65006     220     221      244    0    0 00:03:39        9
R4#show ip bgp summary  | be Ne
172.14.45.6     4 65000     176     146       69    0    0 00:00:08       11
Notice the different AS numbers. Also notice the AS path from R5's view:
R5# show ip bgp | inc 172.14.45.6
*> 6.0.3.0/24       172.14.45.6              0             0 65006 65000 i
*> 6.0.4.0/24       172.14.45.6              0             0 65006 65000 i
*> 6.0.5.0/24       172.14.45.6              0             0 65006 65000 i
And the AS path from R6's view also includes the local-AS number:
R6#show ip bgp | be Ne
   Network          Next Hop     Metric LocPrf Weight Path
*> 2.2.2.2/32       172.14.45.5                     0 65006 65005 65002 i
*> 5.5.5.5/32       172.14.45.5       0             0 65006 65005 i
The routes appear to magically pass through 65006. We can prevent R6 from prepending the local-as number on routes received from R6 with the no-prepend option
R6(config)#router bgp 65000
R6(config-router)#neighbor 172.14.45.5 local-as 65006 no-prepend
65006 is no longer in the AS Path:
R6#show ip bgp | be Ne
   Network          Next Hop     Metric LocPrf Weight Path
*> 2.2.2.2/32       172.14.45.5                     0 65005 65002 i
*> 5.5.5.5/32       172.14.45.5       0             0 65005 i
With the replace-AS we can prevent R5's real BGP AS number from appearing in the AS path on routes from R6 to R5:
R6(config)#router bgp 65000
R6(config-router)#neighbor 172.14.45.5 local-as 65006 no-prepend replace-as
R5# show ip bgp | be Ne
   Network          Next Hop     Metric LocPrf Weight Path
*> 6.0.3.0/24       172.14.45.6       0             0 65006 i
*> 6.0.4.0/24       172.14.45.6       0             0 65006 i
*> 6.0.5.0/24       172.14.45.6       0             0 65006 i
Lastly, we can configure R6 to accept connections to either AS 65000 or AS 65006 with the dual-as option:
R6(config)#router bgp 65000
R6(config-router)#neighbor 172.14.45.5 local-as 65006 no-prepend replace-as dual-as
R5#show ip bgp summary
Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
172.14.45.6     4 65006     268     284      343    0    0 00:00:08        9
R5#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
R5(config)#router bgp 65005
R5(config-router)#neighbor 172.14.45.6 remote-as 65000
R5(config-router)#
.Jul 14 21:34:34.273: %BGP-5-ADJCHANGE: neighbor 172.14.45.6 Down Remote AS changed
R5(config-router)#
.Jul 14 21:34:36.505: %BGP-5-ADJCHANGE: neighbor 172.14.45.6 Up
R5(config-router)#
R5(config-router)#^Z
R5#show ip bgp summary
Neighbor        V    AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
172.14.45.6     4 65000     270     286        0    0    0 00:00:09        0
Monday, July 14, 2008
Subscribe to:
Post Comments (Atom)
 
 
 
 Posts
Posts
 
 
great job... can you also add diagrams so that you can ice the cake you baked ;)
ReplyDeleteThanks
Good Explanation !
ReplyDelete