freeRtr SR ISIS EVPN iBGP-IX-peering-fabric

The topic sound really great, and it really is for me too. But at the bottom it is about building a switch using 6 routers. At the beginning of February 2024 I have been visiting the Cisco Live 2024 in Amsterdam. The sessions visited were only SR - Segement Routing focused. The Service Provider sessions are all good and technical to the bottom, mostly protocol and hardware focused, more protocol. Long term solution orientation. Visited one session presented by Emerson Moura - BRKSP-2275 - Rethink your Edge Routing Architecture. Emerson talked about new alternative networking designs in operation that are possible using SR or SRv6. If easy enough design is used vendor agnostic solutions based on SR or SRv6, ar possible for service providers. It is possible to replace highly redundant, chassis-based routers to, protocol based, cheaper, one HU pizza-box routers,running SR, you need at least 5 or 6 of them, but all are independent from the control plane of view. Nowadays LACP using separate control plane is possible, i did not know of that. SRvR using ELAN - RFC draft. All protocol based using SRv6 on IOS-XR and works. It is a technical use case. Separating functions into distinct areas and moving away from chassis design to protocol based design to bunch of protocol rich and capable 1 height unit SR routers. For running many SR routers and operating them a smart design necessary.

This is a netlab in GNS3 made using currently available and implemented technologies and protocols using the free freeRtr router. This will be a attempt to take a already very well written and full of interesting SR MPLS network designs article following document here., written by Phil Bedard.

The solution is made using freeRtr. To be able to configure and verify protocols used following freeRtr examples were based on following test scenarios:

📘 Note
The freeRtr examples linked above might change and become unavailable during time, new features and tests are added constantly. In such case select the protocol example shown here in a handy overview.

Configuring a EVPN BGP IX peering, based on the xrdoc.io blog entry using freeRtr free router implementation. This is a 1-st approach creating a networking solution without having deep insight into freeRtr or experience at all. The IPv6 part in the freeRtr configuration is without any functionality. The pmsitun BGP template configuration is nice to have, you need to decide if your network has a use-case for it. Read the RFC reference put in the section. The reason having this unnecessary part here is, configuration is taken primarily from the both linked examples above. Leave that parts out to make your netlab more easy to configure.

The protocols setting used in this freeRtr IX-peering solution:

IPv4 and IPv6 (IP dual-stack):

  • VRF v1
  • IS-IS
  • SR
    • label index 1 - 20
    • v4 label base - 16000
    • v6 label base - 20000
  • BFD
    • 100ms 100ms 3

IPv4:

  • BGP EVPN
    • bridge1
    • bvi1
    • vxlan1
  • internal BGP - AS65000

No BGP route reflector used in example. Internal BGP full-mesh network consisting of:

  • PE11
  • PE12
  • PE13
  • PE14

Network topology

The freeRtr appliances have 4 ports allocated eth1 - eth4. A fabric network design is a specific

  • P1, P2
  • PE1, PE2, PE3, PE4

Network topology with IP addressing:

      lo                  lo                   lo
  192.0.2.11           192.0.2.1            192.0.2.13
  +-------+            +-------+            +-------+
  +4     1+------------+1     3+------------+1     4+
  | PE11  |            |  P1   |            |  PE13 |
  |      2+-+  +-------+2     4+-+  +-------+2      |
  +-------+ |  |       +-------+ |  |       +-------+
            |  |                 |  |
            +--(-----+           +--(-----+
               |     |              |     |
  +-------+    |     | +-------+    |     | +-------+
  |      1+----+     +-+1     3+----+     +-+1      |
  | PE12  |            |  P2   |            |  PE14 |
  +4     2+------------+2     4+------------+2     4+
  +-------+            +-------+            +-------+
     lo                   lo                   lo
  192.0.2.12           192.0.2.2            192.0.2.14
  • +4 - physical ethernet port number

click for more