Loading hackfest/containerlab/README.md 0 → 100644 +35 −0 Original line number Diff line number Diff line # ContainerLab The setup consists of a management network for configuring and managing nodes. srl1 and srl2 are interconnected. client1 is connected to srl1 and client2 to srl2. Routing between client1 and client2 is set up via the Nokia SR Linux nodes. ## Management Network Name: mgmt-net Subnet: 172.100.100.0/24 ## Node Kinds Nokia SR Linux: Image ghcr.io/nokia/srlinux:23.10.3 Linux: Image ghcr.io/hellt/network-multitool ## Nodes ### Nokia SR Linux - Type: ixr6 - CPU: 0.5 - Memory: 2GB - Management IP: 172.100.100.101 The provided SR Linux CLI commands in the _srl.cli_ enables system management and configures the GNMI server with OpenConfig models. ### Linux Assigns IP 172.16.1.10/24 to eth1 and adds route to 172.16.2.0/24 via 172.16.1.1 In this topology file, the clients are pre-configured with the respectivly IP addresses in their interfaces and routes in their IP tables. ### Links - Connect srl1:e1-1 to srl2:e1-1 - Connect client1:eth1 to srl1:e1-2 - Connect client2:eth1 to srl2:e1-2 No newline at end of file hackfest/containerlab/commands.txt +10 −10 Original line number Diff line number Diff line Loading @@ -83,19 +83,19 @@ $ssh admin@clab-tfs-scenario-srl1 # Check configurations done: gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/network-instances' > srl1-nis.json gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/interfaces' > srl1-ifs.json gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/network-instances' > srl2-nis.json gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/interfaces' > srl2-ifs.json gnmic -a clab-tfs-scenario-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/network-instances' > srl1-nis.json gnmic -a clab-tfs-scenario-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/interfaces' > srl1-ifs.json gnmic -a clab-tfs-scenario-srl2 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/network-instances' > srl2-nis.json gnmic -a clab-tfs-scenario-srl2 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/interfaces' > srl2-ifs.json # Delete elements: gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/network-instances/network-instance[name=b19229e8]' gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/1]/subinterfaces/subinterface[index=0]' gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/2]/subinterfaces/subinterface[index=0]' gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/network-instances/network-instance[name=b19229e8]' gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/1]/subinterfaces/subinterface[index=0]' gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/2]/subinterfaces/subinterface[index=0]' gnmic -a clab-tfs-scenario-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/network-instances/network-instance[name=b19229e8]' gnmic -a clab-tfs-scenario-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/1]/subinterfaces/subinterface[index=0]' gnmic -a clab-tfs-scenario-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/2]/subinterfaces/subinterface[index=0]' gnmic -a clab-tfs-scenario-srl2 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/network-instances/network-instance[name=b19229e8]' gnmic -a clab-tfs-scenario-srl2 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/1]/subinterfaces/subinterface[index=0]' gnmic -a clab-tfs-scenario-srl2 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/2]/subinterfaces/subinterface[index=0]' # Run gNMI Driver in standalone mode (advanced) PYTHONPATH=./src python -m src.device.tests.test_gnmi hackfest/containerlab/srl.cli 0 → 100644 +2 −0 Original line number Diff line number Diff line set / system management openconfig admin-state enable set / system gnmi-server network-instance mgmt yang-models openconfig hackfest/containerlab/tfs-scenario.clab.yml +14 −8 Original line number Diff line number Diff line Loading @@ -23,35 +23,41 @@ mgmt: topology: kinds: srl: image: ghcr.io/nokia/srlinux:23.3.1 nokia_srlinux: image: ghcr.io/nokia/srlinux:23.10.3 linux: image: ghcr.io/hellt/network-multitool nodes: srl1: kind: srl kind: nokia_srlinux type: ixr6 cpu: 0.5 memory: 1GB memory: 2GB mgmt-ipv4: 172.100.100.101 #startup-config: srl1.cli startup-config: srl.cli srl2: kind: srl kind: nokia_srlinux type: ixr6 cpu: 0.5 memory: 1GB memory: 2GB mgmt-ipv4: 172.100.100.102 #startup-config: srl2.cli startup-config: srl.cli client1: kind: linux cpu: 0.1 memory: 100MB mgmt-ipv4: 172.100.100.201 exec: - ip address add 172.16.1.10/24 dev eth1 - ip route add 172.16.2.0/24 via 172.16.1.1 client2: kind: linux cpu: 0.1 memory: 100MB mgmt-ipv4: 172.100.100.202 exec: - ip address add 172.16.2.10/24 dev eth1 - ip route add 172.16.1.0/24 via 172.16.2.1 links: - endpoints: ["srl1:e1-1", "srl2:e1-1"] Loading Loading
hackfest/containerlab/README.md 0 → 100644 +35 −0 Original line number Diff line number Diff line # ContainerLab The setup consists of a management network for configuring and managing nodes. srl1 and srl2 are interconnected. client1 is connected to srl1 and client2 to srl2. Routing between client1 and client2 is set up via the Nokia SR Linux nodes. ## Management Network Name: mgmt-net Subnet: 172.100.100.0/24 ## Node Kinds Nokia SR Linux: Image ghcr.io/nokia/srlinux:23.10.3 Linux: Image ghcr.io/hellt/network-multitool ## Nodes ### Nokia SR Linux - Type: ixr6 - CPU: 0.5 - Memory: 2GB - Management IP: 172.100.100.101 The provided SR Linux CLI commands in the _srl.cli_ enables system management and configures the GNMI server with OpenConfig models. ### Linux Assigns IP 172.16.1.10/24 to eth1 and adds route to 172.16.2.0/24 via 172.16.1.1 In this topology file, the clients are pre-configured with the respectivly IP addresses in their interfaces and routes in their IP tables. ### Links - Connect srl1:e1-1 to srl2:e1-1 - Connect client1:eth1 to srl1:e1-2 - Connect client2:eth1 to srl2:e1-2 No newline at end of file
hackfest/containerlab/commands.txt +10 −10 Original line number Diff line number Diff line Loading @@ -83,19 +83,19 @@ $ssh admin@clab-tfs-scenario-srl1 # Check configurations done: gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/network-instances' > srl1-nis.json gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/interfaces' > srl1-ifs.json gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/network-instances' > srl2-nis.json gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/interfaces' > srl2-ifs.json gnmic -a clab-tfs-scenario-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/network-instances' > srl1-nis.json gnmic -a clab-tfs-scenario-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/interfaces' > srl1-ifs.json gnmic -a clab-tfs-scenario-srl2 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/network-instances' > srl2-nis.json gnmic -a clab-tfs-scenario-srl2 -u admin -p NokiaSrl1! --skip-verify -e json_ietf get --path '/interfaces' > srl2-ifs.json # Delete elements: gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/network-instances/network-instance[name=b19229e8]' gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/1]/subinterfaces/subinterface[index=0]' gnmic -a 172.100.100.101 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/2]/subinterfaces/subinterface[index=0]' gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/network-instances/network-instance[name=b19229e8]' gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/1]/subinterfaces/subinterface[index=0]' gnmic -a 172.100.100.102 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/2]/subinterfaces/subinterface[index=0]' gnmic -a clab-tfs-scenario-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/network-instances/network-instance[name=b19229e8]' gnmic -a clab-tfs-scenario-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/1]/subinterfaces/subinterface[index=0]' gnmic -a clab-tfs-scenario-srl1 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/2]/subinterfaces/subinterface[index=0]' gnmic -a clab-tfs-scenario-srl2 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/network-instances/network-instance[name=b19229e8]' gnmic -a clab-tfs-scenario-srl2 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/1]/subinterfaces/subinterface[index=0]' gnmic -a clab-tfs-scenario-srl2 -u admin -p NokiaSrl1! --skip-verify -e json_ietf set --delete '/interfaces/interface[name=ethernet-1/2]/subinterfaces/subinterface[index=0]' # Run gNMI Driver in standalone mode (advanced) PYTHONPATH=./src python -m src.device.tests.test_gnmi
hackfest/containerlab/srl.cli 0 → 100644 +2 −0 Original line number Diff line number Diff line set / system management openconfig admin-state enable set / system gnmi-server network-instance mgmt yang-models openconfig
hackfest/containerlab/tfs-scenario.clab.yml +14 −8 Original line number Diff line number Diff line Loading @@ -23,35 +23,41 @@ mgmt: topology: kinds: srl: image: ghcr.io/nokia/srlinux:23.3.1 nokia_srlinux: image: ghcr.io/nokia/srlinux:23.10.3 linux: image: ghcr.io/hellt/network-multitool nodes: srl1: kind: srl kind: nokia_srlinux type: ixr6 cpu: 0.5 memory: 1GB memory: 2GB mgmt-ipv4: 172.100.100.101 #startup-config: srl1.cli startup-config: srl.cli srl2: kind: srl kind: nokia_srlinux type: ixr6 cpu: 0.5 memory: 1GB memory: 2GB mgmt-ipv4: 172.100.100.102 #startup-config: srl2.cli startup-config: srl.cli client1: kind: linux cpu: 0.1 memory: 100MB mgmt-ipv4: 172.100.100.201 exec: - ip address add 172.16.1.10/24 dev eth1 - ip route add 172.16.2.0/24 via 172.16.1.1 client2: kind: linux cpu: 0.1 memory: 100MB mgmt-ipv4: 172.100.100.202 exec: - ip address add 172.16.2.10/24 dev eth1 - ip route add 172.16.1.0/24 via 172.16.2.1 links: - endpoints: ["srl1:e1-1", "srl2:e1-1"] Loading