RustyBGP is a BGP implementation written in Rust, designed for high performance on multicore systems. It supports most of GoBGP's features with the same gRPC API and configuration file format, so you can replace gobgpd with rustybgpd without changing your tooling or configuration.
Download the latest nightly binary (x86_64 / aarch64):
curl -LO https://github.com/osrg/rustybgp/releases/download/nightly/rustybgp-nightly-linux-x86_64.tar.gz
tar xf rustybgp-nightly-linux-x86_64.tar.gz
Start the daemon with your GoBGP configuration file:
sudo ./rustybgpd -f gobgpd.conf
Hello, RustyBGP (32 cpus)!
You can manage it with the GoBGP CLI:
$ gobgp neighbor
Peer AS Up/Down State |#Received Accepted
198.51.100.2 65002 never Idle | 0 0
RustyBGP is Linux-only and integrates directly with the Linux kernel for FIB management instead of Zebra/FRR. The kernel integration supports:
The following GoBGP features are not supported:
Contributions are welcome. See CONTRIBUTING.md for how to build, test, and submit patches.