[WARNING]: Could not match supplied host pattern, ignoring: unprovisioned PLAY [Deploy initial device configuration] ************************************* TASK [Set variables that cannot be set with VARS] ****************************** ok: [h1] ok: [h2] ok: [h3] ok: [h4] ok: [s1] TASK [Find device readiness script] ******************************************** ok: [h1] ok: [h2] ok: [h3] ok: [s1] ok: [h4] TASK [Wait for device to become ready] ***************************************** skipping: [h1] skipping: [h2] skipping: [h3] skipping: [h4] skipping: [s1] TASK [Deploy initial configuration] ******************************************** included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-module.yml for h1, h2, h3, h4, s1 TASK [Figure out whether to deploy the module initial on current device] ******* ok: [h1] ok: [h2] ok: [h3] ok: [h4] ok: [s1] TASK [Find configuration template for initial] ********************************* ok: [h1] ok: [h2] ok: [h3] ok: [h4] ok: [s1] TASK [Print deployed configuration when running in verbose mode] *************** ok: [h1] => msg: |- initial configuration for h1 ========================================= #!/bin/bash # # This script contains the 'ip' commands needed to set up container # interfaces and route table. It's executed within the container # network namespace on the container host. # # /etc/hosts file is generated as a clab bind. # set -e ### One-Shot configuration (non-Ubuntu VM or container) # # Disable IPv4 and IPv6 forwarding # sysctl -w net.ipv4.ip_forward=0 sysctl -w net.ipv6.conf.all.forwarding=0 # # Interface addressing # ip link set dev eth1 up set +e ip addr del 172.16.0.1/24 dev eth1 2>/dev/null set -e ip addr add 172.16.0.1/24 dev eth1 ip link set eth1 mtu 1500 # # Add routes to IPv4 address pools pointing to the first neighbor on the first link # # If you need anything better, use FRR instead of Linux and start routing (or use IPv6) # # # Print the final routing table ip route ok: [h2] => msg: |- initial configuration for h2 ========================================= #!/bin/bash # # This script contains the 'ip' commands needed to set up container # interfaces and route table. It's executed within the container # network namespace on the container host. # # /etc/hosts file is generated as a clab bind. # set -e ### One-Shot configuration (non-Ubuntu VM or container) # # Disable IPv4 and IPv6 forwarding # sysctl -w net.ipv4.ip_forward=0 sysctl -w net.ipv6.conf.all.forwarding=0 # # Interface addressing # ip link set dev eth1 up set +e ip addr del 172.16.0.2/24 dev eth1 2>/dev/null set -e ip addr add 172.16.0.2/24 dev eth1 ip link set eth1 mtu 1500 # # Add routes to IPv4 address pools pointing to the first neighbor on the first link # # If you need anything better, use FRR instead of Linux and start routing (or use IPv6) # # # Print the final routing table ip route ok: [h3] => msg: |- initial configuration for h3 ========================================= #!/bin/bash # # This script contains the 'ip' commands needed to set up container # interfaces and route table. It's executed within the container # network namespace on the container host. # # /etc/hosts file is generated as a clab bind. # set -e ### One-Shot configuration (non-Ubuntu VM or container) # # Disable IPv4 and IPv6 forwarding # sysctl -w net.ipv4.ip_forward=0 sysctl -w net.ipv6.conf.all.forwarding=0 # # Interface addressing # ip link set dev eth1 up set +e ip addr del 172.16.1.3/24 dev eth1 2>/dev/null set -e ip addr add 172.16.1.3/24 dev eth1 ip link set eth1 mtu 1500 # # Add routes to IPv4 address pools pointing to the first neighbor on the first link # # If you need anything better, use FRR instead of Linux and start routing (or use IPv6) # # lan prefix: 172.16.0.0/16 local subnet: 172.16.1.0/24 set +e ip route del 172.16.0.0/16 2>/dev/null set -e ip route add 172.16.0.0/16 via 172.16.1.5 # loopback prefix: 10.0.0.0/24 local subnet: 172.16.1.0/24 set +e ip route del 10.0.0.0/24 2>/dev/null set -e ip route add 10.0.0.0/24 via 172.16.1.5 # mgmt prefix: 192.168.17.0/24 local subnet: 172.16.1.0/24 # p2p prefix: 10.1.0.0/16 local subnet: 172.16.1.0/24 set +e ip route del 10.1.0.0/16 2>/dev/null set -e ip route add 10.1.0.0/16 via 172.16.1.5 # router_id prefix: 10.0.0.0/24 local subnet: 172.16.1.0/24 # vrf_loopback prefix: 10.2.0.0/24 local subnet: 172.16.1.0/24 set +e ip route del 10.2.0.0/24 2>/dev/null set -e ip route add 10.2.0.0/24 via 172.16.1.5 # # Print the final routing table ip route ok: [s1] => msg: |- initial configuration for s1 ========================================= updates: - path: /interface[name=system0]/subinterface[index=0] value: description: "No description" ipv4: admin-state: enable address: - ip-prefix: "10.0.0.5/32" - path: /network-instance[name=default] value: type: default interface: - name: system0.0 ok: [h4] => msg: |- initial configuration for h4 ========================================= #!/bin/bash # # This script contains the 'ip' commands needed to set up container # interfaces and route table. It's executed within the container # network namespace on the container host. # # /etc/hosts file is generated as a clab bind. # set -e ### One-Shot configuration (non-Ubuntu VM or container) # # Disable IPv4 and IPv6 forwarding # sysctl -w net.ipv4.ip_forward=0 sysctl -w net.ipv6.conf.all.forwarding=0 # # Interface addressing # ip link set dev eth1 up set +e ip addr del 172.16.2.4/24 dev eth1 2>/dev/null set -e ip addr add 172.16.2.4/24 dev eth1 ip link set eth1 mtu 1500 # # Add routes to IPv4 address pools pointing to the first neighbor on the first link # # If you need anything better, use FRR instead of Linux and start routing (or use IPv6) # # lan prefix: 172.16.0.0/16 local subnet: 172.16.2.0/24 set +e ip route del 172.16.0.0/16 2>/dev/null set -e ip route add 172.16.0.0/16 via 172.16.2.5 # loopback prefix: 10.0.0.0/24 local subnet: 172.16.2.0/24 set +e ip route del 10.0.0.0/24 2>/dev/null set -e ip route add 10.0.0.0/24 via 172.16.2.5 # mgmt prefix: 192.168.17.0/24 local subnet: 172.16.2.0/24 # p2p prefix: 10.1.0.0/16 local subnet: 172.16.2.0/24 set +e ip route del 10.1.0.0/16 2>/dev/null set -e ip route add 10.1.0.0/16 via 172.16.2.5 # router_id prefix: 10.0.0.0/24 local subnet: 172.16.2.0/24 # vrf_loopback prefix: 10.2.0.0/24 local subnet: 172.16.2.0/24 set +e ip route del 10.2.0.0/24 2>/dev/null set -e ip route add 10.2.0.0/24 via 172.16.2.5 # # Print the final routing table ip route TASK [Find configuration deployment deploy_script for initial] ***************** ok: [h1] ok: [h2] ok: [h3] ok: [s1] ok: [h4] TASK [Deploy initial configuration] ******************************************** included: /home/pipi/net101/tools/netsim/ansible/tasks/linux/initial-clab.yml for h1, h2, h3, h4 included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-config/srlinux.yml for s1 TASK [set_fact] **************************************************************** ok: [h1] ok: [h2] ok: [h3] ok: [h4] TASK [Create initial container setup from /home/pipi/net101/tools/netsim/ansible/templates/initial/linux-clab.j2] *** changed: [h3 -> localhost] changed: [h1 -> localhost] changed: [h4 -> localhost] changed: [h2 -> localhost] TASK [Initial container configuration via /tmp/config-iPwwZCQV-h1.sh] ********** changed: [h2 -> localhost] changed: [h1 -> localhost] changed: [h3 -> localhost] changed: [h4 -> localhost] TASK [file] ******************************************************************** changed: [h1 -> localhost] changed: [h4 -> localhost] changed: [h3 -> localhost] changed: [h2 -> localhost] TASK [Generate JSON-RPC YAML configuration] ************************************ ok: [s1] TASK [Update SRL initial node configuration (template=/home/pipi/net101/tools/netsim/ansible/templates/initial/srlinux.j2)] *** changed: [s1] TASK [debug] ******************************************************************* skipping: [s1] PLAY [Deploy module-specific configurations] *********************************** TASK [Set variables that cannot be set with VARS] ****************************** ok: [s1] TASK [Deploy individual configuration modules] ********************************* included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-module.yml for s1 => (item=vlan) TASK [Figure out whether to deploy the module vlan on current device] ********** ok: [s1] TASK [Find configuration template for vlan] ************************************ ok: [s1] TASK [Print deployed configuration when running in verbose mode] *************** ok: [s1] => msg: |- vlan configuration for s1 ========================================= updates: - path: /interface[name=ethernet-1/1] value: subinterface: - index: 700 type: bridged description: "Access VLAN red s1 ~ h1" - path: /network-instance[name=vlan700] value: type: mac-vrf description: "Access VLAN red s1 ~ h1" interface: - name: ethernet-1/1.700 - path: /interface[name=ethernet-1/2] value: subinterface: - index: 700 type: bridged description: "Access VLAN red s1 ~ h2" - path: /network-instance[name=vlan700] value: type: mac-vrf description: "Access VLAN red s1 ~ h2" interface: - name: ethernet-1/2.700 - path: /interface[name=ethernet-1/3] value: subinterface: - index: 701 type: bridged description: "Access VLAN blue s1 ~ h3" - path: /network-instance[name=vlan701] value: type: mac-vrf description: "Access VLAN blue s1 ~ h3" interface: - name: ethernet-1/3.701 - path: /interface[name=ethernet-1/4] value: subinterface: - index: 702 type: bridged description: "Access VLAN green s1 ~ h4" - path: /network-instance[name=vlan702] value: type: mac-vrf description: "Access VLAN green s1 ~ h4" interface: - name: ethernet-1/4.702 - path: /interface[name=irb0] value: subinterface: - index: 700 - path: /interface[name=irb0] value: subinterface: - index: 701 - path: /interface[name=irb0]/subinterface[index=701] value: description: "VLAN blue (701) ~ h3" ipv4: admin-state: enable address: - ip-prefix: "172.16.1.5/24" primary: [null] - path: /network-instance[name=vlan701] value: type: mac-vrf description: "VLAN blue (701) ~ h3" interface: - name: irb0.701 - path: /network-instance[name=default] value: type: default interface: - name: irb0.701 - path: /interface[name=irb0] value: subinterface: - index: 702 - path: /interface[name=irb0]/subinterface[index=702] value: description: "VLAN green (702) ~ h4" ipv4: admin-state: enable address: - ip-prefix: "172.16.2.5/24" primary: [null] - path: /network-instance[name=vlan702] value: type: mac-vrf description: "VLAN green (702) ~ h4" interface: - name: irb0.702 - path: /network-instance[name=default] value: type: default interface: - name: irb0.702 TASK [Find configuration deployment deploy_script for vlan] ******************** ok: [s1] TASK [Deploy vlan configuration] *********************************************** included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-config/srlinux.yml for s1 TASK [Generate JSON-RPC YAML configuration] ************************************ ok: [s1] TASK [Update SRL vlan node configuration (template=/home/pipi/net101/tools/netsim/ansible/templates/vlan/srlinux.j2)] *** changed: [s1] TASK [debug] ******************************************************************* skipping: [s1] PLAY [Deploy custom deployment templates] ************************************** skipping: no hosts matched PLAY RECAP ********************************************************************* h1 : ok=12 changed=3 unreachable=0 failed=0 skipped=1 rescued=0 ignored=0 h2 : ok=12 changed=3 unreachable=0 failed=0 skipped=1 rescued=0 ignored=0 h3 : ok=12 changed=3 unreachable=0 failed=0 skipped=1 rescued=0 ignored=0 h4 : ok=12 changed=3 unreachable=0 failed=0 skipped=1 rescued=0 ignored=0 s1 : ok=19 changed=2 unreachable=0 failed=0 skipped=3 rescued=0 ignored=0 The device under test is a mixed layer-2/layer-3 switch. Red VLAN is a layer-2-only VLAN, the device acts as a L2/L3 switch on all other VLANs h1 and h2 should be able to ping each other, but not h3 or h4 h3 and h4 should be able to ping each other, but not h1 or h2