The documentation moves from READMEs into a site in docs/: getting started, a user guide, operations, a reference, and development pages, written in the style of network vendors' documentation (docs/STYLE.md). bin/bgp/README.md and docs/RFCs.md are folded into it. - A theme of its own in the International Typographic Style, in blues, with self-hosted Inter and JetBrains Mono, search over Zola's index, dark mode, and no resources loaded from other hosts. - Example configurations in docs/examples/, shown on the pages and checked with `bgp --check` in CI. - A test that fails when a field of config.proto is missing from the configuration reference. - A CI job that builds the site; Zola fails on broken links and anchors. - A hardened systemd unit, tried under systemd with kernel routes on. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
39 lines
1.0 KiB
Protocol Buffer Text Format
39 lines
1.0 KiB
Protocol Buffer Text Format
# Edge network with one transit provider and one session for each address
|
|
# family. Route origin validation, ASPA verification, and kernel route
|
|
# installation are enabled.
|
|
router_id: "198.51.100.1"
|
|
local_asn: 64500
|
|
|
|
peers {
|
|
name: "transit-a-v4"
|
|
endpoint { address: "203.0.113.0" }
|
|
local_address: "203.0.113.1"
|
|
remote_asn: 64496
|
|
role: PROVIDER
|
|
address_families: IPV4_UNICAST
|
|
# Above the size of the IPv4 Internet routing table.
|
|
import { max_prefixes: 1200000 }
|
|
}
|
|
|
|
peers {
|
|
name: "transit-a-v6"
|
|
endpoint { address: "2001:db8:ffff:1::1" }
|
|
local_address: "2001:db8:ffff:1::2"
|
|
remote_asn: 64496
|
|
role: PROVIDER
|
|
address_families: IPV6_UNICAST
|
|
import { max_prefixes: 300000 }
|
|
}
|
|
|
|
originate { prefix: "198.51.100.0/24" }
|
|
originate { prefix: "2001:db8:100::/40" }
|
|
|
|
# RPKI cache on the local host, for example Routinator.
|
|
rpki { caches { address: "::1" port: 3323 } }
|
|
|
|
# Requires Linux and CAP_NET_ADMIN.
|
|
kernel {}
|
|
|
|
# Not authenticated. Bind to a loopback address.
|
|
http_endpoint { address: "127.0.0.1" port: 8080 }
|