[WARNING]: Could not match supplied host pattern, ignoring: unprovisioned PLAY [Deploy initial device configuration] ************************************* TASK [Set variables that cannot be set with VARS] ****************************** ok: [server] ok: [c1] ok: [c2] TASK [Find device readiness script] ******************************************** ok: [server] ok: [c1] ok: [c2] TASK [Wait for device to become ready] ***************************************** skipping: [server] included: /home/pipi/net101/tools/netsim/ansible/tasks/readiness-check/iol-clab.yml for c1, c2 TASK [Check if 'sshpass' is installed] ***************************************** ok: [c1 -> localhost] TASK [Check for 'timeout' command] ********************************************* ok: [c2 -> localhost] ok: [c1 -> localhost] TASK [Execute local ssh command to check iol readiness] ************************ FAILED - RETRYING: [c1 -> localhost]: Execute local ssh command to check iol readiness (20 retries left). FAILED - RETRYING: [c2 -> localhost]: Execute local ssh command to check iol readiness (20 retries left). FAILED - RETRYING: [c1 -> localhost]: Execute local ssh command to check iol readiness (19 retries left). FAILED - RETRYING: [c2 -> localhost]: Execute local ssh command to check iol readiness (19 retries left). ok: [c2 -> localhost] ok: [c1 -> localhost] TASK [Confirm c1 SSH server works] ********************************************* ok: [c1] => msg: Node c1 is ready. ok: [c2] => msg: Node c2 is ready. TASK [Normalize config on bridge-like devices] ********************************* included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-module.yml for server, c1, c2 TASK [Figure out whether to deploy the module normalize on current device] ***** ok: [server] ok: [c1] ok: [c2] TASK [Find configuration template for normalize] ******************************* ok: [server] ok: [c1] ok: [c2] TASK [fail] ******************************************************************** skipping: [server] skipping: [c1] skipping: [c2] TASK [Print deployed configuration when running in verbose mode] *************** skipping: [server] skipping: [c1] skipping: [c2] TASK [Find configuration deployment deploy_script for normalize] *************** skipping: [server] skipping: [c1] skipping: [c2] TASK [Deploy normalize configuration] ****************************************** skipping: [server] skipping: [c1] skipping: [c2] TASK [Deploy initial configuration] ******************************************** included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-module.yml for server, c1, c2 TASK [Figure out whether to deploy the module initial on current device] ******* ok: [server] ok: [c1] ok: [c2] TASK [Find configuration template for initial] ********************************* ok: [server] ok: [c1] ok: [c2] TASK [fail] ******************************************************************** skipping: [server] skipping: [c1] skipping: [c2] TASK [Print deployed configuration when running in verbose mode] *************** ok: [server] => msg: |- initial configuration for server ========================================= #!/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, create any bond devices # ip link set dev eth1 up set +e ip addr del 172.16.0.3/24 dev eth1 2>/dev/null set -e ip addr add 172.16.0.3/24 dev eth1 ip link set dev eth1 mtu 1500 # # Add static routes (usually IPv4 routes pointing to the first usable gateway) # # # # # Print the final routing table ip route ok: [c1] => msg: |- initial configuration for c1 ========================================= hostname c1 ! no ip domain lookup ! lldp run ! ip host c2 10.0.0.2 ip host server 172.16.0.3 ! ip routing ! ! interface Loopback0 ip address 10.0.0.1 255.255.255.255 ! interface Ethernet0/0 no lldp transmit no lldp receive ! interface Ethernet0/1 description c1 -> [c2,server] mtu 1500 no shutdown ! ! line vty 0 4 exec-timeout 0 0 ! no banner exec no banner login no banner incoming ok: [c2] => msg: |- initial configuration for c2 ========================================= hostname c2 ! no ip domain lookup ! lldp run ! ip host c1 10.0.0.1 ip host server 172.16.0.3 ! ip routing ! ! interface Loopback0 ip address 10.0.0.2 255.255.255.255 ! interface Ethernet0/0 no lldp transmit no lldp receive ! interface Ethernet0/1 description c2 -> [c1,server] mtu 1500 no shutdown ! ! line vty 0 4 exec-timeout 0 0 ! no banner exec no banner login no banner incoming TASK [Find configuration deployment deploy_script for initial] ***************** ok: [server] ok: [c1] ok: [c2] TASK [Deploy initial configuration] ******************************************** included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-config/linux-clab.yml for server included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-config/ios.yml for c1, c2 TASK [Define script filename and determine whether to execute in netns] ******** ok: [server] TASK [Create a temporary file for the rendered script] ************************* changed: [server -> localhost] TASK [Create container setup script from /home/pipi/net101/tools/netsim/ansible/templates/initial/linux-clab.j2] *** changed: [server -> localhost] TASK [Copy script into running container at /tmp/config-server_initial.sh] ***** skipping: [server] TASK [Execute /tmp/config-server_initial.sh to deploy initial config based on /home/pipi/net101/tools/netsim/ansible/templates/initial/linux-clab.j2] *** skipping: [server] TASK [Container configuration for initial based on /home/pipi/net101/tools/netsim/ansible/templates/initial/linux-clab.j2 executed in netns] *** changed: [server -> localhost] TASK [Remove temporary file /tmp/server_initial-jelny6xm.sh] ******************* changed: [server -> localhost] TASK [ios_config: deploying initial from /home/pipi/net101/tools/netsim/ansible/templates/initial/ios.j2] *** [WARNING]: To ensure idempotency and correct diff the input configuration lines should be similar to how they appear if present in the running configuration on device including the indentation changed: [c2] changed: [c1] PLAY [Deploy module-specific configurations] *********************************** TASK [Set variables that cannot be set with VARS] ****************************** ok: [server] ok: [c1] ok: [c2] TASK [Deploy individual configuration modules] ********************************* included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-module.yml for c1, c2, server => (item=dhcp) TASK [Figure out whether to deploy the module dhcp on current device] ********** ok: [server] ok: [c1] ok: [c2] TASK [Find configuration template for dhcp] ************************************ skipping: [server] ok: [c1] ok: [c2] TASK [fail] ******************************************************************** skipping: [c1] skipping: [c2] skipping: [server] TASK [Print deployed configuration when running in verbose mode] *************** skipping: [server] ok: [c1] => msg: |- dhcp configuration for c1 ========================================= interface Ethernet0/1 ip address dhcp ok: [c2] => msg: |- dhcp configuration for c2 ========================================= interface Ethernet0/1 no ip dhcp client request router ip address dhcp TASK [Find configuration deployment deploy_script for dhcp] ******************** skipping: [server] ok: [c1] ok: [c2] TASK [Deploy dhcp configuration] *********************************************** skipping: [server] included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-config/ios.yml for c1, c2 TASK [ios_config: deploying dhcp from /home/pipi/net101/tools/netsim/ansible/templates/dhcp/ios.j2] *** changed: [c1] changed: [c2] PLAY [Deploy custom deployment templates] ************************************** skipping: no hosts matched PLAY RECAP ********************************************************************* c1 : ok=25 changed=2 unreachable=0 failed=0 skipped=6 rescued=0 ignored=0 c2 : ok=24 changed=2 unreachable=0 failed=0 skipped=6 rescued=0 ignored=0 server : ok=19 changed=4 unreachable=0 failed=0 skipped=13 rescued=0 ignored=0 Use this topology to test the DHCPv4 client on your device. Use 'netlab validate' to check whether your devices requested DHCP leases from the DHCP server. If your client suppors configurable 'router option' requests to generate a default route, check that C1 has a default route but C2 does not.