Dear Kevin, On Tue, Jun 04, 2019 at 03:00:53PM +0000, Kevin B wrote: > I have 2 upstream transit providers and 1 downstream customer we provide > transit to - http://paste.debian.net/1086030/ (full Bird configuration with > explanation) > > There is a problem: Bird is exporting all the imported prefixes from > my upstreams back to them. For example 10.40.40.0/24 is being exported > from us even when AS20's customer doesn't announce it, because it is > announced somewhere else in the full table and we just export it back > from the full view. > > Here is `birdc show protocols all` output - http://paste.debian.net/1086033/ > > I would like to prevent exporting the full view tables imported from > my upstreams back to them, can you help me to understand what is wrong > with the configuration and why does it happen?
You'll have to mark the routes you receive on 'import', and act on those markers on 'export'. I've spoken a bit about how to make robust routing policies, I hope this is of use to you: https://ripe77.ripe.net/archive/video/Job_Snijders-B._BGP_Policy_Update-20181017-140440.mp4 https://ripe77.ripe.net/presentations/59-RIPE77_Snijders_Routing_Policy_Architecture.pdf Specifically in your example, I've added the use of BGP Large Communities to help arrange what announcements go where, please compare this untested example with your own deployment: http://paste.debian.net/1086041/ Kind regards, Job