Creating Device configuration snippets [CREATED] dut: initial,ospf,bgp,vrf [CREATED] p1: initial,ospf [CREATED] p2: initial,ospf [CREATED] xf: initial,bgp Checking Are lab devices ready to be configured? [INFO] Checking lab devices with an Ansible playbook [WARNING]: Could not match supplied host pattern, ignoring: netlab_ready_ssh [WARNING]: Found variable using reserved name: hosts PLAY [Wait for SSH servers] **************************************************** skipping: no hosts matched PLAY [Wait for device-specific conditions] ************************************* TASK [Set variables that cannot be set with VARS] ****************************** ok: [dut] TASK [Find device readiness script] ******************************************** ok: [dut] TASK [Wait for device to become ready] ***************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/readiness-check/vyos-clab.yml for dut TASK [wait_for_connection] ***************************************************** ok: [dut] TASK [wait_for] **************************************************************** ok: [dut] PLAY RECAP ********************************************************************* dut : ok=5 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 Config Deploying device configurations [INFO] Executing initial configuration for node p1 [INFO] Executing initial configuration for node p2 [INFO] Executing initial configuration for node xf [INFO] Executing bgp configuration for node xf [INFO] Executing ospf configuration for node p2 [INFO] Executing ospf configuration for node p1 [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: [dut] TASK [Normalize config on bridge-like devices] ********************************* included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut TASK [Figure out whether to deploy the module normalize on current device] ***** ok: [dut] TASK [Find configuration template for normalize] ******************************* ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Find configuration deployment deploy_script for normalize] *************** ok: [dut] TASK [Print deployed configuration when running in verbose mode] *************** skipping: [dut] TASK [Deploy normalize configuration] ****************************************** skipping: [dut] TASK [Deploy initial configuration] ******************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut TASK [Figure out whether to deploy the module initial on current device] ******* ok: [dut] TASK [Find configuration template for initial] ********************************* ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Find configuration deployment deploy_script for initial] ***************** ok: [dut] TASK [Print deployed configuration when running in verbose mode] *************** ok: [dut] => { "msg": "initial configuration for dut\n=========================================\nset system host-name 'dut'\n\nset vrf name d2 table 101\nset vrf name d1 table 100\n\nset interfaces dummy dum0 address 10.0.0.1/32\n\n\n\nset interfaces ethernet eth1 description 'dut -> p1'\n\nset interfaces ethernet eth1 mtu 1500\n\nset interfaces ethernet eth1 address 10.1.0.1/30\n\n\nset interfaces ethernet eth1 vrf d1\n\n\n\nset interfaces ethernet eth2 description 'dut -> p2'\n\nset interfaces ethernet eth2 mtu 1500\n\nset interfaces ethernet eth2 address 10.1.0.5/30\n\n\nset interfaces ethernet eth2 vrf d2\n\n\n\nset interfaces ethernet eth3 description 'dut -> xf [external]'\n\nset interfaces ethernet eth3 mtu 1500\n\nset interfaces ethernet eth3 address 10.1.0.9/30\n\n\nset interfaces ethernet eth3 vrf d2\n\n\n\nset interfaces dummy dum1 description 'VRF Loopback d2'\n\n\nset interfaces dummy dum1 address 192.168.43.1/32\n\n\nset interfaces dummy dum1 vrf d2\n\n\nset service lldp interface all\n>/dev/null 2>/dev/null set service lldp interface eth0 disable\n>/dev/null 2>/dev/null set service lldp interface eth0 mode disable\n\n\nset service ssh\n\ncommit\n\n# Restart FRR to pick up the new hostname\nsudo service frr restart\n" } TASK [Deploy initial configuration] ******************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/vyos.yml for dut TASK [set_fact] **************************************************************** ok: [dut] TASK [template] **************************************************************** changed: [dut] TASK [execute config-initial.sh to deploy initial config from /work/netlab_cicd/other_c/node_files/dut/initial] *** changed: [dut] PLAY [Deploy module-specific configurations] *********************************** TASK [Set variables that cannot be set with VARS] ****************************** ok: [dut] TASK [Deploy individual configuration modules] ********************************* included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut => (item=ospf) included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut => (item=bgp) included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-module.yml for dut => (item=vrf) TASK [Figure out whether to deploy the module ospf on current device] ********** ok: [dut] TASK [Find configuration template for ospf] ************************************ ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Find configuration deployment deploy_script for ospf] ******************** ok: [dut] TASK [Print deployed configuration when running in verbose mode] *************** ok: [dut] => { "msg": "ospf configuration for dut\n=========================================\n" } TASK [Deploy ospf configuration] *********************************************** included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/vyos.yml for dut TASK [set_fact] **************************************************************** ok: [dut] TASK [template] **************************************************************** changed: [dut] TASK [execute config-ospf.sh to deploy ospf config from /work/netlab_cicd/other_c/node_files/dut/ospf] *** changed: [dut] TASK [Figure out whether to deploy the module bgp on current device] *********** ok: [dut] TASK [Find configuration template for bgp] ************************************* ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Find configuration deployment deploy_script for bgp] ********************* ok: [dut] TASK [Print deployed configuration when running in verbose mode] *************** ok: [dut] => { "msg": "bgp configuration for dut\n=========================================\n\nset protocols bgp system-as 65000\n\nset protocols bgp parameters router-id 10.0.0.1\n\n\n\n# Work on Family ipv4\n\nset protocols bgp address-family ipv4-unicast network 10.0.0.1/32\n\n\n" } TASK [Deploy bgp configuration] ************************************************ included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/vyos.yml for dut TASK [set_fact] **************************************************************** ok: [dut] TASK [template] **************************************************************** changed: [dut] TASK [execute config-bgp.sh to deploy bgp config from /work/netlab_cicd/other_c/node_files/dut/bgp] *** changed: [dut] TASK [Figure out whether to deploy the module vrf on current device] *********** ok: [dut] TASK [Find configuration template for vrf] ************************************* ok: [dut] TASK [fail] ******************************************************************** skipping: [dut] TASK [Find configuration deployment deploy_script for vrf] ********************* ok: [dut] TASK [Print deployed configuration when running in verbose mode] *************** ok: [dut] => { "msg": "vrf configuration for dut\n=========================================\nset protocols bgp system-as 65000\n\n# Enter vrf sublevel\nedit vrf name d2\n\n\nset protocols bgp system-as 65000\n\nset protocols bgp parameters router-id 10.0.0.1\n\nset protocols bgp address-family ipv4-unicast rd vpn export 65000:2\nset protocols bgp address-family ipv4-unicast route-target vpn import \"65000:2\"\nset protocols bgp address-family ipv4-unicast route-target vpn export \"65000:2\"\nset protocols bgp address-family ipv4-unicast import vpn\nset protocols bgp address-family ipv4-unicast export vpn\nset protocols bgp address-family ipv4-unicast label vpn export auto\n\n\n\nset protocols bgp address-family ipv4-unicast redistribute connected\nset protocols bgp address-family ipv4-unicast redistribute ospf\n\n# Configure advertised BGP networks\nset protocols bgp address-family ipv4-unicast network 192.168.43.1/32\n\n\n\nset protocols bgp neighbor 10.1.0.10 remote-as 65100\nset protocols bgp neighbor 10.1.0.10 description 'xf'\n \n\n\n\n\nset protocols bgp neighbor 10.1.0.10 address-family ipv4-unicast soft-reconfiguration inbound\n\nset protocols bgp neighbor 10.1.0.10 address-family ipv4-unicast nexthop-self\n\nset protocols bgp neighbor 10.1.0.10 address-family ipv4-unicast disable-send-community extended\n\n\n\nset protocols ospf parameters router-id 10.0.0.1\n\nset protocols ospf redistribute bgp\nset protocols ospf redistribute connected\n\n\nset protocols ospf default-information originate\n\n\n\n\n\n\n\n\n\nset protocols ospf interface eth2 area 0.0.0.0\n\nset protocols ospf interface eth2 network point-to-point\n\n\nset protocols ospf interface dum1 area 0.0.0.0\n\n\n\n# Back to root level\ntop\nedit vrf name d1\n\n\nset protocols bgp system-as 65000\n\nset protocols bgp parameters router-id 10.0.0.1\n\nset protocols bgp address-family ipv4-unicast rd vpn export 65000:1\nset protocols bgp address-family ipv4-unicast route-target vpn import \"65000:1\"\nset protocols bgp address-family ipv4-unicast route-target vpn export \"65000:1\"\nset protocols bgp address-family ipv4-unicast import vpn\nset protocols bgp address-family ipv4-unicast export vpn\nset protocols bgp address-family ipv4-unicast label vpn export auto\n\n\n\nset protocols bgp address-family ipv4-unicast redistribute connected\nset protocols bgp address-family ipv4-unicast redistribute ospf\n\n# Configure advertised BGP networks\n\n\n\nset protocols ospf parameters router-id 10.0.0.1\n\nset protocols ospf redistribute bgp\nset protocols ospf redistribute connected\n\n\nset protocols ospf default-information originate\n\nset protocols ospf default-information originate always\n\n\n\n\n\n\n\n\nset protocols ospf interface eth1 area 0.0.0.0\n\nset protocols ospf interface eth1 network point-to-point\n\n\n# Back to root level\ntop\n" } TASK [Deploy vrf configuration] ************************************************ included: /home/pipi/netlab_gh/netsim/ansible/tasks/deploy-config/vyos.yml for dut TASK [set_fact] **************************************************************** ok: [dut] TASK [template] **************************************************************** changed: [dut] TASK [execute config-vrf.sh to deploy vrf config from /work/netlab_cicd/other_c/node_files/dut/vrf] *** changed: [dut] PLAY [Deploy custom deployment templates] ************************************** skipping: no hosts matched PLAY RECAP ********************************************************************* dut : ok=42 changed=8 unreachable=0 failed=0 skipped=7 rescued=0 ignored=0 Results of configuration script deployments ================================================================================ p1 Script: initial,ospf p2 Script: initial,ospf xf Script: initial,bgp This lab tests the VRF OSPF default route origination. The device under test should originate the default route in multiple VRFs, one always, the other one based on BGP default route.