Hi - I have a topology like this, using BIRD 1.6.7:

   -------------------+          +----------------------
    AS 65001          |          |         AS 65002
                      |          |
          +--------+  |          | +--------+ iBGP
      ----| Router |---------------| Router |------- Router B
      ----| BIRD-A |  |  eBGP    | | BIRD-B |------- Router C
          +--------+  |          | +--------+     .      .
                      |          |                .      .
                      |          |
   -------------------+          +----------------------

I want BIRD-B to reflect routes within its own AS, but also propagate
routes to and from AS 65001.  So for the eBGP peering I have

protocol bgp ra1 {
  description "Connection to BGP peer";
  local as 65002;
  gateway recursive;
  import all;
  export all;
  add paths on;
  connect delay time 2;
  connect retry time 5;
  error wait time 5,30;
  neighbor 172.31.1.2 as 65001;
}

and for the iBGP peerings

template bgp nodes {
  description "Connection to BGP peer";
  local as 65001;
  direct;
  gateway recursive;
  import all;
  export all;
  add paths on;
  graceful restart;
  connect delay time 2;
  connect retry time 5;
  error wait time 5,30;
  #next hop self;
}

protocol bgp node1 from nodes {
  neighbor 172.31.11.3 as 65001;
  rr client;
}

My question is how to get the ideal next-hop-self behaviour, which I
think is

- Do next-hop-self for routes from AS 65001 that are being passed on
  to Router B, C etc.  Otherwise those routes will be unreachable.

- Don't do next-hop-self for reflected routes.  Next-hop-self isn't
  needed here, because the downstream Router B, C etc are already
  directly connected.

Thanks in advance for any advice!

     Neil

Reply via email to