ExaBGP and BIRD clue in the house?

Randy amps at djlab.com
Thu Jul 2 17:18:32 UTC 2015


To demonstrate -- order is everything -- this works:

group gixlg {
     hold-time 180;
     local-as 12345;
     router-id 10.0.0.2;
     family {
        ipv4 unicast;
     }
     static {
        route 1.2.3.4/32 next-hop 4.3.2.1;
     }
     neighbor 10.0.0.1 {
        router-id 10.0.0.2;
        local-address 10.0.0.2;
        peer-as 12345;
        description "Bird-local";
        group-updates;
     }
}

This doesn't work:

group gixlg {
     hold-time 180;
     local-as 12345;
     router-id 10.0.0.2;
     family {
        ipv4 unicast;
     }
     neighbor 10.0.0.1 {
        router-id 10.0.0.2;
        local-address 10.0.0.2;
        peer-as 12345;
        description "Bird-local";
        group-updates;
     }
     static {
        route 1.2.3.4/32 next-hop 4.3.2.1;
     }
}


On 07/02/2015 9:44 am, Owen DeLong wrote:
> Exactly… It’s not an issue, it’s expected behavior.
> 
> If you move the static up within the neighbor definition, it becomes
> an Anchor Route and Exa knows you want it announced.
> 
> If you leave it in the static routes section, then you either need a
> redistribution policy from static to bgp (not recommended) or you need
> some other sort of policy that tells exa that you want to announce the
> route.
> 
> Owen
> 
>> On Jul 2, 2015, at 09:40 , Randy <amps at djlab.com> wrote:
>> 
>> FYI, if the static is moved up within the neighbor definition, it 
>> works.   So this is an Exa related issue/feature and not a problem 
>> with BIRD.
>> 
>> I'll move the noise to the Exa list if needed.
>> 
>> ~Randy
>> 
>> On 07/02/2015 9:13 am, Randy wrote:
>>> Really, it's got to be something dead stupid.   Hoping to borrow 5
>>> minutes of someone's time.   Replies on or off list are fine.
>>> I've reduced it to a simple config:
>>> BIRD:
>>> protocol bgp {
>>> description "ExaBGP-local";
>>> local as 12345;
>>> allow local as 1;
>>> neighbor 10.0.0.2 as 12345;
>>> next hop keep;
>>> start delay time 5;
>>> import all;
>>> export all;
>>> }
>>> EXABGP:
>>> group gixlg {
>>>    hold-time 180;
>>>    local-as 12345;
>>>    router-id 10.0.0.2;
>>>    family {
>>>       ipv4 unicast;
>>>    }
>>>    neighbor 10.0.0.1 {
>>>       router-id 10.0.0.2;
>>>       local-address 10.0.0.2;
>>>       peer-as 12345;
>>>       description "Bird-local";
>>>       group-updates;
>>>    }
>>>    static {
>>>       route 1.2.3.4/32 next-hop 4.3.2.1;
>>>    }
>>> }
>>> Everything comes up.   But bird has no routes.
>>> bird> sh protocols
>>> name     proto    table    state  since       info
>>> bgp1     BGP      master   up     12:06:00    Established
>>> bird> show route all
>>> bird>



More information about the NANOG mailing list