metro-pe — Metro / roof PE¶
A metro-hub or rooftop provider-edge router. Worked example: cr-fenwick-1.
| Model | Metro-hub CCR2004, or rooftop RB5009 |
| NetBox role | metro-pe (iBGP-client and RR list derived from role) |
| Ansible playbook | metro-pe.yml (adds transport + vpls spoke) |
Function¶
- OSPF / LDP transport member.
- iBGP client of both colo RRs (derived — two loopback-sourced sessions,
ip+l2vpn). - eBGP hand-off + guest VPLS spoke per venue.
Interfaces (cr-fenwick-1)¶
| Port | Role | Address / peer |
|---|---|---|
loopback |
router-id | 10.255.255.21/32 (metro band .20–.49) |
sfp-sfpplus1 |
core-link (10G fibre) | 10.254.20.1/31 → colo CCR, OSPF cost 10 |
ether7 |
core-link (60 GHz) | 10.254.20.3/31 → w60-fenwick-holmes, ospf_cost=500, bfd_enabled=true (set manually — the port is Ethernet) |
radio-mgmt-hol |
radio-mgmt (virtual, parent ether7) |
10.254.250.1/29, untagged VLAN 99, dish-mgmt gateway, advertised /29 |
sfp-sfpplus4 |
venue-handoff | 10.254.20.5/31 → rtr-cel-1 (venue eBGP + guest VLAN 20 into VPLS spoke) |
BGP¶
as=65500 router-id=<loopback>; iBGPrr-clientto both RR loopbacks. The connections setnexthop-choice=force-self, so eBGP-learned prefixes (the venue/16, edge prefixes) are re-advertised with this PE's own loopback as next-hop (OSPF-resolvable) and install active on the RRs. These iBGP sessions are loopback-to-loopback (multihop) and carry no BFD — liveness is link BFD + OSPF + BGP hold timers (see iBGP & route reflectors).- Venue eBGP:
default-originate=always, filterfrom-venue-cel(accepts the exact/16, tags65500:100, backup path local-pref 50). BFD is per-uplink: the fibre primary handoff runs BFD on; the 60 GHz dish backup runs BFD off with tightened BGP timers (the dish port stays up through RF fades, so BFD would false-flap).
VPLS spoke¶
br-guest-cel + vpls-guest-cel (site-id = venue_id, RT 65500:2000+venue_id).
A dual-homed venue gets a second venue-handoff on the backup PE with
backup_path=true.