network BGP - ghdrako/doc_snipets GitHub Wiki

Border Gateway Protocol (BGP) is a routing protocol that’s used to distribute routing information within a single autonomous system (AS) or between multiple autonomous systems on the internet. BGP is used to build routing tables in routers in the internet backbone, as well as in enterprise networks. BGP routers exchange routing information with their neighbors, which can be other BGP routers in the same AS or a different AS. When a BGP router receives routing information from its neighbors, it uses a set of rules and policies to decide which routes to add to its routing table and advertise to its neighbors. This allows BGP to support multiple paths to a destination, and to choose the best path based on various factors such as distance, cost, or preference. BGP is considered a path vector protocol because it exchanges information about the complete path to a destination, rather than just the next hop. This allows BGP to support advanced features such as routing policy and traffic engineering. There are several ways to use BGP on a Linux machine, depending on your specific use case and network environment.

BIRD is a routing daemon for Linux that supports BGP and other routing protocols. You can configure BIRD so that it acts as a BGP speaker and exchange routing information with other BGP routers. BIRD can be installed on most Linux distributions and can be configured using a simple configuration file.

Quagga is another open source routing software suite for Linux that supports BGP, OSPF, and other routing protocols. You can configure Quagga to act as a BGP speaker and exchange routing information with other BGP routers. Quagga can be installed on most Linux distributions and can be configured using a command-line interface or a configuration file. Free Range Routing (FRR) is a routing software suite for Linux that supports BGP, OSPF, and other routing protocols; it’s a fork of Quagga.

You can read more about BGP and using BIRD in the following Linux Journal article: https:// www.linuxjournal.com/content/linux-advanced-routing- tutorial.