FRR Minimal RTR Client Config
中文文档: README.zh.md
This folder provides a minimal FRR setup for black-box interop testing against this repository's RTR server defaults.
Server defaults in this repo:
- TCP:
0.0.0.0:323 - TLS:
0.0.0.0:324
Reference:
src/main.rs
Files
daemons.example: sample/etc/frr/daemonsfrr.conf.example: static sample/etc/frr/frr.conffrr.conf.template: Docker template used to generate/etc/frr/frr.confentrypoint.sh: rendersfrr.conf.templatefrom environment variables before starting FRR.env: default Docker environment values
How to apply on an FRR host
- Copy
daemons.exampleto/etc/frr/daemons. - Copy
frr.conf.exampleto/etc/frr/frr.conf. - Restart FRR:
sudo systemctl restart frr
Verify
vtysh -c "show rpki configuration"
vtysh -c "show rpki cache-server"
vtysh -c "show rpki cache-connection"
vtysh -c "show rpki prefix-table"
If show rpki cache-connection is connected and show rpki prefix-table
contains VRPs, the RTR client path is working.
Docker quick start
From repository root:
docker compose --env-file deploy/frr/.env -f deploy/frr/docker-compose.yml up -d
docker exec -it frr-rpki-client vtysh -c "show rpki cache-connection"
docker exec -it frr-rpki-client vtysh -c "show rpki prefix-table"
The Docker example defaults to 127.0.0.1:323. Override the RTR server
endpoint with environment variables:
RPKI_FRR_RPKI_HOST=10.0.0.12 \
RPKI_FRR_RPKI_PORT=323 \
docker compose --env-file deploy/frr/.env -f deploy/frr/docker-compose.yml up -d
Stop:
docker compose --env-file deploy/frr/.env -f deploy/frr/docker-compose.yml down
Notes
- This setup targets RTR over TCP (
rpki cache tcp). - Docker mode renders
frr.conf.templateinto/etc/frr/frr.confat startup. - Keep protocol-level conformance checks in Rust tests and
src/bin/rtr_debug_client. network_mode: hostis kept for the minimal FRR container example, but the RTR server address is controlled byRPKI_FRR_RPKI_HOSTandRPKI_FRR_RPKI_PORT.