Problems configuring multihop BGP setup

Rainer Kulow rainer.kulow at online.de
Thu Jul 22 15:43:37 CEST 2021


Hello bird community, 

I am trying to establish complete connectivity using BGP in the following
setup containing three AS with direct links:

     172.16.18.1/30         172.16.18.2/30     172.16.96.1/30
172.16.96.2/30
+--------------+                                    +--------------+
+--------------+
| AS 60007 +---------------------------+ AS 60002
+---------------------------+ AS 60005 |
+--------------+                                    +--------------+
+--------------+
 10.70.0.1/16                                   10.20.0.1/16
10.50.0.1/16

The goal is that every address from one of the /16 networks can reach all
addresses in the other /16 networks.

My current setup (here for the middle AS, the others are configured
analogously):
AS 60002 has three network cards, one with 172.16.18.2, one with 172.16.96.1
and one 10.20.0.1.

log syslog all;
router id 10.20.0.1;

# interface scan every 10s
protocol device {
        scan time 10;
}

# no automaic generated direct routes to all network interfaces
protocol direct {
        disabled;
}

# synchronize BIRD routing tables with the OS kernel
protocol kernel {
        ipv4 {
              import all;
              export all;
        };
        merge paths on;
}

# static IPv4 routes
protocol static static1{
      ipv4;
      route 10.20.0.0/16 via 10.20.0.1;
}

# BGP peers
template bgp bgp_peer{
      local as 60002;
      multihop;

      ipv4 {
              import filter {
                  if proto = "static1" then reject;
                  accept;
              };
              export all;
              next hop self;
      };

}

protocol bgp a_b from bgp_peer {
      description "BGP a-b";
      neighbor 172.16.18.1 as 60007;
}

protocol bgp b_c from bgp_peer {
      description "BGP b-c";
      neighbor 172.16.96.2 as 60005;
}


If I delete "multihop" and "next hop self" from the template, I get all
routes, but can only ever ping the closest AS. 
With "multihop" I also get all routes, but the routes to other AS are marked
as unreachable.
I would be glad if someone could tell me how to realize this multihop
scenario. It would also be interesting that the solution scales, so that I
can hang, for example, more AS in the chain above.

Thanks in advance, 
Best regards,
Rainer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 6007 bytes
Desc: not available
URL: <http://trubka.network.cz/pipermail/bird-users/attachments/20210722/a46eb5fa/attachment.p7s>


More information about the Bird-users mailing list