This little repo contains some helper scripts for configuring the BIRD Internet Routing Daemon on your Equinix Metal devices. Since BIRD and BIRD2 have different config file formats, you'll need to specify which one you need. Written as a companion for the guides Configuring BGP with BIRD 1.6 on an Equinix Metal Server and Configuring BGP with BIRD 2 on Equinix Metal
You will need either bird
or bird2
installed on your system before running the script with the corresponding name.
jq
is required for parsing metadata from the metadata service.
These scripts do not install either, but do check and abort if not present to avoid half-configuring systems and causing problems. If using these in automation pipelines, it's recommended to ensure package presence through some other means like cloud-init
.
Either script is intended to automate the configuration of your system to advertise an Elastic IP using BGP. To execute, simply run the script passing the Elastic IP through the input. Ex:
./bird2-setup.sh 192.0.2.1
This would configure your server to advertise the address 192.0.2.1
to it's neighbors on Equinix Metal using BIRD 2.
These can be used in tandem with platforms like Terraform to automatically setup systems and advertise a global IP address for use in anycast applications. An example of this type of setup can be seen in the anycast-demo repository.