Route BGP with BIRD

Demo

Introduction

BGP isn't new, but having it be this accessible is! Leveraging dynamic hosting for a cluster of servers at a particular data center offers your workloads a safe, effective, and quick failover channel. In this guide, we'll walk you through configuring Local BGP using BIRD so that you can broadcast a specific local IP address to a host of your choice.

Getting Started

If you haven't already requested that BGP be added to your account you'll need to get that sorted before continuing with this guide - see more info about getting started here.

For this guide, we're deploying a Tiny But Mighty server with Ubuntu 16, and BIRD to broadcast a local IP with BGP.

Step 1 - Choose an IP to Broadcast

Navigate over to IPs & Networks in your BGP enabled project and click on Manage Block for the IPv4 block in the data center location that corresponds with your server deployment. Choose an available IP that will act as your broadcast IP. In this guide, we'll be using 10.99.12.138.

NOTE:

You'll probably want to automate a setup like this using user data. That way you can provision your servers and configure their network without ever having to SSH into the server! To do that you would hit the metadata service and parse the response using something like jq. For example:

As you can see, the BGP state is Established and we are exporting 1 route.

If you check the server detail page, you will also see the learned route.

To test, you can ping the IP address in a command line - ping 10.99.12.138. Remember this is Local BGP so you'll have to be connected to the private network for the data center you're running Local BGP in. You can do that by SSHing into another server in that data center or by connected to Doorman, Packet's private VPN.