[INFO] Creating configuration snippets [CREATED] relay: normalize,initial,dhcp [CREATED] c1: initial,dhcp [CREATED] c2: initial,dhcp [CREATED] c3: initial,dhcp [CREATED] c4: initial,dhcp [CREATED] s1: initial,dhcp [CREATED] s2: initial,dhcp [INFO] Executing initial configuration for node s1 (namespace clab- ml_17-s1) [INFO] Executing initial configuration for node s2 (namespace clab- ml_17-s2) [INFO] Starting Ansible playbook to deploy the rest of the configurations [WARNING]: Found variable using reserved name: hosts PLAY [Deploy initial device configuration] ************************************* TASK [Set variables that cannot be set with VARS] ****************************** ok: [relay] ok: [c1] ok: [c2] ok: [c3] ok: [c4] TASK [Generic readiness tests] ************************************************* skipping: [relay] included: /home/pipi/netlab_gh/netsim/ansible/tasks/readiness-check/ssh.yml for c1, c2, c3, c4 => (item=ssh) TASK [Check if 'sshpass' is installed] ***************************************** ok: [c1 -> localhost] TASK [Check for 'timeout' command] ********************************************* ok: [c2 -> localhost] ok: [c1 -> localhost] ok: [c3 -> localhost] ok: [c4 -> localhost] TASK [Execute local ssh command to check ssh readiness] ************************ FAILED - RETRYING: [c1 -> localhost]: Execute local ssh command to check ssh readiness (20 retries left). FAILED - RETRYING: [c2 -> localhost]: Execute local ssh command to check ssh readiness (20 retries left). FAILED - RETRYING: [c4 -> localhost]: Execute local ssh command to check ssh readiness (20 retries left). FAILED - RETRYING: [c3 -> localhost]: Execute local ssh command to check ssh readiness (20 retries left). FAILED - RETRYING: [c2 -> localhost]: Execute local ssh command to check ssh readiness (19 retries left). FAILED - RETRYING: [c1 -> localhost]: Execute local ssh command to check ssh readiness (19 retries left). FAILED - RETRYING: [c3 -> localhost]: Execute local ssh command to check ssh readiness (19 retries left). FAILED - RETRYING: [c4 -> localhost]: Execute local ssh command to check ssh readiness (19 retries left). ok: [c1 -> localhost] ok: [c2 -> localhost] ok: [c3 -> localhost] ok: [c4 -> localhost] TASK [Confirm c1 SSH server works] ********************************************* ok: [c1] => { "msg": "Node c1 is ready." } ok: [c2] => { "msg": "Node c2 is ready." } ok: [c3] => { "msg": "Node c3 is ready." } ok: [c4] => { "msg": "Node c4 is ready." } TASK [Find device readiness script] ******************************************** ok: [c1] ok: [relay] ok: [c2] ok: [c3] ok: [c4] TASK [Wait for device to become ready] ***************************************** skipping: [relay] skipping: [c1] skipping: [c2] skipping: [c3] skipping: [c4] TASK [Normalize config on bridge-like devices] ********************************* included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for relay, c1, c2, c3, c4 TASK [Figure out whether to deploy the module normalize on current device] ***** ok: [relay] ok: [c1] ok: [c2] ok: [c3] ok: [c4] TASK [Find configuration template for normalize] ******************************* ok: [c1] ok: [relay] ok: [c2] ok: [c3] ok: [c4] TASK [fail] ******************************************************************** skipping: [relay] skipping: [c1] skipping: [c2] skipping: [c3] skipping: [c4] TASK [Find configuration deployment deploy_script for normalize] *************** ok: [relay] ok: [c1] ok: [c2] ok: [c3] ok: [c4] TASK [Print deployed configuration when running in verbose mode] *************** skipping: [c1] skipping: [c2] skipping: [c3] skipping: [c4] ok: [relay] => { "msg": "normalize configuration for relay\n=========================================\n!\ninterface Ethernet1\n shutdown\n!\ninterface Ethernet2\n shutdown\n!\ninterface Ethernet3\n shutdown\n!\ninterface Ethernet4\n shutdown\n" } TASK [Deploy normalize configuration] ****************************************** skipping: [c1] skipping: [c2] skipping: [c3] skipping: [c4] included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for relay TASK [eos_config: deploying normalize from /work/netlab_cicd/node_files/relay/normalize] *** [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: [relay] TASK [Deploy initial configuration] ******************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for relay, c1, c2, c3, c4 TASK [Figure out whether to deploy the module initial on current device] ******* ok: [relay] ok: [c1] ok: [c2] ok: [c3] ok: [c4] TASK [Find configuration template for initial] ********************************* ok: [relay] ok: [c1] ok: [c2] ok: [c3] ok: [c4] TASK [fail] ******************************************************************** skipping: [relay] skipping: [c1] skipping: [c2] skipping: [c3] skipping: [c4] TASK [Find configuration deployment deploy_script for initial] ***************** ok: [relay] ok: [c1] ok: [c2] ok: [c3] ok: [c4] TASK [Print deployed configuration when running in verbose mode] *************** ok: [relay] => { "msg": "initial configuration for relay\n=========================================\nhostname relay\n!\nlogging monitor debugging\naaa authorization exec default local\n!\nlldp run\nip routing\nipv6 unicast-routing\n!\n!\nip host c1 10.0.0.2\nip host c2 10.0.0.3\nip host c3 10.0.0.4\nip host c4 10.0.0.5\nipv6 host s1 2001:db8:cafe:2::6\nipv6 host s2 2001:db8:cafe:3::7\n!\ninterface Management1\n no lldp transmit\n no lldp receive\n!\ninterface Loopback0\n ip address 10.0.0.1/32\n!\ninterface Ethernet1\n no switchport\n description relay -> [c1,c2]\n ipv6 nd ra interval 5\n ipv6 address 2001:db8:cafe::1/64\n mac-address caf0.0001.0001\n!\n no shutdown\n!\ninterface Ethernet2\n no switchport\n description relay -> [c3,c4]\n ipv6 nd ra interval 5\n ipv6 address 2001:db8:cafe:1::1/64\n mac-address caf0.0001.0002\n!\n no shutdown\n!\ninterface Ethernet3\n no switchport\n description relay -> s1\n ipv6 nd ra interval 5\n ipv6 address 2001:db8:cafe:2::1/64\n mac-address caf0.0001.0003\n!\n no shutdown\n!\ninterface Ethernet4\n no switchport\n description relay -> s2\n ipv6 nd ra interval 5\n ipv6 address 2001:db8:cafe:3::1/64\n mac-address caf0.0001.0004\n!\n no shutdown\n!\n" } ok: [c1] => { "msg": "initial configuration for c1\n=========================================\nhostname c1\n!\nno ip domain lookup\nlogging buffered 256000\n\n!\nlldp run\n!\nip host c2 10.0.0.3\nip host c3 10.0.0.4\nip host c4 10.0.0.5\nip host relay 10.0.0.1 2001:db8:cafe::1 2001:db8:cafe:1::1 2001:db8:cafe:2::1 2001:db8:cafe:3::1\nip host s1 2001:db8:cafe:2::6\nip host s2 2001:db8:cafe:3::7\n!\nip routing\n!\nipv6 unicast-routing\n!\n!\ninterface Loopback0\n ip address 10.0.0.2 255.255.255.255\n!\ninterface Ethernet0/0\n no lldp transmit\n no lldp receive\n!\ninterface Ethernet0/1\n description c1 -> [c2,relay]\n no shutdown\n!\n!\nline vty 0 4\n exec-timeout 0 0 \n!\nno banner exec\nno banner login\nno banner incoming\n" } ok: [c2] => { "msg": "initial configuration for c2\n=========================================\nhostname c2\n!\nno ip domain lookup\nlogging buffered 256000\n\n!\nlldp run\n!\nip host c1 10.0.0.2\nip host c3 10.0.0.4\nip host c4 10.0.0.5\nip host relay 10.0.0.1 2001:db8:cafe::1 2001:db8:cafe:1::1 2001:db8:cafe:2::1 2001:db8:cafe:3::1\nip host s1 2001:db8:cafe:2::6\nip host s2 2001:db8:cafe:3::7\n!\nip routing\n!\nipv6 unicast-routing\n!\n!\ninterface Loopback0\n ip address 10.0.0.3 255.255.255.255\n!\ninterface Ethernet0/0\n no lldp transmit\n no lldp receive\n!\ninterface Ethernet0/1\n description c2 -> [c1,relay]\n no shutdown\n!\n!\nline vty 0 4\n exec-timeout 0 0 \n!\nno banner exec\nno banner login\nno banner incoming\n" } ok: [c3] => { "msg": "initial configuration for c3\n=========================================\nhostname c3\n!\nno ip domain lookup\nlogging buffered 256000\n\n!\nlldp run\n!\nip host c1 10.0.0.2\nip host c2 10.0.0.3\nip host c4 10.0.0.5\nip host relay 10.0.0.1 2001:db8:cafe::1 2001:db8:cafe:1::1 2001:db8:cafe:2::1 2001:db8:cafe:3::1\nip host s1 2001:db8:cafe:2::6\nip host s2 2001:db8:cafe:3::7\n!\nip routing\n!\nipv6 unicast-routing\n!\n!\ninterface Loopback0\n ip address 10.0.0.4 255.255.255.255\n!\ninterface Ethernet0/0\n no lldp transmit\n no lldp receive\n!\ninterface Ethernet0/1\n description c3 -> [c4,relay]\n no shutdown\n!\n!\nline vty 0 4\n exec-timeout 0 0 \n!\nno banner exec\nno banner login\nno banner incoming\n" } ok: [c4] => { "msg": "initial configuration for c4\n=========================================\nhostname c4\n!\nno ip domain lookup\nlogging buffered 256000\n\n!\nlldp run\n!\nip host c1 10.0.0.2\nip host c2 10.0.0.3\nip host c3 10.0.0.4\nip host relay 10.0.0.1 2001:db8:cafe::1 2001:db8:cafe:1::1 2001:db8:cafe:2::1 2001:db8:cafe:3::1\nip host s1 2001:db8:cafe:2::6\nip host s2 2001:db8:cafe:3::7\n!\nip routing\n!\nipv6 unicast-routing\n!\n!\ninterface Loopback0\n ip address 10.0.0.5 255.255.255.255\n!\ninterface Ethernet0/0\n no lldp transmit\n no lldp receive\n!\ninterface Ethernet0/1\n description c4 -> [c3,relay]\n no shutdown\n!\n!\nline vty 0 4\n exec-timeout 0 0 \n!\nno banner exec\nno banner login\nno banner incoming\n" } TASK [Deploy initial configuration] ******************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for relay included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/ios.yml for c1, c2, c3, c4 TASK [eos_config: deploying initial from /work/netlab_cicd/node_files/relay/initial] *** changed: [relay] TASK [ios_config: deploying initial from /work/netlab_cicd/node_files/c1/initial] *** changed: [c4] changed: [c2] changed: [c1] changed: [c3] PLAY [Deploy module-specific configurations] *********************************** TASK [Set variables that cannot be set with VARS] ****************************** ok: [relay] ok: [c1] ok: [c2] ok: [c3] ok: [c4] TASK [Deploy individual configuration modules] ********************************* included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for relay, c1, c2, c3, c4 => (item=dhcp) TASK [Figure out whether to deploy the module dhcp on current device] ********** ok: [relay] ok: [c1] ok: [c2] ok: [c3] ok: [c4] TASK [Find configuration template for dhcp] ************************************ ok: [relay] ok: [c1] ok: [c2] ok: [c3] ok: [c4] TASK [fail] ******************************************************************** skipping: [relay] skipping: [c1] skipping: [c2] skipping: [c3] skipping: [c4] TASK [Find configuration deployment deploy_script for dhcp] ******************** ok: [relay] ok: [c1] ok: [c2] ok: [c3] ok: [c4] TASK [Print deployed configuration when running in verbose mode] *************** ok: [c1] => { "msg": "dhcp configuration for c1\n=========================================\ninterface Ethernet0/1\n ipv6 enable\n ipv6 address dhcp\n" } ok: [relay] => { "msg": "dhcp configuration for relay\n=========================================\ninterface Ethernet1\n ipv6 dhcp relay destination 2001:db8:cafe:2::6\ninterface Ethernet2\n ipv6 dhcp relay destination 2001:db8:cafe:3::7\n" } ok: [c2] => { "msg": "dhcp configuration for c2\n=========================================\ninterface Ethernet0/1\n ipv6 enable\n ipv6 address dhcp\n" } ok: [c3] => { "msg": "dhcp configuration for c3\n=========================================\ninterface Ethernet0/1\n ipv6 enable\n ipv6 address dhcp\n" } ok: [c4] => { "msg": "dhcp configuration for c4\n=========================================\ninterface Ethernet0/1\n ipv6 enable\n ipv6 address dhcp\n" } TASK [Deploy dhcp configuration] *********************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/eos.yml for relay included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/ios.yml for c1, c2, c3, c4 TASK [eos_config: deploying dhcp from /work/netlab_cicd/node_files/relay/dhcp] *** changed: [relay] TASK [ios_config: deploying dhcp from /work/netlab_cicd/node_files/c1/dhcp] **** changed: [c1] changed: [c3] changed: [c2] changed: [c4] PLAY [Deploy custom deployment templates] ************************************** skipping: no hosts matched PLAY RECAP ********************************************************************* c1 : ok=26 changed=2 unreachable=0 failed=0 skipped=6 rescued=0 ignored=0 c2 : ok=25 changed=2 unreachable=0 failed=0 skipped=6 rescued=0 ignored=0 c3 : ok=25 changed=2 unreachable=0 failed=0 skipped=6 rescued=0 ignored=0 c4 : ok=25 changed=2 unreachable=0 failed=0 skipped=6 rescued=0 ignored=0 relay : ok=24 changed=3 unreachable=0 failed=0 skipped=5 rescued=0 ignored=0 Results of configuration script deployments ================================================================================ s1 OK: 1 s2 OK: 1 Use this topology to test the DHCPv6 relay functionality of your device. Use 'netlab validate' to check whether your device propagated DHCPv6 requests from DHCP clients to DHCP servers.