Creating Device configuration snippets [CREATED] h1: initial [CREATED] h2: initial [CREATED] r1: initial,eigrp [CREATED] r2: initial,eigrp Checking Are lab devices ready to be configured? [INFO] Checking SSH server(s) on r2 [SSH] SSH server on node r2 (device iol) is ready after 28.4 seconds Config Deploying device configurations [INFO] Executing initial configuration for node h1 (namespace clab- ml-85-h1) [INFO] Executing initial configuration for node h2 (namespace clab- ml-85-h2) [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: [r1] ok: [r2] TASK [Normalize config on bridge-like devices] ********************************* included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-module.yml for r1, r2 TASK [Figure out whether to deploy the module normalize on current device] ***** ok: [r1] ok: [r2] TASK [Find configuration template for normalize] ******************************* ok: [r1] ok: [r2] TASK [fail] ******************************************************************** skipping: [r1] skipping: [r2] TASK [Find configuration deployment deploy_script for normalize] *************** ok: [r1] ok: [r2] TASK [Print deployed configuration when running in verbose mode] *************** skipping: [r1] skipping: [r2] TASK [Deploy normalize configuration] ****************************************** skipping: [r1] skipping: [r2] TASK [Deploy initial configuration] ******************************************** included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-module.yml for r1, r2 TASK [Figure out whether to deploy the module initial on current device] ******* ok: [r1] ok: [r2] TASK [Find configuration template for initial] ********************************* ok: [r1] ok: [r2] TASK [fail] ******************************************************************** skipping: [r1] skipping: [r2] TASK [Find configuration deployment deploy_script for initial] ***************** ok: [r1] ok: [r2] TASK [Print deployed configuration when running in verbose mode] *************** ok: [r1] => { "msg": "initial configuration for r1\n=========================================\nhostname r1\n!\nno ip domain lookup\nlogging buffered 256000\n\n!\nlldp run\n!\nip host h1 2001:db8:1::1\nip host h2 2001:db8:1:1::2\nip host r2 2001:db8:0:4::1 2001:db8:1:1::4\n!\nip routing\n!\nipv6 unicast-routing\n!\n!\ninterface Loopback0\n ipv6 address 2001:DB8:0:3::1/64\n!\ninterface GigabitEthernet1\n no lldp transmit\n no lldp receive\n!\ninterface GigabitEthernet2\n description r1 -> h1 [stub]\n ipv6 nd ra interval 5\n ipv6 address 2001:DB8:1::3/64\n no shutdown\n!\ninterface GigabitEthernet3\n description r1 -> r2\n ipv6 nd ra interval 5\n ipv6 enable\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: [r2] => { "msg": "initial configuration for r2\n=========================================\nhostname r2\n!\nno ip domain lookup\nlogging buffered 256000\n\n!\nlldp run\n!\nip host h1 2001:db8:1::1\nip host h2 2001:db8:1:1::2\nip host r1 2001:db8:0:3::1 2001:db8:1::3\n!\nip routing\n!\nipv6 unicast-routing\n!\n!\ninterface Loopback0\n ipv6 address 2001:DB8:0:4::1/64\n!\ninterface Ethernet0/0\n no lldp transmit\n no lldp receive\n!\ninterface Ethernet0/1\n description r2 -> r1\n ipv6 nd ra interval 5\n ipv6 enable\n no shutdown\n!\ninterface Ethernet0/2\n description r2 -> h2 [stub]\n ipv6 nd ra interval 5\n ipv6 address 2001:DB8:1:1::4/64\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/net101/tools/netsim/ansible/tasks/deploy-config/ios.yml for r1, r2 TASK [ios_config: deploying initial from /work/netlab_cicd/other_vm/node_files/r1/initial] *** [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: [r1] changed: [r2] PLAY [Deploy module-specific configurations] *********************************** TASK [Set variables that cannot be set with VARS] ****************************** ok: [r1] ok: [r2] TASK [Deploy individual configuration modules] ********************************* included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-module.yml for r1, r2 => (item=eigrp) TASK [Figure out whether to deploy the module eigrp on current device] ********* ok: [r1] ok: [r2] TASK [Find configuration template for eigrp] *********************************** ok: [r1] ok: [r2] TASK [fail] ******************************************************************** skipping: [r1] skipping: [r2] TASK [Find configuration deployment deploy_script for eigrp] ******************* ok: [r1] ok: [r2] TASK [Print deployed configuration when running in verbose mode] *************** ok: [r1] => { "msg": "eigrp configuration for r1\n=========================================\nipv6 router eigrp 2\n eigrp router-id 10.0.0.3\n\n passive-interface GigabitEthernet2\n!\ninterface Loopback0\n ipv6 eigrp 2\n!\ninterface GigabitEthernet2\n ipv6 eigrp 2\n!\ninterface GigabitEthernet3\n ipv6 eigrp 2\n!\n" } ok: [r2] => { "msg": "eigrp configuration for r2\n=========================================\nipv6 router eigrp 2\n eigrp router-id 10.0.0.4\n\n passive-interface Ethernet0/2\n!\ninterface Loopback0\n ipv6 eigrp 2\n!\ninterface Ethernet0/1\n ipv6 eigrp 2\n!\ninterface Ethernet0/2\n ipv6 eigrp 2\n!\n" } TASK [Deploy eigrp configuration] ********************************************** included: /home/pipi/net101/tools/netsim/ansible/tasks/deploy-config/ios.yml for r1, r2 TASK [ios_config: deploying eigrp from /work/netlab_cicd/other_vm/node_files/r1/eigrp] *** changed: [r1] changed: [r2] PLAY [Deploy custom deployment templates] ************************************** skipping: no hosts matched PLAY RECAP ********************************************************************* r1 : ok=20 changed=2 unreachable=0 failed=0 skipped=5 rescued=0 ignored=0 r2 : ok=20 changed=2 unreachable=0 failed=0 skipped=5 rescued=0 ignored=0 Results of configuration script deployments ================================================================================ h1 Script: initial h2 Script: initial Use this topology to test EIGRP IPv6 implementation and route propagation in an IPv6-only network. Two routers (r1, r2) run EIGRP AS 2 and should establish adjacency and exchange routes. Linux hosts should receive IPv6 default routes via router advertisements, enabling end-to-end IPv6 connectivity.