Building out, and a checklist
Growing the network
The patterns in this lesson scale, but a few things change as you add routers.
- Route reflectors. A full iBGP mesh needs n×(n−1)/2 sessions: 3 for three routers, 45 for ten. Past a handful of routers, make the core routers route reflectors (
address-family ipv4-unicast route-reflector-clienton their iBGP neighbors). Edges then peer only with the reflectors, which pass routes between them. Run two reflectors so that losing one doesn't cut anyone off. - More edges. A new edge is a new loopback, OSPF on its internal links, iBGP to the core (or the reflectors), and its external sessions with the same policy as the other edges. Keep the policy identical everywhere so that routes are treated the same whichever edge they arrive at.
- A second upstream. Put it on a different edge from the first. With both upstreams sending a default at local preference 100, core routers choose by IGP distance to each edge's loopback (BGP's "closest exit"). Prefer one with local preference if you want a primary and a backup.
- Bidirectional Forwarding Detection (BFD) on internal links (and on external ones, if your providers support it) for sub-second failure detection.
- Core redundancy. core1 is still a single point of failure for the LAN. A second core router and a first-hop redundancy protocol such as the Virtual Router Redundancy Protocol (VRRP) is the usual next step.
Checklist
| Area | Check |
|---|---|
| Addressing | A loopback /32 per router, /31s for links, all from your own space and written down |
| OSPF | Only internal links and loopbacks; loopbacks passive; links point-to-point; router ID = loopback |
| iBGP | Loopback to loopback, update-source set, full mesh or route reflectors; everyone Established |
| Edges | nexthop-self on iBGP; identical import and export policy on every external session |
| Core | Originates the aggregate (with its blackhole) and customer prefixes into iBGP; no external sessions |
| Proof | show ip bgp on a core router has no inaccessible next hops; external advertised-routes show only the aggregate; traceroutes leave by the expected edge |
| Management | SSH on loopbacks; input firewall allows OSPF, iBGP from loopbacks and eBGP from neighbors |
| Failure test | Disable an internal link: iBGP stays up and traffic reroutes |
Check your understanding
You add a fourth and fifth router with a full iBGP mesh. How many iBGP sessions are there now?
- 5
- 10
- 20
- 4