07-09-2012 10:56 AM - edited 03-04-2019 04:55 PM
Hi everyone,
i have one router connected to 2 eBGP upstream providers - doing its job for years. After setting up iBGP to a second router (which is not connected to any eBGP yet) I was expecting to see 2 complete routing tables (sh ip bgp all) on router 2. I do not, the table only shows my own networks. So the routing entries learnt by eBGP on router1 are not transfered to router2 via iBGP.
What could be wrong here ?
Router1 (7206VXR, ip:x.x.x6)
---------------------------
router bgp 123456
no synchronization
bgp log-neighbor-changes
neighbor x.x.x.8 remote-as 123456
neighbor x.x.x.8 next-hop-self
...
Router2 (ASR1004, ip: x.x.x.8)
-----------------------------
router bgp 123456
bgp log-neighbor-changes
neighbor x.x.x.6 remote-as 123456
!
address-family ipv4
neighbor x.x.x.6 activate
neighbor x.x.x.6 next-hop-self
exit-address-family
...
TIA
Peter
Solved! Go to Solution.
07-10-2012 01:12 AM
Hello Peter,
this makes the difference!
>> distribute-list prefix My-Networks out
you should apply the filter at neighbor level to UPSTR1 and UPSTR2 neighbor(s) the filter applied at the BGP process level applies also to the iBGP session to router2 and this explains why no other routes are sent to router2
So you should apply the filter on neighbor command and then you have to remove the above command (at process level)
After all this you should see only the best routes propagated to router2 = you will not see double paths just one path for each prefix depending on router1 choicies
Hope to help
Giuseppe
07-10-2012 01:24 AM
Hello Peter,
yes if the outbound route-map is like the one you have showed you should be fine, verify that all the eBGP sessions have the outbound filter applied
if it is so, you can just delete at process level
Hope to help
Giuseppe
07-09-2012 11:10 AM
you have a remote-as on Router1 that doesn't match Router2. What does "show ip bgp summ" display?
07-09-2012 11:20 AM
Ooops... that was a manual search/replace mistake. Soryy for the inconvenience
07-09-2012 11:30 AM
on router2:
----------------
#sh ip bgp summ
BGP router identifier y.y.y.y , local AS number 123456
BGP table version is 162, main routing table version 162
5 network entries using 680 bytes of memory
5 path entries using 280 bytes of memory
1/1 BGP path/bestpath attribute entries using 128 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 1088 total bytes of memory
BGP activity 25331/25323 prefixes, 55671/55666 paths, scan interval 60 secs
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
x.x.x.6 4 123456 673 286 162 0 0 04:14:13 5
Note: I see router identifier - here replaced by y.y.y.y which is in fact the ip address of an ethernet interface not related to the iBGP Connection - router 2 has 8 ethernet interfaces...
07-09-2012 10:54 PM
Hi Peter,
On router1, what is the output of below command?
sh ip bgp neighbour x.x.x.8 advertised-routes
Warm regards,
Ameya Oke
07-09-2012 11:40 PM
Hi Ameya,
the output of "sh ip bgp neighbors x.x.x.8 advertised-routes" shows exactly 5 networks, exactly those networks that are declared in my "router bgp 123456" part as "network a.b.c.d".
At least that part is workink Only I was expecting to see the eBGP learnt routes - 2 complete internet eBGP tables.
In the mean time I found out that the "router identifier" shown in "sh ip bgp summ", is in deed the IP Address of an Interface running OSPF to another network. Router2 and router2 are NOT talking OSPF.
07-09-2012 11:57 PM
Hi Peter,
This concludes that there is some issue on router1 itself as it is not able to advertise any EBGP prefixes to Router2.
Do you see all the prefixes in BGP table of Router1 populating in routing table of Router1?
Have your configured any Route MAPs on router 1 which could be blocking the prefixes from being advertised?
Ameya Oke
07-10-2012 12:04 AM
"sh ip bgp" on router1 shows thousands of routes (>400.000 prefixes, double paths from 2 upstream).
The eBGP sessions DO have route maps, the iBGP session does NOT have a route map.
07-10-2012 12:10 AM
Hi,
Have you configured "no synchronization" on router2?
Ameya Oke
07-10-2012 12:23 AM
"no synchronisation" is NOT configured on router2.
Router2 only has these statements:
router bgp 123456
bgp log-neighbor-changes
neighbor x.x.x.6 remote-as 123456
address-family ipv4
neighbor x.x.x.6 activate
neighbor x.x.x.6 next-hop-self
exit-address-family
!
address-family ipv6
network YYYY:YYYY::/32
exit-address-family
07-10-2012 12:25 AM
Hello Peter,
until you have added router2, router1 was speaking eBGP with the upstream providers and no iBGP.
I would like to check the following show commands
on router1
show ip bgp summary
show ip bgp A.B.C.D
where A.B.C.D is a prefix learned from an upstream provider
Two possible reasons for what you see are:
a) eBGP neighbors are configured under a VRF so they are not in the same IP routing table, but in this case the two upstream neighbors are only shown in the output of
show ip bgp vpnv4 all sum
and not in show show ip bgp sum
b) the route-maps applied inbound on received BGP advertisements set the well-known BGP community no-advertise, this was acceptable until router1 was the only one speaking BGP, it is not useful now that there is another iBGP speaker, the well known BGP community no-export should be used instead of no-advertise.
Edit:
no synchronization is the default setting in modern IOS images, it shouldn't be an issue, it depends on IOS version on router1 and what is set on router1. You may need to add no sync on router1 to see the routes propagated.
Hope to help
Giuseppe
07-10-2012 12:46 AM
Hi Giuseppe,
sh ip bgp summ router1
------------------------------------
BGP router identifier y.y.y.y, local AS number 123456
BGP table version is 104368921, main routing table version 104368921
412270 network entries using 48235590 bytes of memory
2463039 path entries using 128078028 bytes of memory
281109/69350 BGP path/bestpath attribute entries using 34857516 bytes of memory
124867 BGP AS-PATH entries using 3389824 bytes of memory
3146 BGP community entries using 189498 bytes of memory
14 BGP route-map cache entries using 448 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
BGP using 214750904 total bytes of memory
1231517 received paths for inbound soft reconfiguration
BGP activity 5536360/5114639 prefixes, 47916534/45444052 paths, scan interval 60 secs
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
YYYY::YYYY:YY:Y:YYYY:1
4 (UPSTR1) 8867035 352638 0 0 0 34w6d (NoNeg)
YYYY:YYYY:YYYY:YYYY::1
4 123456 4547 41130 0 0 0 17:12:55 Active
x.x.x.8 4 123456 23567 22307 104368921 0 0 00:07:35 0
z.z.z.z 4 (UPSTR1) 48196906 904866 104368847 0 0 48w5d 407705
s.s.s.s 4 (UPSTR1) 0 0 0 0 0 never Active
p.p.p.p 4 (UPSTR1) 0 0 0 0 0 never Active
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
c.c.c.c 4 (UPSTR2) 35321014 562191 104368847 0 0 39w5d 411905
h.h.h.h 4 (UPSTR2) 34951653 562190 104368847 0 0 39w5d 411907
i.i.i.i 4 (INACTIVECUST) 0 657302 0 0 0 never Active
And here the path for a learnt route:
---------------------------------------------------
#sh ip bgp d.d.d.0
BGP routing table entry for d.d.d.0/24, version 14645476
Paths: (2 available, best #1, table Default-IP-Routing-Table)
Not advertised to any peer
(UPSTR1) 8469
x.x.x.137 from x.x.x.137 (x.x.x.239)
Origin IGP, localpref 200, valid, external, best
(UPSTR1) 8469, (received-only)
x.x.x.137 from x.x.x.137 (x.x.x.239)
Origin IGP, localpref 100, valid, external
07-10-2012 12:56 AM
Hello Peter,
on router1 do
router bgp 123456
no sync
let's see if this changes the behaviour, the upstream providers are defined in global routing table, I don't see BGP communities associated to the show ip bgp d.d.d.0 (unless output is truncated)
Edit:
I see in your original post that no sync is already in place on router1 have you tried to clear the iBGP session to router2? It is really strange we are running out of possible reasons for this behaviour.
Hope to help
Giuseppe
07-10-2012 01:05 AM
Hi Giuseppe,
on router1 "no sync" has always been in the config and communities are not defined (although I see a neighbour send community statement for UPSTR2)
I found another statement on router1:
Router bgp 20810
...
distribute-list prefix My-Networks out
...
no auto-summary
07-10-2012 01:12 AM
Hello Peter,
this makes the difference!
>> distribute-list prefix My-Networks out
you should apply the filter at neighbor level to UPSTR1 and UPSTR2 neighbor(s) the filter applied at the BGP process level applies also to the iBGP session to router2 and this explains why no other routes are sent to router2
So you should apply the filter on neighbor command and then you have to remove the above command (at process level)
After all this you should see only the best routes propagated to router2 = you will not see double paths just one path for each prefix depending on router1 choicies
Hope to help
Giuseppe
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