Linux Namespaces & veth Routing
Every container's network is just namespaces and veth pairs underneath. This lab drops you onto a real Linux host to build that plumbing by hand, connect namespaces, route between subnets and see exactly what Docker and containerlab automate for you.
The problem
Two network namespaces are wired together with a veth pair and both interfaces have addresses, but they can't ping each other, and a third namespace on a different subnet is unreachable even after you add a route.
What you'll practice
- Create network namespaces and veth pairs, placing one end in each namespace
- Bring interfaces up and assign addressing correctly
- Route between namespaces on the same subnet
- Enable IP forwarding to route between different subnets
- Relate the setup to how containerlab and Docker build topologies
The topology
Two hosts share a subnet over a veth pair, and a third host sits on a second subnet reachable only through a router namespace that forwards between them, the same veth-and-namespace pattern container runtimes use to connect workloads.
Topology diagram
Frequently asked
Do I need Docker for this?
No. You build the namespaces and veth pairs directly with iproute2, which is exactly what Docker and containerlab do for you behind the scenes.
Is this relevant to RHCSA?
Interfaces, addressing and routing fundamentals underpin RHCSA-level administration, and namespaces are the basis of the container networking you meet on modern RHEL.
Ready to run this lab yourself?
No setup, no image sourcing. Book a session or ask for a live demo.