Le 06/04/2018 à 00:23, Jonathan Stewart a écrit :
I'm not sure the BIRD logic, but it sounds like you're saying:
- send static *and* - send all provider A routes *and* - send all provider B routes
I understand: send my static and send all provider A *best* routes and send all provider B *best* routes. For me, the BGP path selection should take place before the redistribution to my peers (iBGP and downstreams). Maybe I'm wrong?
These would total more than a million routes.
If you were right, why does it work when I set "export limit 770000 action disable" but not when I set "export limit 700000" or "export limit 750000"? "It works" means that the BGP session has not been disabled for a week.
(alternately, you're getting different routes from each of your providers, so if you add them together and remove the duplicates, you have more than 700k routes. I have more than 700k routes in my default-free zone)
It seems not: # birdc sh route protocol bgp_upstream1 | grep -Po "[0-9./]+(?=[ ]+via)" > bgp_upstream1 # birdc sh route protocol bgp_upstream2 | grep -Po "[0-9./]+(?=[ ]+via)" > bgp_upstream2 # birdc sh route export bgp_downstream | wc -l 683219 # wc -l bgp_upstream1 bgp_upstream2 679509 bgp_upstream1 682975 bgp_upstream2 1362484 total # sort -n bgp_upstream1 bgp_upstream2 | uniq | wc -l 683218 ^ gap is the static route. As I have said in my first mail, I have a gap of approximately 3500-4000 different routes between my two upstreams (add routes and remove duplicates routes), less than my filter: # sort -n bgp_upstream1 bgp_upstream2 | uniq -c | grep -E "^[ ]+1 " | wc -l 3952 How is it possible that the sum of routes received from my upstreams minus duplicates ones exceeds 750k when I use "receive limit 700000" on each upstream? This would mean that an upstream sometimes removes correct routes before inserting rogue or disaggregated ones. If not, the "receive limit" on upstreams would be effective. I'm stuck on this point.