Skip to content

Container LAB configuration for a SRv6 lab with FRR routers

Notifications You must be signed in to change notification settings

rodonile/clab-srv6-frr

Repository files navigation

SRv6 Lab Topology with FRR

Lab Topology

Host System Requirements:

  • tested on Ubuntu Noble, kernel 6.8.0-64:
leo@containerlab:~$ uname -a
Linux containerlab 6.8.0-64-generic #67-Ubuntu SMP PREEMPT_DYNAMIC Sun Jun 15 20:23:31 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
leo@containerlab:~$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=24.04
DISTRIB_CODENAME=noble
DISTRIB_DESCRIPTION="Ubuntu 24.04.2 LTS"
  • add following configs for sysctl (needed for SRv6 working properly)
leo@containerlab:~ cat /etc/sysctl.d/99-custom.conf
# Run sudo sysctl --system to apply these changes
#
net.ipv4.conf.all.forwarding=1
net.ipv6.conf.all.forwarding=1
net.ipv6.seg6_flowlabel=1
net.ipv6.conf.all.seg6_enabled=1
net.vrf.strict_mode=1

Validation

leo@containerlab:~/labs/clab-srv6-frr$ ./validation-vpns.sh

PC-to-PC Connectivity Validation
================================

Client 1:
✅ PC11 (192.168.11.2) <-> PC12 (192.168.12.2)
✅ PC11 (c1:1:feed::2) <-> PC12 (c1:2:feed::2)
✅ PC11 (192.168.11.2) <-> PC13 (192.168.13.2)
✅ PC11 (c1:1:feed::2) <-> PC13 (c1:3:feed::2)
✅ PC12 (192.168.12.2) <-> PC13 (192.168.13.2)
✅ PC12 (c1:2:feed::2) <-> PC13 (c1:3:feed::2)

Client 2:
✅ PC21 (192.168.21.2) <-> PC22 (192.168.22.2)
✅ PC21 (c2:1:feed::2) <-> PC22 (c2:2:feed::2)
✅ PC21 (192.168.21.2) <-> PC23 (192.168.23.2)
✅ PC21 (c2:1:feed::2) <-> PC23 (c2:3:feed::2)
✅ PC22 (192.168.22.2) <-> PC23 (192.168.23.2)
✅ PC22 (c2:2:feed::2) <-> PC23 (c2:3:feed::2)
================================

References:

I took inspiration from:

About

Container LAB configuration for a SRv6 lab with FRR routers

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages