routing-lab/lab001-openbgpd-ebgp/README.md

35 lines
1.4 KiB
Markdown

# Lab 1: eBGP Routing With OpenBGPD
## Network Architecture
- There are 3 AS: AS23, AS42 and AS1337
- Each pair of AS' has its own direct interconnect in a dedicated docker network.
- The IP range used in each interconnect is `fd00:d0ca:<ASN1><ASN2>:1::/64`, where AS1337 uses `13` instead.
## eBGP
- Each AS runs an OpenBGPD router for eBGP peering.
- An [alice-lg](https://github.com/alice-lg/alice-lg) looking class connecting to all 3 BGP routers is started on [http://localhost:7340](http://localhost:7340).
- Each AS announces the `fd00:d0ca:<ASN>:1::/64` prefix.
Example: traceroute from AS42 eBGP router to AS23 eBGP router: When the link is taken offline, the traffic is routed via AS1337 instead:
```shell-session
$ docker exec -it lab001-openbgpd-ebgp-as42-1 /bin/sh
/ # traceroute -n fd00:d0ca:23:1::10
traceroute to fd00:d0ca:23:1::10 (fd00:d0ca:23:1::10), 30 hops max, 72 byte packets
1 fd00:d0ca:23:1::10 0.019 ms 0.021 ms 0.016 ms
/ # bgpctl neigh as23_1 down
request processed
/ # traceroute -n fd00:d0ca:23:1::10
traceroute to fd00:d0ca:23:1::10 (fd00:d0ca:23:1::10), 30 hops max, 72 byte packets
1 fd00:d0ca:4213:1::1337 0.019 ms 0.019 ms 0.017 ms
2 fd00:d0ca:23:1::10 0.015 ms 0.019 ms 0.017 ms
/ # bgpctl neigh as23_1 up
request processed
/ # traceroute -n fd00:d0ca:23:1::10
traceroute to fd00:d0ca:23:1::10 (fd00:d0ca:23:1::10), 30 hops max, 72 byte packets
1 fd00:d0ca:23:1::10 0.019 ms 0.021 ms 0.016 ms
```