davidy2001
asked on
BGP synchronization
Experts
Can you help me understand the case? Router A, B ,and C are in the same AS. Topology is A – B – C-loopback(1.1.1.1). and A and C are BGP neighbor. A,B,C are full BGP connection. Publish network 1.1.1.0. Router A can see 1.1.1.0 in routing table only after turning off synchronization. Why ? thank you.
Can you help me understand the case? Router A, B ,and C are in the same AS. Topology is A – B – C-loopback(1.1.1.1). and A and C are BGP neighbor. A,B,C are full BGP connection. Publish network 1.1.1.0. Router A can see 1.1.1.0 in routing table only after turning off synchronization. Why ? thank you.
Here is the link where BGP sync is explained
http://www.nnk.com.au/index.php?option=com_content&view=article&id=22:bgp-synchronization&catid=3:articles&Itemid=5
since you have all routers in same AS thus no need to turn on bgp sync..
rule says:
When an AS provides transit service to other ASs and if there are non-BGP routers in the AS, transit traffic might be dropped if the intermediate non-BGP routers have not learned routes for that traffic via an IGP. The BGP synchronization rule states that if an AS provides transit service to another AS, BGP should not advertise a route until all of the routers within the AS have learned about the route via an IGP.
http://www.nnk.com.au/index.php?option=com_content&view=article&id=22:bgp-synchronization&catid=3:articles&Itemid=5
since you have all routers in same AS thus no need to turn on bgp sync..
rule says:
When an AS provides transit service to other ASs and if there are non-BGP routers in the AS, transit traffic might be dropped if the intermediate non-BGP routers have not learned routes for that traffic via an IGP. The BGP synchronization rule states that if an AS provides transit service to another AS, BGP should not advertise a route until all of the routers within the AS have learned about the route via an IGP.
ASKER
thanks for your reply. i read that link article and understand it, which tell similar result with mine. but i still cannot see the relation between synchronization rule and why in the case Router A cannot see 1.1.1.1 in its routing table after enabling synchronization.
All three routers are configured with BGP and OSPF. so, the synchronization rule should not make difference in the situation ?
All three routers are configured with BGP and OSPF. so, the synchronization rule should not make difference in the situation ?
I answered this earlier
You are using a loopback address, (because you have a redundant connection).
You need synchronization turned off for routes to show when you use loopback addresses the way you did.
You wouldn't need it if you formed neighbors on the interfaces.
BGP treats loopbacks as additional hop.
There are ways to further tune BGP to work around this.
You can read a little more on BGP and loopback addresses here
http://www.cisco.com/en/US/tech/tk365/technologies_tech_note09186a00800c95bb.shtml#BGPloopbackinter
You are using a loopback address, (because you have a redundant connection).
You need synchronization turned off for routes to show when you use loopback addresses the way you did.
You wouldn't need it if you formed neighbors on the interfaces.
BGP treats loopbacks as additional hop.
There are ways to further tune BGP to work around this.
You can read a little more on BGP and loopback addresses here
http://www.cisco.com/en/US/tech/tk365/technologies_tech_note09186a00800c95bb.shtml#BGPloopbackinter
Answer these questions and I'll provide you with more info on your configuration
- Router A - Loopback IP? Physical Interfaces IP?
- Router B - Loopback IP? Physical Interfaces IP?
- Router C - Loopback IP? Physical Interfaces IP?
Did you advertise the loopback addresses into OSPF
- Router A - Loopback IP? Physical Interfaces IP?
- Router B - Loopback IP? Physical Interfaces IP?
- Router C - Loopback IP? Physical Interfaces IP?
Did you advertise the loopback addresses into OSPF
BGP Neighbors on loopback interfaces
R1 lo 1 1.1.1.1, fa0/1 10.10.10.1, fa0/2 10.10.20.1
R2 lo 2 2.2.2.2, fa0/1 10.10.10.2, fa0/2 10.10.20.2
AS 500
Advertise the All addresses (at least lo addresses) into OSPF
R1<config>#Router bgp 500
R1<config-router>#Neighbor 2.2.2.2 remote-as 500
R2<config-router>#neighbor 1.1.1.1 remote-as 500
Neighbor relationship will not form
Why?
Router 2 will attempt to form a neighbor relationship with R1 using a source address of one of the fastinternet interfaces through OSPF.
Problem is R1 has no neighbor entry for the fa interfaces in its BGP table. It only knows to form neighbor with 2.2.2.2
R2<config-router>#neighbor 1.1.1.1 update-source loopback 2
Do the same on R1
R1<config-router>#neighbor 2.2.2.2 update-source loopback 1
All the best
Akinsd
R1 lo 1 1.1.1.1, fa0/1 10.10.10.1, fa0/2 10.10.20.1
R2 lo 2 2.2.2.2, fa0/1 10.10.10.2, fa0/2 10.10.20.2
AS 500
Advertise the All addresses (at least lo addresses) into OSPF
R1<config>#Router bgp 500
R1<config-router>#Neighbor
R2<config-router>#neighbor
Neighbor relationship will not form
Why?
Router 2 will attempt to form a neighbor relationship with R1 using a source address of one of the fastinternet interfaces through OSPF.
Problem is R1 has no neighbor entry for the fa interfaces in its BGP table. It only knows to form neighbor with 2.2.2.2
R2<config-router>#neighbor
Do the same on R1
R1<config-router>#neighbor
All the best
Akinsd
ASKER
Thank you for your explanation. I am sorry I was not clear about the question. the loopback you mentioned are totally configured correctly in the case.
I read several papers. Their results are the same as mine. Now I am just repeating the experiment. but these papers did not give detail explanation.
Here is question: turning off synchronization at RouterA can let 1.1.1.1 route into bgp table with marker * and >. When turning on the synchronization, 1.1.1.1 route can go into bgp table only with marker *.
As synchronization rule states, RouterA do not send 1.1.1.1 to EBGP neighbor(if 1.1.1.1 is in BGP table with marker * and >, it should be able to reach the EBGP neighbor) until 1.1.1.1 also reach RouterA via IGP.
Now 1.1.1.1 already reach RouterA via IGP, why 1.1.1.1 is still only with marker * without > after turning on synchronization? Only with *, RouterA cannot send 1.1.1.1 to its EBGP neighbor.
I read several papers. Their results are the same as mine. Now I am just repeating the experiment. but these papers did not give detail explanation.
Here is question: turning off synchronization at RouterA can let 1.1.1.1 route into bgp table with marker * and >. When turning on the synchronization, 1.1.1.1 route can go into bgp table only with marker *.
As synchronization rule states, RouterA do not send 1.1.1.1 to EBGP neighbor(if 1.1.1.1 is in BGP table with marker * and >, it should be able to reach the EBGP neighbor) until 1.1.1.1 also reach RouterA via IGP.
Now 1.1.1.1 already reach RouterA via IGP, why 1.1.1.1 is still only with marker * without > after turning on synchronization? Only with *, RouterA cannot send 1.1.1.1 to its EBGP neighbor.
Note the difference between EBGP and IBGP neighbors.
They are configured the same way. The main difference is IBGP neighbors have the same AS while EBGP neighbors have different AS. Internal versus External
With that said, your reference to EBGP even though you mentioned that they all have the same AS is a bit confusing
They are configured the same way. The main difference is IBGP neighbors have the same AS while EBGP neighbors have different AS. Internal versus External
With that said, your reference to EBGP even though you mentioned that they all have the same AS is a bit confusing
ASKER
Hi, i should have had a picture about it. please see attachment.
As synchronization rule states, RouterA do not send 1.1.1.1 to EBGP neighbor(Router D) until 1.1.1.1 also reach RouterA via IGP.
Now route 1.1.1.1 already exits in RouterA via IGP, why is route1.1.1.1 marked only with marker "*" without ">" at RouterA bgp table after turning on synchronization? That is also why route 1.1.1.1 would not go to RouterD. Is this not consistent with synchronization rule ?
as.PNG
As synchronization rule states, RouterA do not send 1.1.1.1 to EBGP neighbor(Router D) until 1.1.1.1 also reach RouterA via IGP.
Now route 1.1.1.1 already exits in RouterA via IGP, why is route1.1.1.1 marked only with marker "*" without ">" at RouterA bgp table after turning on synchronization? That is also why route 1.1.1.1 would not go to RouterD. Is this not consistent with synchronization rule ?
as.PNG
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
it's going to be solved soon
1 - When 1 AS does not pass route information from one AS to another especially when the route has not been interjected via IGP
2 - All the transit routers run BGP.
You are using a loopback address and technically, BGP sees that as a next hop address. The traffic has to 1st pass through the interface before it gets retransmitted to the loopback address.