8 organizations share topics with ExaBGP, and 8 open source projects are closely related.
What is ExaBGP?
ExaBGP is an open-source Border Gateway Protocol (BGP) (network routing) engine and toolkit that exposes BGP messages and state to external applications through a programmable interface.
- Programmable BGP speaker and toolkit for routing control and automation (network routing / network automation).
- Supports IPv4 and IPv6 unicast and multicast routes, flowspec, and other BGP extensions as advertised in project materials (network routing).
- Designed to integrate BGP with external processes using JSON, text, or other encodings over standard input/output (systems integration / network automation).
- Used for route injection, Traffic Engineering (TE), and policy control in software-driven network environments (network routing / TE).
- Implements BGP peering with routers and route servers for testing, monitoring, and custom control-plane workflows (network routing / observability).
Show more
More About ExaBGP
ExaBGP is a user-space BGP (network routing) implementation that exposes BGP capabilities through a programmable interface, allowing external applications to control and react to routing events. It operates as a BGP speaker that can peer with routers, route reflectors, and route servers, while delegating most decision logic to external processes. This approach enables engineers to build custom routing control-plane behavior without modifying router firmware or relying on proprietary SDKs.
The project focuses on providing a flexible engine for route injection, policy control, and TE (network routing / TE). ExaBGP can originate, modify, and withdraw BGP routes based on instructions from external programs, including scripts and services written in common languages such as Python or shell. It parses BGP messages and exports them in machine-readable formats, typically over standard input and output channels, which external tools can consume to implement business logic or integrate with other systems.
ExaBGP supports multiple address families and BGP extensions as described in its official materials, including IPv4 and IPv6 unicast and multicast (network routing), and various attribute types used for routing policy and traffic steering. It also supports BGP FlowSpec (network security / TE) to advertise traffic filtering and rate-limiting rules through BGP. Through configuration files and command-line options, users can define sessions, neighbors, route announcements, and the behavior of the process interface that connects ExaBGP to external applications.
In enterprise environments, ExaBGP is used to integrate routing with automation systems (network automation), monitoring platforms (observability), and security controls. Typical uses include programmatic injection of routes for traffic redirection, blackholing, or service discovery; dynamic updates based on metrics from load balancers or health checks; and generation or validation of routing test scenarios in labs and Continuous Integration (CI) pipelines. Because ExaBGP acts as a standard BGP peer, it interoperates with common network devices and software that speak BGP.
From an architectural standpoint, ExaBGP runs as a standalone daemon that establishes BGP sessions and exchanges updates, while delegating route decision or event handling to external processes via its process Application Programming Interface (API) (systems integration). This design makes it suitable as a control-plane component in Software Defined Networking (SDN) workflows or in environments where routing decisions must align closely with application state, security triggers, or automation policies. Within a technical directory, ExaBGP fits into categories such as BGP implementation, programmable routing engine, network automation tool, and control-plane integration gateway.
Our description of ExaBGP. Updated February 2026.