Decoupling Data from Execution Architecture Diagram

NetDevOps Pipeline Part 4: Decoupling Logic with Jinja2 and YANG

In Part 3 of this series, we treated our physical network topology like software application code, using Containerlab to spin up our test sandbox in seconds. With our nodes live, how do we actually generate and push configurations to them? If you hardcode configuration blocks directly into your Ansible tasks, your playbooks quickly become unmanageable. The moment a VLAN ID changes, or you swap a router from a Nokia SR OS node to a Cisco instance, your entire automation framework collapses under its own weight. ...

Containerlab to NetBox Management IP Sync Workflow Diagram

NetDevOps Pipeline Part 3: Topology Orchestration with Containerlab

Up until now, our pipeline has focused on the management and mapping of data. We modeled our nodes inside our NetBox source of truth (Part 1), and then we built a dynamic handshake to pull that data straight into Ansible (Part 2). But there’s a missing link: Where are the actual routers coming from? If we have to manually spin up heavy virtual machines, map virtual interfaces, and configure bridge links every time we want to test our playbooks, we lose all the speed advantages of automation. ...

Nokia SR OS OSPF Network Topology

OSPF Part 1: Topology Setup and Interface Addressing

In this guide, we establish a 6-node Nokia SR OS baseline in Containerlab and configure the physical interfaces, /30 point-to-point subnets, and system loopbacks required prior to enabling OSPF. SR OS Version: 25.7.R1 CLI Mode: MD-CLI (Model-Driven CLI) Containerlab Topology File (topology.clab.yml) name: OSPF-Lab topology: defaults: kind: nokia_srsim image: localhost/nokia/srsim:25.7.R1 type: sr-1 license: license/license.txt nodes: r1: mgmt-ipv4: 172.20.20.9 r2: mgmt-ipv4: 172.20.20.2 r3: mgmt-ipv4: 172.20.20.3 r4: mgmt-ipv4: 172.20.20.4 r5: mgmt-ipv4: 172.20.20.5 r6: mgmt-ipv4: 172.20.20.6 links: # --- CE to PE Links --- - endpoints: ["r1:1/1/c1/1", "r2:1/1/c1/1"] - endpoints: ["r5:1/1/c1/1", "r6:1/1/c1/1"] # --- Core Links --- - endpoints: ["r2:1/1/c2/1", "r3:1/1/c1/1"] - endpoints: ["r2:1/1/c3/1", "r4:1/1/c1/1"] - endpoints: ["r3:1/1/c2/1", "r5:1/1/c2/1"] - endpoints: ["r4:1/1/c3/1", "r5:1/1/c3/1"] Addressing Plan System (Loopback) Interfaces Node System IP Address Prefix Length R1 10.100.1.1 /32 R2 10.100.1.2 /32 R3 10.100.1.3 /32 R4 10.100.1.4 /32 R5 10.100.1.5 /32 R6 10.100.1.6 /32 Physical Interfaces Router R1 Interface Name Port ID IPv4 Address Prefix Length Subnet Neighbor toR2 1/1/c1/1 192.168.12.1 30 192.168.12.0/30 R2 (PE1) Router R2 Interface Name Port ID IPv4 Address Prefix Length Subnet Neighbor toR1 1/1/c1/1 192.168.12.2 30 192.168.12.0/30 R1 (CE1) toR3 1/1/c2/1 192.168.23.1 30 192.168.23.0/30 R3 (P1) toR4 1/1/c3/1 192.168.24.1 30 192.168.24.0/30 R4 (P2) Router R3 Interface Name Port ID IPv4 Address Prefix Length Subnet Neighbor toR2 1/1/c1/1 192.168.23.2 30 192.168.23.0/30 R2 (PE1) toR5 1/1/c2/1 192.168.35.1 30 192.168.35.0/30 R5 (PE2) Router R4 Interface Name Port ID IPv4 Address Prefix Length Subnet Neighbor toR2 1/1/c1/1 192.168.24.2 30 192.168.24.0/30 R2 (PE1) toR5 1/1/c3/1 192.168.45.1 30 192.168.45.0/30 R5 (PE2) Router R5 Interface Name Port ID IPv4 Address Prefix Length Subnet Neighbor toR3 1/1/c2/1 192.168.35.2 30 192.168.35.0/30 R3 (P1) toR4 1/1/c3/1 192.168.45.2 30 192.168.45.0/30 R4 (P2) toR6 1/1/c1/1 192.168.56.1 30 192.168.56.0/30 R6 (CE2) Router R6 Interface Name Port ID IPv4 Address Prefix Length Subnet Neighbor toR5 1/1/c1/1 192.168.56.2 30 192.168.56.0/30 R5 (PE2) Configuration Router R1 (CE1) edit-config global /configure system name "R1 (CE1)" /configure card 1 card-type iom-1 /configure card 1 mda 1 mda-type me6-100gb-qsfp28 /configure port 1/1/c1 connector breakout c1-100g /configure port 1/1/c1 admin-state enable /configure port 1/1/c1/1 admin-state enable /configure port 1/1/c1/1 ethernet mode hybrid /configure router interface "system" admin-state enable /configure router interface "system" ipv4 primary address 10.100.1.1 /configure router interface "system" ipv4 primary prefix-length 32 /configure router interface "toR2" admin-state enable /configure router interface "toR2" ipv4 primary address 192.168.12.1 /configure router interface "toR2" ipv4 primary prefix-length 30 /configure router interface "toR2" port 1/1/c1/1:0 commit Router R2 (PE1) edit-config global /configure system name "R2 (PE1)" /configure card 1 card-type iom-1 /configure card 1 mda 1 mda-type me6-100gb-qsfp28 /configure port 1/1/c1 connector breakout c1-100g /configure port 1/1/c2 connector breakout c1-100g /configure port 1/1/c3 connector breakout c1-100g /configure port 1/1/c1 admin-state enable /configure port 1/1/c2 admin-state enable /configure port 1/1/c3 admin-state enable /configure port 1/1/c1/1 admin-state enable /configure port 1/1/c1/1 ethernet mode hybrid /configure port 1/1/c2/1 admin-state enable /configure port 1/1/c2/1 ethernet mode hybrid /configure port 1/1/c3/1 admin-state enable /configure port 1/1/c3/1 ethernet mode hybrid /configure router interface "system" admin-state enable /configure router interface "system" ipv4 primary address 10.100.1.2 /configure router interface "system" ipv4 primary prefix-length 32 /configure router interface "toR1" admin-state enable /configure router interface "toR1" ipv4 primary address 192.168.12.2 /configure router interface "toR1" ipv4 primary prefix-length 30 /configure router interface "toR1" port 1/1/c1/1:0 /configure router interface "toR3" admin-state enable /configure router interface "toR3" ipv4 primary address 192.168.23.1 /configure router interface "toR3" ipv4 primary prefix-length 30 /configure router interface "toR3" port 1/1/c2/1:0 /configure router interface "toR4" admin-state enable /configure router interface "toR4" ipv4 primary address 192.168.24.1 /configure router interface "toR4" ipv4 primary prefix-length 30 /configure router interface "toR4" port 1/1/c3/1:0 commit Router R3 (P1) edit-config global /configure system name "R3 (P1)" /configure card 1 card-type iom-1 /configure card 1 mda 1 mda-type me6-100gb-qsfp28 /configure port 1/1/c1 connector breakout c1-100g /configure port 1/1/c2 connector breakout c1-100g /configure port 1/1/c1 admin-state enable /configure port 1/1/c2 admin-state enable /configure port 1/1/c1/1 admin-state enable /configure port 1/1/c1/1 ethernet mode hybrid /configure port 1/1/c2/1 admin-state enable /configure port 1/1/c2/1 ethernet mode hybrid /configure router interface "system" admin-state enable /configure router interface "system" ipv4 primary address 10.100.1.3 /configure router interface "system" ipv4 primary prefix-length 32 /configure router interface "toR2" admin-state enable /configure router interface "toR2" ipv4 primary address 192.168.23.2 /configure router interface "toR2" ipv4 primary prefix-length 30 /configure router interface "toR2" port 1/1/c1/1:0 /configure router interface "toR5" admin-state enable /configure router interface "toR5" ipv4 primary address 192.168.35.1 /configure router interface "toR5" ipv4 primary prefix-length 30 /configure router interface "toR5" port 1/1/c2/1:0 commit Router R4 (P2) edit-config global /configure system name "R4 (P2)" /configure card 1 card-type iom-1 /configure card 1 mda 1 mda-type me6-100gb-qsfp28 /configure port 1/1/c1 connector breakout c1-100g /configure port 1/1/c3 connector breakout c1-100g /configure port 1/1/c1 admin-state enable /configure port 1/1/c3 admin-state enable /configure port 1/1/c1/1 admin-state enable /configure port 1/1/c1/1 ethernet mode hybrid /configure port 1/1/c3/1 admin-state enable /configure port 1/1/c3/1 ethernet mode hybrid /configure router interface "system" admin-state enable /configure router interface "system" ipv4 primary address 10.100.1.4 /configure router interface "system" ipv4 primary prefix-length 32 /configure router interface "toR2" admin-state enable /configure router interface "toR2" ipv4 primary address 192.168.24.2 /configure router interface "toR2" ipv4 primary prefix-length 30 /configure router interface "toR2" port 1/1/c1/1:0 /configure router interface "toR5" admin-state enable /configure router interface "toR5" ipv4 primary address 192.168.45.1 /configure router interface "toR5" ipv4 primary prefix-length 30 /configure router interface "toR5" port 1/1/c3/1:0 commit Router R5 (PE2) edit-config global /configure system name "R5 (PE2)" /configure card 1 card-type iom-1 /configure card 1 mda 1 mda-type me6-100gb-qsfp28 /configure port 1/1/c1 connector breakout c1-100g /configure port 1/1/c2 connector breakout c1-100g /configure port 1/1/c3 connector breakout c1-100g /configure port 1/1/c1 admin-state enable /configure port 1/1/c2 admin-state enable /configure port 1/1/c3 admin-state enable /configure port 1/1/c1/1 admin-state enable /configure port 1/1/c1/1 ethernet mode hybrid /configure port 1/1/c2/1 admin-state enable /configure port 1/1/c2/1 ethernet mode hybrid /configure port 1/1/c3/1 admin-state enable /configure port 1/1/c3/1 ethernet mode hybrid /configure router interface "system" admin-state enable /configure router interface "system" ipv4 primary address 10.100.1.5 /configure router interface "system" ipv4 primary prefix-length 32 /configure router interface "toR3" admin-state enable /configure router interface "toR3" ipv4 primary address 192.168.35.2 /configure router interface "toR3" ipv4 primary prefix-length 30 /configure router interface "toR3" port 1/1/c2/1:0 /configure router interface "toR4" admin-state enable /configure router interface "toR4" ipv4 primary address 192.168.45.2 /configure router interface "toR4" ipv4 primary prefix-length 30 /configure router interface "toR4" port 1/1/c3/1:0 /configure router interface "toR6" admin-state enable /configure router interface "toR6" ipv4 primary address 192.168.56.1 /configure router interface "toR6" ipv4 primary prefix-length 30 /configure router interface "toR6" port 1/1/c1/1:0 commit Router R6 (CE2) edit-config global /configure system name "R6 (CE2)" /configure card 1 card-type iom-1 /configure card 1 mda 1 mda-type me6-100gb-qsfp28 /configure port 1/1/c1 connector breakout c1-100g /configure port 1/1/c1 admin-state enable /configure port 1/1/c1/1 admin-state enable /configure port 1/1/c1/1 ethernet mode hybrid /configure router interface "system" admin-state enable /configure router interface "system" ipv4 primary address 10.100.1.6 /configure router interface "system" ipv4 primary prefix-length 32 /configure router interface "toR5" admin-state enable /configure router interface "toR5" ipv4 primary address 192.168.56.2 /configure router interface "toR5" ipv4 primary prefix-length 30 /configure router interface "toR5" port 1/1/c1/1:0 commit Verification Step 1: Verify Port Operational Status Verify physical ports are administratively and operationally Up/Up across all routers: ...

September 4, 2026 · 7 min · Dennis Mwangi · Routing