Subnet router BGP advertisement

When using high availability subnet routers in network environments using Reverse Path Filtering (RPF), it is necessary to know which subnet router is active and to be used for return traffic. tailscaled can work with a local BIRD daemon to make the active subnet router inject a route to 100.64.0.0/10.

There is a sample BIRD config file and tailscale stanza available.

To configure tailscaled to communicate with a local BIRD process to manage route injection:

  1. Make sure to copy both config files from https://github.com/tailscale/tailscale/tree/main/docs/bird
  2. Update the following BGP settings in sample_bird.conf
    1. AS numbers
    2. Neighbor/Router address
  3. Launch BIRD: sudo bird -c /path/to/sample_bird.conf
  4. Launch tailscaled with the –bird-socket argument.

Adding arguments to tailscaled can be accomplished by creating a /etc/default/tailscaled file and adding a FLAGS variable:

FLAGS="--bird-socket=/var/run/bird.ctl"

BIRD supports Bidirectional Forwarding Detection, and has more options for BGP than the ones defined in the sample file.