diff --git a/.claude/launch.json b/.claude/launch.json deleted file mode 100644 index f54b504..0000000 --- a/.claude/launch.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "version": "0.0.1", - "configurations": [ - { - "name": "slides", - "runtimeExecutable": "python3", - "runtimeArgs": ["slides/serve.py", "8765"], - "port": 8765 - } - ] -} diff --git a/.gitignore b/.gitignore index 2c669e5..2c62971 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /target __pycache__/ .DS_Store +.claude/ diff --git a/Dockerfile b/Dockerfile index 55e685d..73047d3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,5 @@ -# Builds the ferrix_bgp daemon for the lab. See docs/lab/README.md. +# Builds the daemon into a small image. Mount a configuration file at +# /etc/ferrix/server.textpb, or pass another path as the first argument. FROM rust:1.92-bookworm AS build WORKDIR /src COPY . . diff --git a/README.md b/README.md index 894afd7..af9d913 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ # BGP -The `bgp` crate is an implementation of the Border Gateway Protocol, which is used to exchange routing and control plane information between Autonomous Systms. +The `bgp` crate is an implementation of the Border Gateway Protocol, which is used to exchange routing and control plane information between Autonomous Systems. -The aim of this project is to provide a modern, high performance, secure and programatic and customizable software package that can be useful to network operators, researchers, and people interested in Internet. +The aim of this project is to provide a modern, high performance, secure, programmatic and customizable software package that can be useful to network operators, researchers, and people interested in Internet. ## Current status. @@ -22,8 +22,8 @@ We aim for the 1.0 release to be functional and stable to operate peering sessio - ☐ Notification message - ✅ Implement scaffolding required to start and configure a server - ✅ Implement connection logic to establish sessions with peers (passive and active) -- ✅ Locally originated routes with communities, announced to all peers -- ✅ HTTP API, live status page and Prometheus metrics +- ✅ Routes originated from the configuration, with communities, announced to all peers +- ✅ Read-only HTTP API, status page and Prometheus metrics - ☐ Implement an efficient data structure for storing prefixes (e.g. Poptrie) - ☐ Filtering for peer RIB in / out -- ☐ Main / auxillary RIBs for exchanging routes between peers +- ☐ Main / auxiliary RIBs for exchanging routes between peers