networklab 26.3__tar.gz → 26.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {networklab-26.3/networklab.egg-info → networklab-26.4}/PKG-INFO +2 -2
- {networklab-26.3 → networklab-26.4}/README.md +1 -1
- {networklab-26.3 → networklab-26.4}/netsim/__init__.py +1 -1
- networklab-26.4/netsim/ansible/tasks/deploy-config/exos.yml +4 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-custom-config.yml +14 -5
- networklab-26.4/netsim/ansible/tasks/fetch-config/exos.yml +3 -0
- {networklab-26.3/netsim/ansible/tasks/fortinet.fortios.fortios → networklab-26.4/netsim/ansible/tasks/fortios}/initial.yml +1 -1
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/arubacx.j2 +5 -20
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/arubacx.macro.j2 +0 -6
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/cumulus_nvue.macro.j2 +5 -22
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/dellos10.j2 +2 -14
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/eos.j2 +2 -20
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/frr.j2 +2 -22
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/ios.j2 +2 -22
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/iosxr.j2 +2 -13
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/junos.j2 +3 -7
- networklab-26.4/netsim/ansible/templates/bgp/junos.macro.j2 +112 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/junos.policy.j2 +6 -70
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/nxos.j2 +2 -10
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/openbsd.j2 +5 -13
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/srlinux.macro.j2 +2 -27
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/sros.gnmi.macro.j2 +4 -25
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/vyos.j2 +5 -21
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/ios-common.j2 +3 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/junos/common.j2 +7 -2
- networklab-26.4/netsim/ansible/templates/gateway/exos.j2 +26 -0
- networklab-26.4/netsim/ansible/templates/initial/exos.j2 +94 -0
- networklab-26.4/netsim/ansible/templates/initial/exos.vlan.j2 +5 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/srlinux.j2 +1 -1
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/srlinux.macro.j2 +1 -1
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/sros.j2 +1 -1
- networklab-26.4/netsim/ansible/templates/normalize/dellos10.j2 +5 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/normalize/eos.j2 +3 -0
- networklab-26.4/netsim/ansible/templates/ospf/exos.j2 +9 -0
- networklab-26.4/netsim/ansible/templates/ospf/exos.ospfv2.j2 +32 -0
- networklab-26.4/netsim/ansible/templates/ospf/exos.ospfv3.j2 +32 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/srlinux.macro.j2 +1 -1
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/sros.j2 +1 -1
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/_redistribute.iosxr.j2 +1 -1
- networklab-26.4/netsim/ansible/templates/routing/fortios.j2 +36 -0
- networklab-26.4/netsim/ansible/templates/routing/junos/aspath.j2 +27 -0
- networklab-26.4/netsim/ansible/templates/routing/junos/community.j2 +32 -0
- networklab-26.4/netsim/ansible/templates/routing/junos/static.j2 +36 -0
- networklab-26.4/netsim/ansible/templates/routing/junos.j2 +19 -0
- networklab-26.4/netsim/ansible/templates/routing/nxos/static.j2 +18 -0
- networklab-26.4/netsim/ansible/templates/routing/nxos.j2 +3 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/openbsd.j2 +14 -0
- networklab-26.3/netsim/ansible/templates/routing/srlinux.j2 → networklab-26.4/netsim/ansible/templates/routing/srlinux/policy.j2 +6 -23
- networklab-26.4/netsim/ansible/templates/routing/srlinux/prefix.j2 +17 -0
- networklab-26.4/netsim/ansible/templates/routing/srlinux/static.j2 +100 -0
- networklab-26.4/netsim/ansible/templates/routing/srlinux.j2 +10 -0
- networklab-26.3/netsim/ansible/templates/routing/sros.j2 → networklab-26.4/netsim/ansible/templates/routing/sros/policy.j2 +2 -3
- networklab-26.4/netsim/ansible/templates/routing/sros/static.j2 +61 -0
- networklab-26.4/netsim/ansible/templates/routing/sros.j2 +7 -0
- networklab-26.4/netsim/ansible/templates/srv6/iosxr.bgp.j2 +16 -0
- networklab-26.4/netsim/ansible/templates/srv6/iosxr.j2 +19 -0
- networklab-26.4/netsim/ansible/templates/vlan/exos.j2 +15 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/arubacx.bgp.j2 +6 -6
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/dellos10.bgp.j2 +2 -2
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/eos.bgp.j2 +2 -2
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/frr.bgp.j2 +1 -1
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/ios.bgp.j2 +1 -1
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/iosxr.bgp.j2 +2 -2
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/junos.bgp.j2 +3 -42
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/nxos.bgp.j2 +2 -2
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/srlinux.j2 +7 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/vyos.bgp.j2 +3 -3
- {networklab-26.3 → networklab-26.4}/netsim/augment/main.py +3 -2
- {networklab-26.3 → networklab-26.4}/netsim/cli/ansible.py +26 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/config.py +2 -18
- {networklab-26.3 → networklab-26.4}/netsim/cli/exec.py +1 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/initial/deploy.py +1 -19
- networklab-26.3/netsim/cli/show.py → networklab-26.4/netsim/cli/show/__init__.py +20 -17
- {networklab-26.3/netsim/cli/show_commands → networklab-26.4/netsim/cli/show}/attributes.py +1 -1
- {networklab-26.3/netsim/cli/show_commands → networklab-26.4/netsim/cli/show}/defaults.py +1 -1
- {networklab-26.3/netsim/cli/show_commands → networklab-26.4/netsim/cli/show}/devices.py +1 -1
- {networklab-26.3/netsim/cli/show_commands → networklab-26.4/netsim/cli/show}/images.py +1 -1
- {networklab-26.3/netsim/cli/show_commands → networklab-26.4/netsim/cli/show}/module_support.py +1 -1
- networklab-26.4/netsim/cli/show/modules.py +285 -0
- {networklab-26.3/netsim/cli/show_commands → networklab-26.4/netsim/cli/show}/outputs.py +1 -1
- {networklab-26.3/netsim/cli/show_commands → networklab-26.4/netsim/cli/show}/providers.py +1 -1
- {networklab-26.3/netsim/cli/show_commands → networklab-26.4/netsim/cli/show}/reports.py +1 -1
- networklab-26.3/netsim/cli/show_commands/__init__.py → networklab-26.4/netsim/cli/show/utils.py +30 -1
- {networklab-26.3 → networklab-26.4}/netsim/cli/status.py +24 -2
- {networklab-26.3 → networklab-26.4}/netsim/daemons/bird/bgp.j2 +24 -19
- {networklab-26.3 → networklab-26.4}/netsim/daemons/bird/ospf.j2 +37 -20
- {networklab-26.3 → networklab-26.4}/netsim/daemons/bird.yml +3 -0
- {networklab-26.3 → networklab-26.4}/netsim/data/types.py +3 -2
- {networklab-26.3 → networklab-26.4}/netsim/defaults/attributes.yml +1 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/arubacx.yml +2 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/crpd.yml +2 -5
- {networklab-26.3 → networklab-26.4}/netsim/devices/cumulus.yml +3 -1
- {networklab-26.3 → networklab-26.4}/netsim/devices/cumulus_nvue.yml +2 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/dellos10.yml +3 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/eos.yml +1 -0
- networklab-26.4/netsim/devices/exos.py +70 -0
- networklab-26.4/netsim/devices/exos.yml +55 -0
- networklab-26.4/netsim/devices/fortios.py +14 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/fortios.yml +4 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/frr.yml +4 -1
- {networklab-26.3 → networklab-26.4}/netsim/devices/ios.yml +2 -1
- {networklab-26.3 → networklab-26.4}/netsim/devices/iosxr.yml +6 -4
- {networklab-26.3 → networklab-26.4}/netsim/devices/junos.py +9 -9
- {networklab-26.3 → networklab-26.4}/netsim/devices/junos.yml +8 -5
- {networklab-26.3 → networklab-26.4}/netsim/devices/none.yml +3 -2
- {networklab-26.3 → networklab-26.4}/netsim/devices/nxos.yml +6 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/openbsd.yml +3 -1
- {networklab-26.3 → networklab-26.4}/netsim/devices/sonic.yml +1 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/srlinux.yml +10 -4
- {networklab-26.3 → networklab-26.4}/netsim/devices/sros.py +26 -10
- {networklab-26.3 → networklab-26.4}/netsim/devices/sros.yml +9 -3
- {networklab-26.3 → networklab-26.4}/netsim/devices/vjunos-router.py +9 -9
- {networklab-26.3 → networklab-26.4}/netsim/devices/vjunos-router.yml +1 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/vjunos-switch.yml +1 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/vmx.py +9 -9
- {networklab-26.3 → networklab-26.4}/netsim/devices/vptx.yml +1 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/vsrx.py +9 -9
- networklab-26.4/netsim/devices/vyos.py +26 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/vyos.yml +2 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/xr.yml +1 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.originate/plugin.py +15 -4
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/plugin.py +2 -2
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/ios.j2 +1 -1
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/sros.j2 +4 -5
- networklab-26.4/netsim/extra/ospf.areas/bird.j2 +1 -0
- networklab-26.4/netsim/install/libvirt/exos.txt +61 -0
- networklab-26.4/netsim/install/libvirt/exos.xml.j2 +52 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/__init__.py +0 -1
- {networklab-26.3 → networklab-26.4}/netsim/modules/_routing.py +1 -1
- {networklab-26.3 → networklab-26.4}/netsim/modules/bgp.py +116 -25
- {networklab-26.3 → networklab-26.4}/netsim/modules/bgp.yml +44 -12
- {networklab-26.3 → networklab-26.4}/netsim/modules/evpn.py +38 -19
- {networklab-26.3 → networklab-26.4}/netsim/modules/evpn.yml +1 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/routing/normalize.py +1 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/routing/policy.py +2 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/sr.yml +1 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/srv6.py +3 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/vrf.py +28 -19
- {networklab-26.3 → networklab-26.4}/netsim/modules/vxlan.py +3 -3
- {networklab-26.3 → networklab-26.4}/netsim/providers/clab.yml +3 -3
- networklab-26.4/netsim/reports/devices.html.j2 +20 -0
- networklab-26.4/netsim/reports/devices.j2 +17 -0
- networklab-26.4/netsim/reports/devices.md.j2 +10 -0
- networklab-26.4/netsim/templates/provider/libvirt/exos-domain.j2 +15 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/suzieq.yml +1 -1
- {networklab-26.3 → networklab-26.4}/netsim/utils/routing.py +8 -3
- {networklab-26.3 → networklab-26.4}/netsim/utils/templates.py +2 -1
- {networklab-26.3 → networklab-26.4/networklab.egg-info}/PKG-INFO +2 -2
- {networklab-26.3 → networklab-26.4}/networklab.egg-info/SOURCES.txt +57 -24
- networklab-26.3/netsim/ansible/templates/bgp/junos.macro.j2 +0 -12
- networklab-26.3/netsim/ansible/templates/routing/junos.j2 +0 -115
- networklab-26.3/netsim/cli/show_commands/modules.py +0 -183
- networklab-26.3/netsim/extra/bgp.originate/defaults.yml +0 -12
- {networklab-26.3 → networklab-26.4}/LICENSE.md +0 -0
- {networklab-26.3 → networklab-26.4}/MANIFEST.in +0 -0
- {networklab-26.3 → networklab-26.4}/netlab +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/collect-configs.ansible +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/config.ansible +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/create-config.ansible +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/device-ready.ansible +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/initial-config.ansible +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/missing.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/reload-config.ansible +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/create-config.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/create-custom-config.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/arcos.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/arubacx.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/asa.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/cumulus.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/cumulus_nvue.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/dellos10.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/eos.yml +0 -0
- /networklab-26.3/netsim/ansible/tasks/deploy-config/fortinet.fortios.fortios.yml → /networklab-26.4/netsim/ansible/tasks/deploy-config/fortios.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/frr.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/ios.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/iosxr.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/junos.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/linux-clab.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/linux.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/missing.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/netscaler.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/none.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/nxos.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/openbsd.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/routeros.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/routeros7.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/sonic.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/srlinux.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/sros.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/vyos-script.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-config/vyos.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/deploy-module.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/_config_cleanup.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/arcos.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/arubacx.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/asa.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/cumulus.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/cumulus_nvue.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/dellos10.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/eos.yml +0 -0
- /networklab-26.3/netsim/ansible/tasks/fetch-config/fortinet.fortios.fortios.yml → /networklab-26.4/netsim/ansible/tasks/fetch-config/fortios.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/frr.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/ios.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/iosxr.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/junos.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/nxos.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/routeros.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/routeros7.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/sonic.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/srlinux.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/sros.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/fetch-config/vyos.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/frr/deploy-config.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/frr/initial-clab.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/initial-config.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/linux/dhcp.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/readiness-check/cumulus_nvue.yml +0 -0
- /networklab-26.3/netsim/ansible/tasks/readiness-check/fortinet.fortios.fortios-clab.yml → /networklab-26.4/netsim/ansible/tasks/readiness-check/fortios-clab.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/readiness-check/junos.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/readiness-check/netscaler.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/readiness-check/nxos.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/readiness-check/sros.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/readiness-check/srsim-hardware.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/readiness-check/srsim.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/readiness-check/ssh.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/readiness-check/vyos-clab.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/reload-config/_copy_config.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/reload-config/eos.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/reload-config/ios.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/reload-config/srlinux.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/vmx/initial.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/tasks/wait-for-ready.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/none.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/nxos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bfd/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/asa.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/asa.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/dellos10.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/eos.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/ios.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/none.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/routeros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/routeros.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/routeros7.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/routeros7.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/sonic.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/bgp/vyos.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/dhcp/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/dhcp/dnsmasq.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/dhcp/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/dhcp/eos.server.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/dhcp/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/dhcp/ios.server.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/dhcp/linux-isc-dhcp-relay.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/dhcp/linux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/eigrp/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/eigrp/nxos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/crpd.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/frr.evpn-config.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/ioll2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/iosxr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/junos/vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/nxos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/vjunos-router.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/vjunos-switch.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/vptx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/evpn/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/crpd.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/frr.vrrp-config.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/iosxr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/nxos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/gateway/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/_debug_commands.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/arcos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/arubacx.vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/arubacx.vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/asa.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/bird-clab.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/cat8000v.vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/crpd.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/csr.vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/dellos10.vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/eos.vrf.j2 +0 -0
- /networklab-26.3/netsim/ansible/templates/initial/fortinet.fortios.fortios.j2 → /networklab-26.4/netsim/ansible/templates/initial/fortios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/frr/daemons.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/iol.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/iol.vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/ioll2.vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/ios.vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/ios.vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/iosvl2.vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/iosxr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/junos.vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/junos.vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/linux/bash_profile.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/linux/create-bond.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/linux/hosts-common.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/linux/hosts.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/linux/packages.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/linux/ubuntu.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/linux/vanilla-ifconfig.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/linux/vanilla.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/linux-clab.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/linux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/netscaler.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/nxos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/nxos.vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/openbsd.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/routeros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/routeros.vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/routeros.vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/routeros7.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/routeros7.vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/routeros7.vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/sonic.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/sros.openconfig.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/vyos.vlan.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/initial/vyos.vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/asa.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/crpd.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/eos.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/frr.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/iosxr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/junos.isis.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/nxos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/sros.openconfig.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/vsrx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/isis/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/lag/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/lag/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/lag/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/lag/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/lag/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/lag/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/lag/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/lag/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/lag/linux-clab.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/lag/linux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/lag/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/missing.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/arubacx.ldp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/arubacx.mplsvpn.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/eos.6pe.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/eos.bgp-lu.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/eos.ldp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/eos.mplsvpn.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/frr.frr-config.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/frr.ldp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/frr.mplsvpn.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/ios.6pe.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/ios.bgp-lu.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/ios.ldp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/ios.mplsvpn.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/iosxr/6pe.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/iosxr/ldp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/iosxr/mplsvpn.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/iosxr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/junos.ldp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/junos.mplsvpn.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/routeros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/routeros.ldp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/routeros.mplsvpn.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/routeros7.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/routeros7.ldp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/routeros7.mplsvpn.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/srlinux.ldp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/sros.bgp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/sros.ldp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/sros.mplsvpn.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/vyos.ldp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/mpls/vyos.mplsvpn.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/normalize/ioll2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/normalize/iosvl2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/arcos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/arubacx.ospfv2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/arubacx.ospfv3.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/asa.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/asa.ospfv2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/cumulus.ospfv2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/cumulus.ospfv3.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/dellos10.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/dellos10.ospfv2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/dellos10.ospfv3.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/eos.ospfv2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/eos.ospfv3.j2 +0 -0
- /networklab-26.3/netsim/ansible/templates/ospf/fortinet.fortios.fortios.j2 → /networklab-26.4/netsim/ansible/templates/ospf/fortios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/frr.ospfv2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/frr.ospfv3.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/ios.ospfv2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/ios.ospfv3.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/iosxr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/junos.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/none.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/nxos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/nxos.ospfv2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/nxos.ospfv3.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/openbsd.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/openbsd.ospfv2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/openbsd.ospfv3.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/routeros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/routeros7.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/routeros7.ospf-include.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/sros.openconfig.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/vyos.default.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/vyos.ospfv2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ospf/vyos.ospfv3.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ripv2/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ripv2/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ripv2/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ripv2/frr.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ripv2/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ripv2/ios.macro.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ripv2/openbsd.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ripv2/openbsd.ripng.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ripv2/openbsd.ripv2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ripv2/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/ripv2/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/_default.ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/_prefix_list_ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/_prefix_list_vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/_redistribute.cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/_redistribute.dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/_redistribute.eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/_redistribute.frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/_redistribute.ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/_route_map_ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/_route_policy_vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/iosxr/aspath.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/iosxr/clist.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/iosxr/policy-delete.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/iosxr/policy-match.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/iosxr/policy-set.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/iosxr/policy.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/iosxr/prefix.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/iosxr/static.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/iosxr.j2 +0 -0
- /networklab-26.3/netsim/ansible/templates/routing/_prefix_list_junos.j2 → /networklab-26.4/netsim/ansible/templates/routing/junos/prefix_list.j2 +0 -0
- /networklab-26.3/netsim/ansible/templates/routing/_route_policy_junos.j2 → /networklab-26.4/netsim/ansible/templates/routing/junos/route_policy.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/linux/ubuntu.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/linux/vanilla.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/linux-clab.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/linux.j2 +0 -0
- /networklab-26.3/netsim/ansible/templates/routing/_redistribute.srlinux.j2 → /networklab-26.4/netsim/ansible/templates/routing/srlinux/redistribute.j2 +0 -0
- /networklab-26.3/netsim/ansible/templates/routing/_redistribute.sros.j2 → /networklab-26.4/netsim/ansible/templates/routing/sros/redistribute.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/routing/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/sr/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/sr/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/sr/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/sr/iosxr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/sr/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/sr/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/sr/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/srv6/frr.bgp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/srv6/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/srv6/ios.bgp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/srv6/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/srv6/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/stp/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/stp/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/stp/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/stp/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/stp/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/stp/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/stp/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/cat8000v.essentials.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/cat8000v.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/cisco8000v.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/csr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/iol.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/ioll2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/iosvl2.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/linux-clab.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/nxos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/routeros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/routeros7.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/vjunos-router.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/vjunos-switch.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/vmx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/vptx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/vsrx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vlan/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/arubacx.ospfv2-vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/arubacx.ospfv3-vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/dellos10.ospfv2-vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/frr.frr-config.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/iosxr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/nxos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/nxos.ospfv2-vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/routeros.bgp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/routeros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/routeros.ospfv2-vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/routeros7.bgp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/routeros7.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/routeros7.ospfv2-vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/vyos.ospfv2-vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vrf/vyos.ospfv3-vrf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/nxos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/vjunos-router.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/vjunos-switch.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/vptx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/ansible/templates/vxlan/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/api/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/addressing.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/components.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/config.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/devices.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/groups.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/links.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/nodes.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/tools.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/topology.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/augment/validate.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/_nodeset.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/alias.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/api.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/capture.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/clab.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/clab_actions/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/clab_actions/build.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/clab_actions/cleanup.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/clab_actions/tarball.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/collect.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/connect.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/create.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/defaults.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/down.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/empty.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/external_commands.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/graph.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/help.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/initial/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/initial/configs.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/initial/ready.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/initial/utils.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/inspect.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/install.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/libvirt/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/libvirt/config.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/libvirt/package.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/libvirt/remove.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/read.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/report.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/restart.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/show-usage.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/tc.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/test.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/up.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/usage.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/usage.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/usage_actions/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/usage_actions/show.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/usage_actions/utils.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/validate/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/validate/devices.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/validate/parse.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/validate/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/validate/report.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/validate/source.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/validate/suzieq.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/validate/tests.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/validate/utils.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/cli/version.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/common.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/bird/Dockerfile +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/bird/Dockerfile.v3 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/bird/bfd.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/bird/bird.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/bird/protocols.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/bird/radv.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/bird/routing.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/dnsmasq/Dockerfile +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/dnsmasq/dhcp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/dnsmasq/dnsmasq.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/dnsmasq.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/kind/initial.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/kind.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/daemons/netscaler/Dockerfile.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/data/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/data/filemaps.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/data/global_vars.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/data/validate.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/defaults/addressing.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/defaults/automation.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/defaults/const.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/defaults/hints.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/defaults/multilab.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/defaults/netlab.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/defaults/paths.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/defaults/ports.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/defaults/warnings.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/_common.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/arubacx.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/asav.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/asav.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/bird.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/cat8000v.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/cat8000v.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/cisco8000v.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/cisco8000v.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/crpd.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/csr.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/csr.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/cumulus.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/cumulus_nvue.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/dellos10.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/eos.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/frr.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/iol.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/iol.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/ioll2.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/ioll2.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/iosv.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/iosv.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/iosvl2.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/iosvl2.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/iosxr.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/linux.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/linux.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/netscaler.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/nxos.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/openbsd.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/routeros.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/routeros7.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/srlinux.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/srsim.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/srsim.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/unknown.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/unknown.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/vjunos-switch.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/vmx.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/vptx.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/devices/vsrx.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.domain/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.domain/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/_route_map_ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/iosxr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/simple-attributes.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.policy/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/_sample_bfd_template.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/bird.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/iosxr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/nxos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/openbsd.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/routeros7.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bgp.session/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bonding/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bonding/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bonding/linux-clab.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bonding/linux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/bonding/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/check.config/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/cumulus.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/ebgp-multihop-load-balancing.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/iosxr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.multihop/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ebgp.utils/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/evpn.multihoming/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/evpn.multihoming/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/evpn.multihoming/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/evpn.multihoming/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/evpn.multihoming/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/evpn.multihoming/vjunos-switch.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/fabric/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/fabric/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/files/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/files/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/firewall.zonebased/defaults.yml +0 -0
- /networklab-26.3/netsim/extra/firewall.zonebased/deploy.fortinet.fortios.fortios.yml → /networklab-26.4/netsim/extra/firewall.zonebased/deploy.fortios.yml +0 -0
- /networklab-26.3/netsim/extra/firewall.zonebased/fortinet.fortios.fortios.j2 → /networklab-26.4/netsim/extra/firewall.zonebased/fortios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/firewall.zonebased/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/firewall.zonebased/vsrx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/firewall.zonebased/vyos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/kind/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/kind/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/mlag.vtep/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/mlag.vtep/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/multilab/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/node.clone/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/node.clone/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/none/none.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ospf.areas/arubacx.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ospf.areas/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ospf.areas/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ospf.areas/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ospf.areas/eos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ospf.areas/frr.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ospf.areas/ios.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ospf.areas/junos.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ospf.areas/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/ospf.areas/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/proxy-arp/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/proxy-arp/srlinux.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/proxy-arp/sros.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/test.fixup/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/test.vrf_check/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/vrrp.version/cumulus_nvue.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/vrrp.version/defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/vrrp.version/dellos10.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/extra/vrrp.version/plugin.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/ansible.sh +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/apt-get-update.sh +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/containerlab.sh +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/graph.sh +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/grpc.sh +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/install.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/arubacx.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/asav/day0-config +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/asav.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/asav.xml.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/cat8000v/iosxe_config.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/cat8000v.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/cat8000v.xml.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/csr.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/dellos10/run.sh +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/dellos10.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/eos.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/eos.xml.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/fortios/openstack/latest/user_data +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/fortios.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/fortios.xml.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/frr/meta-data +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/frr/user-data.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/frr.xml.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/iosv.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/iosv.xml.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/iosvl2.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/iosxr/iosxr_config.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/iosxr.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/nxos.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/nxos.xml.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/openbsd/meta-data +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/openbsd/network-config +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/openbsd/user-data +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/openbsd.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/openbsd.xml.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/routeros7.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/sonic.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/sonic.xml.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/vptx/juniper.conf +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/vptx/make-config.sh +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/vptx/run.sh +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/vptx.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/vptx.xml.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/vsrx/juniper.conf +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt/vsrx.txt +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/libvirt.sh +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/install/ubuntu.sh +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/_dataplane.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/bfd.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/bfd.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/dhcp.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/dhcp.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/eigrp.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/eigrp.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/gateway.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/gateway.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/initial.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/isis.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/isis.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/lag.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/lag.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/mpls.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/mpls.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/ospf.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/ospf.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/ripv2.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/ripv2.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/routing/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/routing/aspath.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/routing/clist.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/routing/prefix.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/routing/static.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/routing.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/sr.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/srv6.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/stp.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/stp.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/vlan.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/vlan.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/vrf.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/modules/vxlan.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/_graph.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/ansible.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/ansible.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/common.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/config.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/d2.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/d2.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/devices.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/format.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/graph.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/graph.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/graphite.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/json.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/none.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/pickle.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/provider.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/report.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/tools.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/outputs/yaml.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/providers/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/providers/clab.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/providers/external.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/providers/external.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/providers/libvirt.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/providers/libvirt.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/providers/virtualbox.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/providers/virtualbox.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/py.typed +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/addressing-link.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/addressing-node.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/addressing.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/addressing.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/addressing.md.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/bgp-asn.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/bgp-asn.md.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/bgp-neighbor-short.md.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/bgp-neighbor.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/bgp-neighbor.md.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/bgp-prefix.include.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/bgp.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/bgp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/isis-interfaces.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/isis-interfaces.md.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/isis-nodes.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/isis-nodes.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/isis-nodes.md.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/mgmt.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/mgmt.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/nodes.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/ospf-areas.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/ospf-areas.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/ospf-areas.md.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/ospf-utils.include.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/ospfv3.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/ospfv3.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/ospfv3.md.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/page.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/ssh_config.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/wiring-columns.include.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/wiring.html.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/wiring.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/reports/wiring.md.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/roles/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/roles/bridge.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/roles/host.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/roles/router.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/ansible.cfg.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/clab.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/crpd/hosts.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/crpd/netlab-config.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/cumulus/hosts.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/cumulus/interfaces.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/eos/ceos-config.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/frr/daemons.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/frr/hosts.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/iol/ifstate.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/ioll2/ifstate.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/iosxr/netlab-config.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/linux/hosts.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/clab/srlinux/hosts.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/external/external.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/Vagrantfile.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/_debian_vagrant_password.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/arcos-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/arubacx-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/asav-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/cat8000v-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/csr-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/cumulus-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/cumulus_nvue-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/define-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/dellos10-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/eos-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/fortios-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/forwarded-ports.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/frr-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/iosv-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/iosvl2-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/iosxr-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/libvirt-bridge.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/libvirt-tunnel.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/linux-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/none-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/nxos-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/openbsd-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/routeros-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/routeros7-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/sonic-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/vagrant-libvirt.xml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/vptx-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/vsrx-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/libvirt/vyos-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/virtualbox/Vagrantfile.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/virtualbox/arcos-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/virtualbox/cumulus-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/virtualbox/eos-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/virtualbox/frr-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/virtualbox/linux-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/virtualbox/nxos-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/virtualbox/virtualbox-network.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/virtualbox/virtualbox-ports.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/provider/virtualbox/vsrx-domain.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/tests/clab.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/tests/grpc.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/tests/libvirt.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/templates/tests/virtualbox.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/edgeshark.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/graphite.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/graphite.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/nso.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/nuts/inventory/groups.yaml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/nuts/inventory/hosts.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/nuts/nr-config.yaml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/nuts/tests/test_bgp.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/nuts/tests/test_interfaces.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/nuts/tests/test_ospf.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/nuts.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/suzieq/suzieq-cfg.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/tools/suzieq/suzieq.inventory.j2 +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/topology-defaults.yml +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/callback.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/files.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/filters.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/linuxbridge.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/log.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/read.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/sort.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/stats.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/status.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/strings.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/utils/versioning.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/_common.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/bgp/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/bgp/eos.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/bgp/frr.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/crpd.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/cumulus.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/eos.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/frr.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/isis/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/isis/frr.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/linux.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/ospf/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/ospf/eos.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/ospf/frr.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/route/__init__.py +0 -0
- {networklab-26.3 → networklab-26.4}/netsim/validate/route/frr.py +0 -0
- {networklab-26.3 → networklab-26.4}/networklab.egg-info/dependency_links.txt +0 -0
- {networklab-26.3 → networklab-26.4}/networklab.egg-info/requires.txt +0 -0
- {networklab-26.3 → networklab-26.4}/networklab.egg-info/top_level.txt +0 -0
- {networklab-26.3 → networklab-26.4}/requirements.txt +0 -0
- {networklab-26.3 → networklab-26.4}/setup.cfg +0 -0
- {networklab-26.3 → networklab-26.4}/setup.py +0 -0
- {networklab-26.3 → networklab-26.4}/tests/test_transformation.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: networklab
|
|
3
|
-
Version: 26.
|
|
3
|
+
Version: 26.4
|
|
4
4
|
Summary: CLI-based Virtual Networking Lab Abstraction Layer
|
|
5
5
|
Home-page: https://github.com/ipspace/netlab
|
|
6
6
|
Author: Ivan Pepelnjak
|
|
@@ -60,7 +60,7 @@ Interested? [Read the documentation](https://netlab.tools) (also available on [G
|
|
|
60
60
|
|
|
61
61
|
## Releases
|
|
62
62
|
|
|
63
|
-
The latest release is [release 26.
|
|
63
|
+
The latest release is [release 26.04](https://github.com/ipspace/netlab/releases/tag/release_26.04). It should be pretty stable, but if you encounter bugs, please report them as [GitHub issues](https://github.com/ipspace/netlab/issues/new/choose) and use [release 26.03](https://github.com/ipspace/netlab/releases/tag/release_26.03).
|
|
64
64
|
|
|
65
65
|
<!--
|
|
66
66
|
or [1.8.4-post2](https://github.com/ipspace/netlab/releases/tag/release_1.8.4-post2).
|
|
@@ -17,7 +17,7 @@ Interested? [Read the documentation](https://netlab.tools) (also available on [G
|
|
|
17
17
|
|
|
18
18
|
## Releases
|
|
19
19
|
|
|
20
|
-
The latest release is [release 26.
|
|
20
|
+
The latest release is [release 26.04](https://github.com/ipspace/netlab/releases/tag/release_26.04). It should be pretty stable, but if you encounter bugs, please report them as [GitHub issues](https://github.com/ipspace/netlab/issues/new/choose) and use [release 26.03](https://github.com/ipspace/netlab/releases/tag/release_26.03).
|
|
21
21
|
|
|
22
22
|
<!--
|
|
23
23
|
or [1.8.4-post2](https://github.com/ipspace/netlab/releases/tag/release_1.8.4-post2).
|
|
@@ -42,11 +42,20 @@
|
|
|
42
42
|
verbosity: 1
|
|
43
43
|
tags: [ test, custom ]
|
|
44
44
|
|
|
45
|
-
# Find deployment task list. It could be a config-specific tasklist (somewhere
|
|
46
|
-
# file name from paths_custom.tasks list) or a
|
|
47
|
-
#
|
|
48
|
-
#
|
|
45
|
+
# Find deployment task list. It could be a config-specific tasklist (somewhere
|
|
46
|
+
# in paths_custom directories with file name from paths_custom.tasks list) or a
|
|
47
|
+
# generic deployment tasklist from deployment directories and using generic
|
|
48
|
+
# deployment task names (a combination of ansible_network_os and
|
|
49
|
+
# netlab_provider). missing.yml in the deployment directory is the catch-all of
|
|
50
|
+
# last resort.
|
|
49
51
|
#
|
|
52
|
+
# Please note that the 'paths_custom.dirs' is changed by netlab initial/config.
|
|
53
|
+
# 'paths_custom.task_dirs' is a copy of the original 'paths_custom.dirs'
|
|
54
|
+
#
|
|
55
|
+
- block:
|
|
56
|
+
- debug: var=paths_custom.task_dirs
|
|
57
|
+
- debug: var=paths_custom.tasks
|
|
58
|
+
when: ansible_verbosity > 1
|
|
50
59
|
- name: Find custom configuration deployment script
|
|
51
60
|
set_fact:
|
|
52
61
|
deploy_task:
|
|
@@ -55,7 +64,7 @@
|
|
|
55
64
|
vars:
|
|
56
65
|
node_provider: "{{ provider|default(netlab_provider) }}"
|
|
57
66
|
c_params:
|
|
58
|
-
paths: "{{ paths_custom.
|
|
67
|
+
paths: "{{ paths_custom.task_dirs }}"
|
|
59
68
|
files: "{{ paths_custom.tasks }}"
|
|
60
69
|
d_params:
|
|
61
70
|
paths: "{{ paths_deploy.dirs }}"
|
|
@@ -23,33 +23,18 @@ router bgp {{ bgp.as }}
|
|
|
23
23
|
{% for af in ['ipv4','ipv6'] if bgp[af] is defined %}
|
|
24
24
|
address-family {{ af }} unicast
|
|
25
25
|
!
|
|
26
|
-
{%
|
|
27
|
-
{%
|
|
26
|
+
{% if bgp.import is defined %}
|
|
27
|
+
{% for s_proto,s_data in bgp.import.items() %}
|
|
28
28
|
redistribute {{ s_proto }}{%
|
|
29
29
|
if s_proto == 'ospf' and af == 'ipv6' %}v3{% endif %}{%
|
|
30
30
|
if 'policy' in s_data %} route-map {{ s_data.policy }}-{{ af }}{% endif +%}
|
|
31
|
-
{%
|
|
32
|
-
{% endif %}
|
|
33
|
-
|
|
34
|
-
{% if loopback[af] is defined and bgp.advertise_loopback %}
|
|
35
|
-
{{ bgpcfg.bgp_network(af,loopback[af]) }}
|
|
31
|
+
{% endfor %}
|
|
36
32
|
{% endif %}
|
|
37
|
-
|
|
38
|
-
{
|
|
39
|
-
{{ bgpcfg.bgp_network(af,l[af]) }}
|
|
40
|
-
{% endfor %}
|
|
41
|
-
{% for pfx in bgp.originate|default([]) if af == 'ipv4' %}
|
|
42
|
-
{{ bgpcfg.bgp_network(af,pfx) }}
|
|
33
|
+
{% for pfx in bgp.advertise|default([]) if af in pfx %}
|
|
34
|
+
network {{ pfx[af] }}
|
|
43
35
|
{% endfor %}
|
|
44
36
|
!
|
|
45
37
|
{% for n in bgp.neighbors if n[af] is defined and n.activate[af] is defined and n.activate[af] %}
|
|
46
38
|
{{ bgpcfg.neighbor_af(n,n[af],bgp) }}
|
|
47
39
|
{% endfor %}
|
|
48
40
|
{% endfor %}
|
|
49
|
-
!
|
|
50
|
-
{#
|
|
51
|
-
Add extra IPv4 prefixes
|
|
52
|
-
#}
|
|
53
|
-
{% for pfx in bgp.originate|default([]) %}
|
|
54
|
-
ip route {{ pfx|ansible.utils.ipaddr('network') }} {{ pfx|ansible.utils.ipaddr('netmask') }} nullroute
|
|
55
|
-
{% endfor %}
|
|
@@ -35,19 +35,12 @@
|
|
|
35
35
|
{{ redistribute.config(vrf_bgp,af=af)|indent(16,first=True) }}
|
|
36
36
|
{% endif %}
|
|
37
37
|
{% set _loopback = [ vrf.loopback[af]|ansible.utils.ipaddr(0) ] if vrf.loopback[af] is defined and bgp.advertise_loopback|default(True) else [] %}
|
|
38
|
-
{%
|
|
39
|
-
{%
|
|
40
|
-
{% set data.networks = data.networks + [ l[af]|ansible.utils.ipaddr(0) ] %}
|
|
41
|
-
{% endfor %}
|
|
42
|
-
{% for pfx in vrf_bgp.originate|default([]) if af == 'ipv4' %}
|
|
43
|
-
{% set data.networks = data.networks + [ pfx|ansible.utils.ipaddr(0) ] %}
|
|
44
|
-
{% endfor %}
|
|
45
|
-
{% if data.networks!=[] %}
|
|
38
|
+
{% for pfx in vrf_bgp.advertise|default([]) if af in pfx %}
|
|
39
|
+
{% if loop.first %}
|
|
46
40
|
network:
|
|
47
|
-
{%
|
|
48
|
-
{{ pfx }}: {}
|
|
49
|
-
{%
|
|
50
|
-
{% endif %}
|
|
41
|
+
{% endif %}
|
|
42
|
+
{{ pfx[af] }}: {}
|
|
43
|
+
{% endfor %}
|
|
51
44
|
{% endfor %}
|
|
52
45
|
{% for n in vrf_bgp.neighbors|default([]) %}
|
|
53
46
|
{% if loop.first %}
|
|
@@ -112,14 +105,4 @@
|
|
|
112
105
|
{% endif %}
|
|
113
106
|
{% endfor %}
|
|
114
107
|
{% endfor %}
|
|
115
|
-
{% if vrf_bgp.originate is defined %}
|
|
116
|
-
static:
|
|
117
|
-
{% for pfx in vrf_bgp.originate|default([]) %}
|
|
118
|
-
{{ pfx|ansible.utils.ipaddr('0') }}:
|
|
119
|
-
address-family: ipv4-unicast
|
|
120
|
-
via:
|
|
121
|
-
blackhole:
|
|
122
|
-
type: blackhole
|
|
123
|
-
{% endfor %}
|
|
124
|
-
{% endif %}
|
|
125
108
|
{% endmacro %}
|
|
@@ -37,21 +37,9 @@ router bgp {{ bgp.as }}
|
|
|
37
37
|
address-family {{ af }} unicast
|
|
38
38
|
!
|
|
39
39
|
{{ redistribute.config(bgp,af=af,ospf_pid=ospf_pid) }}
|
|
40
|
-
{%
|
|
41
|
-
network {{
|
|
42
|
-
{% endif %}
|
|
43
|
-
!
|
|
44
|
-
{% for l in interfaces|default([]) if l.bgp.advertise|default("") and l[af] is defined and not 'vrf' in l %}
|
|
45
|
-
network {{ l[af]|ansible.utils.ipaddr('0') }}
|
|
46
|
-
{% endfor %}
|
|
47
|
-
!
|
|
48
|
-
{% for pfx in bgp.originate|default([]) if af == 'ipv4' %}
|
|
49
|
-
network {{ pfx|ansible.utils.ipaddr('0') }}
|
|
40
|
+
{% for pfx in bgp.advertise|default([]) if af in pfx %}
|
|
41
|
+
network {{ pfx[af] }}
|
|
50
42
|
{% endfor %}
|
|
51
43
|
!
|
|
52
44
|
{% endif %}
|
|
53
45
|
{% endfor %}
|
|
54
|
-
!
|
|
55
|
-
{% for pfx in bgp.originate|default([]) %}
|
|
56
|
-
ip route {{ pfx|ansible.utils.ipaddr('0') }} interface null 0
|
|
57
|
-
{% endfor %}
|
|
@@ -66,22 +66,8 @@ router bgp {{ bgp.as }}
|
|
|
66
66
|
address-family {{ af }}
|
|
67
67
|
{{ redistribute.config(bgp,af=af) }}
|
|
68
68
|
!
|
|
69
|
-
{% for
|
|
70
|
-
{
|
|
71
|
-
!
|
|
72
|
-
! Originate networks from connected subnets
|
|
73
|
-
!
|
|
74
|
-
{% endif %}
|
|
75
|
-
network {{ l[af]|ansible.utils.ipaddr('0') }}
|
|
76
|
-
{% endfor %}
|
|
77
|
-
!
|
|
78
|
-
{% for pfx in bgp.originate|default([]) if af == 'ipv4' %}
|
|
79
|
-
{% if loop.first %}
|
|
80
|
-
!
|
|
81
|
-
! Originate networks from static routes
|
|
82
|
-
!
|
|
83
|
-
{% endif %}
|
|
84
|
-
network {{ pfx|ansible.utils.ipaddr('0') }}
|
|
69
|
+
{% for pfx in bgp.advertise|default([]) if af in pfx %}
|
|
70
|
+
network {{ pfx[af] }}
|
|
85
71
|
{% endfor %}
|
|
86
72
|
!
|
|
87
73
|
{% for n in bgp.neighbors if n.activate[af]|default(false) %}
|
|
@@ -99,7 +85,3 @@ router bgp {{ bgp.as }}
|
|
|
99
85
|
{% endfor %}
|
|
100
86
|
{% endif %}
|
|
101
87
|
{% endfor %}
|
|
102
|
-
!
|
|
103
|
-
{% for pfx in bgp.originate|default([]) %}
|
|
104
|
-
ip route {{ pfx|ansible.utils.ipaddr('0') }} Null0
|
|
105
|
-
{% endfor %}
|
|
@@ -46,21 +46,8 @@ router bgp {{ bgp.as }}
|
|
|
46
46
|
address-family {{ af }} unicast
|
|
47
47
|
!
|
|
48
48
|
{{ redistribute.config(bgp,af=af) }}
|
|
49
|
-
{% for
|
|
50
|
-
{
|
|
51
|
-
!
|
|
52
|
-
! Originate networks from connected subnets
|
|
53
|
-
!
|
|
54
|
-
{% endif %}
|
|
55
|
-
network {{ l[af]|ansible.utils.ipaddr(0) }}
|
|
56
|
-
{% endfor %}
|
|
57
|
-
{% for pfx in bgp.originate|default([]) if af == 'ipv4' %}
|
|
58
|
-
{% if loop.first %}
|
|
59
|
-
!
|
|
60
|
-
! Originate networks from static routes
|
|
61
|
-
!
|
|
62
|
-
{% endif %}
|
|
63
|
-
network {{ pfx|ansible.utils.ipaddr('0') }}
|
|
49
|
+
{% for pfx in bgp.advertise|default([]) if af in pfx %}
|
|
50
|
+
network {{ pfx[af] }}
|
|
64
51
|
{% endfor %}
|
|
65
52
|
!
|
|
66
53
|
{% for n in bgp.neighbors if n.activate[af]|default(false) %}
|
|
@@ -87,11 +74,4 @@ router bgp {{ bgp.as }}
|
|
|
87
74
|
{% endfor %}
|
|
88
75
|
{% endfor %}
|
|
89
76
|
!
|
|
90
|
-
{#
|
|
91
|
-
Advertise extra networks
|
|
92
|
-
#}
|
|
93
|
-
{% for pfx in bgp.originate|default([]) %}
|
|
94
|
-
ip route {{ pfx|ansible.utils.ipaddr('0') }} Null0
|
|
95
|
-
{% endfor %}
|
|
96
|
-
!
|
|
97
77
|
do write
|
|
@@ -36,31 +36,11 @@ router bgp {{ bgp.as }}
|
|
|
36
36
|
{{ redistribute.config(bgp,af=af,ospf_pid=ospf_pid)|indent(1,first=True) }}
|
|
37
37
|
{% endif %}
|
|
38
38
|
!
|
|
39
|
-
{% for
|
|
40
|
-
{
|
|
41
|
-
!
|
|
42
|
-
! Originate networks from connected subnets
|
|
43
|
-
!
|
|
44
|
-
{% endif %}
|
|
45
|
-
{{ bgpcfg.bgp_network(af,l[af]) }}
|
|
46
|
-
{% endfor %}
|
|
47
|
-
{% for pfx in bgp.originate|default([]) if af == 'ipv4' %}
|
|
48
|
-
{% if loop.first %}
|
|
49
|
-
!
|
|
50
|
-
! Originate networks from static routes
|
|
51
|
-
!
|
|
52
|
-
{% endif %}
|
|
53
|
-
{{ bgpcfg.bgp_network(af,pfx) }}
|
|
39
|
+
{% for pfx in bgp.advertise|default([]) if af in pfx %}
|
|
40
|
+
{{ bgpcfg.bgp_network(af,pfx[af]) }}
|
|
54
41
|
{% endfor %}
|
|
55
42
|
!
|
|
56
43
|
{% for n in bgp.neighbors if n.activate[af]|default(false) %}
|
|
57
44
|
{{ bgpcfg.neighbor_af(n,n[af],bgp) }}
|
|
58
45
|
{% endfor %}
|
|
59
46
|
{% endfor %}
|
|
60
|
-
!
|
|
61
|
-
{#
|
|
62
|
-
Add extra IPv4 prefixes
|
|
63
|
-
#}
|
|
64
|
-
{% for pfx in bgp.originate|default([]) %}
|
|
65
|
-
ip route {{ pfx|ansible.utils.ipaddr('network') }} {{ pfx|ansible.utils.ipaddr('netmask') }} null 0
|
|
66
|
-
{% endfor %}
|
|
@@ -57,14 +57,6 @@
|
|
|
57
57
|
{% endif %}
|
|
58
58
|
{% endmacro -%}
|
|
59
59
|
!
|
|
60
|
-
{% if bgp.originate|default([]) %}
|
|
61
|
-
router static
|
|
62
|
-
address-family ipv4 unicast
|
|
63
|
-
{% for pfx in bgp.originate|default([]) %}
|
|
64
|
-
{{ pfx|ansible.utils.ipaddr('0') }} Null0
|
|
65
|
-
{% endfor %}
|
|
66
|
-
{% endif %}
|
|
67
|
-
!
|
|
68
60
|
router bgp {{ bgp.as }}
|
|
69
61
|
{{ bgp_common(bgp) }}
|
|
70
62
|
{% if bgp.confederation is defined %}
|
|
@@ -79,15 +71,12 @@ router bgp {{ bgp.as }}
|
|
|
79
71
|
address-family {{ af }} unicast
|
|
80
72
|
bgp scan-time 5
|
|
81
73
|
!
|
|
82
|
-
{% for l in netlab_interfaces if l.bgp.advertise|default("") and l[af] is defined and not 'vrf' in l %}
|
|
83
|
-
network {{ l[af]|ansible.utils.ipaddr(0) }}
|
|
84
|
-
{% endfor %}
|
|
85
74
|
{% if bgp.import is defined %}
|
|
86
75
|
{{ redistribute.config(bgp,af=af,ospf_pid=ospf_pid,t_proto='bgp')|indent(1,first=True) }}
|
|
87
76
|
{% endif %}
|
|
88
77
|
!
|
|
89
|
-
{% for pfx in bgp.
|
|
90
|
-
network {{ pfx
|
|
78
|
+
{% for pfx in bgp.advertise|default([]) if af in pfx %}
|
|
79
|
+
network {{ pfx[af] }}
|
|
91
80
|
{% endfor %}
|
|
92
81
|
{% endfor %}
|
|
93
82
|
{% for af in ['ipv4','ipv6'] %}
|
|
@@ -6,12 +6,8 @@ routing-options {
|
|
|
6
6
|
{% if bgp.router_id is defined %}
|
|
7
7
|
router-id {{ bgp.router_id }}
|
|
8
8
|
{% endif %}
|
|
9
|
-
{% if bgp.
|
|
10
|
-
|
|
11
|
-
{% for pfx in bgp.originate|default([]) %}
|
|
12
|
-
route {{ pfx|ansible.utils.ipaddr('0') }} discard;
|
|
13
|
-
{% endfor %}
|
|
14
|
-
}
|
|
9
|
+
{% if bgp.confederation is defined %}
|
|
10
|
+
confederation {{ bgp.confederation.as }} members [ {{ bgp.as }} {{ bgp.confederation.peers|join(' ') }} ]
|
|
15
11
|
{% endif %}
|
|
16
12
|
}
|
|
17
13
|
|
|
@@ -57,7 +53,7 @@ protocols {
|
|
|
57
53
|
];
|
|
58
54
|
advertise-inactive;
|
|
59
55
|
{# treat localas_ibgp as ebgp session --> no usage of local address #}
|
|
60
|
-
{% for n in bgp.neighbors if
|
|
56
|
+
{% for n in bgp.neighbors if n.type in ['ebgp','confed_ebgp','localas_ibgp'] %}
|
|
61
57
|
{% for af in ['ipv4','ipv6'] if n[af] is defined %}
|
|
62
58
|
neighbor {{ n[af] }} {
|
|
63
59
|
{# apply per-neighbor policies, if defined #}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
{#
|
|
2
|
+
Macro to create the common objects (mark community, bgp-final policy)
|
|
3
|
+
#}
|
|
4
|
+
{% macro common(vname) %}
|
|
5
|
+
delete: policy-statement bgp-{{ vname }}-redistribute;
|
|
6
|
+
delete: route-filter-list bgp-{{ vname }}-announce-ipv4;
|
|
7
|
+
delete: route-filter-list bgp-{{ vname }}-announce-ipv6;
|
|
8
|
+
|
|
9
|
+
community x-route-permit-mark members large:65535:0:65536;
|
|
10
|
+
|
|
11
|
+
policy-statement bgp-final {
|
|
12
|
+
term final-option {
|
|
13
|
+
from community x-route-permit-mark;
|
|
14
|
+
then {
|
|
15
|
+
community delete x-route-permit-mark;
|
|
16
|
+
accept;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
term default-reject {
|
|
20
|
+
then reject;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
{% endmacro %}
|
|
24
|
+
{#
|
|
25
|
+
Macro for BGP neighbor policy application
|
|
26
|
+
Uses custom neigh._junos_policy.xxx attributes
|
|
27
|
+
#}
|
|
28
|
+
{% macro bgp_neighbor_policy(n) %}
|
|
29
|
+
{% for p_direction in ['import', 'export'] %}
|
|
30
|
+
{% if n._junos_policy[p_direction]|default([]) %}
|
|
31
|
+
{{p_direction}} [ {{ n._junos_policy[p_direction]|join(' ') }} ];
|
|
32
|
+
{% endif %}
|
|
33
|
+
{% endfor %}
|
|
34
|
+
{%- endmacro %}
|
|
35
|
+
{#
|
|
36
|
+
Macro to create the per-routing-instance advertise prefix lists
|
|
37
|
+
#}
|
|
38
|
+
{% macro advertise_list(bgp,vname) %}
|
|
39
|
+
{% for bgp_af in ['ipv4','ipv6'] %}
|
|
40
|
+
{% for pfx in bgp.advertise|default([]) if bgp_af in pfx %}
|
|
41
|
+
{% if loop.first %}
|
|
42
|
+
route-filter-list bgp-{{ vname }}-announce-{{ bgp_af }} {
|
|
43
|
+
{% endif %}
|
|
44
|
+
{{ pfx[bgp_af] }} exact;
|
|
45
|
+
{% if loop.last %}
|
|
46
|
+
}
|
|
47
|
+
{% endif %}
|
|
48
|
+
{% endfor %}
|
|
49
|
+
{% endfor %}
|
|
50
|
+
{% endmacro +%}
|
|
51
|
+
{#
|
|
52
|
+
Macro to create per-routing-instance advertise terms
|
|
53
|
+
#}
|
|
54
|
+
{% macro advertise_terms(bgp,vname) %}
|
|
55
|
+
{% for bgp_af in af %}
|
|
56
|
+
{% for pfx in bgp.advertise|default([]) if bgp_af in pfx %}
|
|
57
|
+
{% if loop.first %}
|
|
58
|
+
term advertise-{{ bgp_af }} {
|
|
59
|
+
from {
|
|
60
|
+
route-filter-list bgp-{{ vname }}-announce-{{ bgp_af }};
|
|
61
|
+
}
|
|
62
|
+
then {
|
|
63
|
+
community add x-route-permit-mark;
|
|
64
|
+
next policy;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
{% endif %}
|
|
68
|
+
{% endfor %}
|
|
69
|
+
{% endfor %}
|
|
70
|
+
{% endmacro +%}
|
|
71
|
+
{#
|
|
72
|
+
Macro to create terms for route redistribution
|
|
73
|
+
#}
|
|
74
|
+
{% macro import_terms(pdata) %}
|
|
75
|
+
{% set protomap = {
|
|
76
|
+
'connected': 'direct'
|
|
77
|
+
}
|
|
78
|
+
%}
|
|
79
|
+
{% for proto in pdata.import|default({}) %}
|
|
80
|
+
term redist_{{ proto }} {
|
|
81
|
+
from {
|
|
82
|
+
protocol {{ protomap[proto]|default(proto) }};
|
|
83
|
+
{% if pdata.import[proto].policy is defined %}
|
|
84
|
+
policy [ {{ pdata.import[proto].policy }} bgp-final ];
|
|
85
|
+
{% endif %}
|
|
86
|
+
}
|
|
87
|
+
then {
|
|
88
|
+
community add x-route-permit-mark;
|
|
89
|
+
next policy;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
{% endfor %}
|
|
93
|
+
{% endmacro +%}
|
|
94
|
+
{#
|
|
95
|
+
Macro to create per-routing-instance import/propagate/advertise policy
|
|
96
|
+
#}
|
|
97
|
+
{% macro redistribute(bgp,vname) %}
|
|
98
|
+
policy-statement bgp-{{ vname }}-redistribute {
|
|
99
|
+
{{ advertise_terms(bgp,vname) }}
|
|
100
|
+
term redis_bgp {
|
|
101
|
+
from protocol bgp;
|
|
102
|
+
then {
|
|
103
|
+
community add x-route-permit-mark;
|
|
104
|
+
next policy;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
{{ import_terms(bgp) }}
|
|
108
|
+
term default {
|
|
109
|
+
then reject;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
{% endmacro +%}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
{% import "junos.macro.j2" as bgpcfg with context %}
|
|
1
2
|
{# initialize default policies #}
|
|
2
3
|
|
|
3
4
|
{# internal community to handle policy flows #}
|
|
@@ -12,26 +13,16 @@
|
|
|
12
13
|
# - (custom policies - which may force accept/reject)
|
|
13
14
|
# - default final policy
|
|
14
15
|
#}
|
|
15
|
-
policy-options community x-route-permit-mark members large:65535:0:65536;
|
|
16
|
-
|
|
17
16
|
policy-options {
|
|
18
|
-
delete: policy-statement bgp-advertise;
|
|
19
|
-
delete: policy-statement bgp-redistribute;
|
|
20
17
|
{% for af in ['ipv4','ipv6'] %}
|
|
21
18
|
{% for nhs_type in ['ebgp','all'] %}
|
|
22
19
|
delete: policy-statement next-hop-{{ nhs_type }}-{{ af }};
|
|
23
20
|
{% endfor %}
|
|
24
21
|
{% endfor %}
|
|
25
|
-
delete: route-filter-list bgp-announce;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
policy-options {
|
|
29
22
|
|
|
30
|
-
|
|
31
|
-
{
|
|
32
|
-
|
|
33
|
-
{% endfor %}
|
|
34
|
-
}
|
|
23
|
+
{{ bgpcfg.common('default') }}
|
|
24
|
+
{{ bgpcfg.advertise_list(bgp,'default') }}
|
|
25
|
+
{{ bgpcfg.redistribute(bgp,'default') }}
|
|
35
26
|
|
|
36
27
|
{% for af in ('ipv4','ipv6') %}
|
|
37
28
|
{% for nh in ['ebgp','all'] %}
|
|
@@ -48,62 +39,9 @@ policy-options {
|
|
|
48
39
|
}
|
|
49
40
|
}
|
|
50
41
|
}
|
|
51
|
-
|
|
52
42
|
{% endfor %}
|
|
53
43
|
{% endfor %}
|
|
54
44
|
|
|
55
|
-
policy-statement bgp-advertise {
|
|
56
|
-
term advertise {
|
|
57
|
-
from {
|
|
58
|
-
protocol direct;
|
|
59
|
-
interface [
|
|
60
|
-
{% if bgp.advertise_loopback %} lo0.0 {% endif %}
|
|
61
|
-
{%- for l in interfaces if l.bgp.advertise|default("") and not 'vrf' in l %}
|
|
62
|
-
{{ l.ifname }}
|
|
63
|
-
{% endfor %} ];
|
|
64
|
-
}
|
|
65
|
-
then {
|
|
66
|
-
community add x-route-permit-mark;
|
|
67
|
-
next policy;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
term originate {
|
|
72
|
-
from {
|
|
73
|
-
protocol static;
|
|
74
|
-
route-filter-list bgp-announce;
|
|
75
|
-
}
|
|
76
|
-
then {
|
|
77
|
-
community add x-route-permit-mark;
|
|
78
|
-
next policy;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
policy-statement bgp-redistribute {
|
|
85
|
-
term redis_bgp {
|
|
86
|
-
from protocol bgp;
|
|
87
|
-
then {
|
|
88
|
-
community add x-route-permit-mark;
|
|
89
|
-
next policy;
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
policy-statement bgp-final {
|
|
95
|
-
term final-option {
|
|
96
|
-
from community x-route-permit-mark;
|
|
97
|
-
then {
|
|
98
|
-
community delete x-route-permit-mark;
|
|
99
|
-
accept;
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
term default-reject {
|
|
103
|
-
then reject;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
45
|
policy-statement bgp-initial {
|
|
108
46
|
term initial-cleanup {
|
|
109
47
|
from community x-route-permit-mark;
|
|
@@ -121,8 +59,7 @@ policy-options {
|
|
|
121
59
|
route-filter 0.0.0.0/0 exact;
|
|
122
60
|
}
|
|
123
61
|
then {
|
|
124
|
-
|
|
125
|
-
next policy;
|
|
62
|
+
accept;
|
|
126
63
|
}
|
|
127
64
|
}
|
|
128
65
|
term default-route-v6 {
|
|
@@ -130,8 +67,7 @@ policy-options {
|
|
|
130
67
|
route-filter ::/0 exact;
|
|
131
68
|
}
|
|
132
69
|
then {
|
|
133
|
-
|
|
134
|
-
next policy;
|
|
70
|
+
accept;
|
|
135
71
|
}
|
|
136
72
|
}
|
|
137
73
|
}
|
|
@@ -15,16 +15,8 @@ router bgp {{ bgp.as }}
|
|
|
15
15
|
!
|
|
16
16
|
address-family {{ af }} unicast
|
|
17
17
|
!
|
|
18
|
-
{%
|
|
19
|
-
network {{
|
|
20
|
-
{% endif %}
|
|
21
|
-
!
|
|
22
|
-
{% for l in interfaces|default([]) if l.bgp.advertise|default("") and l[af] is defined and not 'vrf' in l %}
|
|
23
|
-
network {{ l[af]|ansible.utils.ipaddr(0) }}
|
|
24
|
-
{% endfor %}
|
|
25
|
-
!
|
|
26
|
-
{% for pfx in bgp.originate|default([]) if af == 'ipv4' %}
|
|
27
|
-
network {{ pfx|ansible.utils.ipaddr('0') }}
|
|
18
|
+
{% for pfx in bgp.advertise|default([]) if af in pfx %}
|
|
19
|
+
network {{ pfx[af] }}
|
|
28
20
|
{% endfor %}
|
|
29
21
|
{% endfor %}
|
|
30
22
|
!
|
|
@@ -9,18 +9,10 @@ log updates
|
|
|
9
9
|
|
|
10
10
|
## network announcements
|
|
11
11
|
|
|
12
|
-
{% for
|
|
13
|
-
|
|
14
|
-
{
|
|
15
|
-
{%
|
|
16
|
-
{% if intf.bgp.advertise|default(False) %}
|
|
17
|
-
{% if intf.ipv4|default(False) %}
|
|
18
|
-
network {{ intf.ipv4|ansible.utils.ipaddr('0') }}
|
|
19
|
-
{% endif %}
|
|
20
|
-
{% if intf.ipv6|default(False) %}
|
|
21
|
-
network {{ intf.ipv6|ansible.utils.ipaddr('0') }}
|
|
22
|
-
{% endif %}
|
|
23
|
-
{% endif %}
|
|
12
|
+
{% for pfx_af in ['ipv4','ipv6'] %}
|
|
13
|
+
{% for pfx in bgp.advertise|default([]) if pfx_af in pfx %}
|
|
14
|
+
network {{ pfx[pfx_af] }}
|
|
15
|
+
{% endfor %}
|
|
24
16
|
{% endfor %}
|
|
25
17
|
|
|
26
18
|
## neighbors and groups
|
|
@@ -108,4 +100,4 @@ rcctl restart bgpd
|
|
|
108
100
|
|
|
109
101
|
{% for pfx in bgp.originate|default([]) %}
|
|
110
102
|
route add -blackhole {{ pfx|ipaddr('0') }} -priority 63 localhost
|
|
111
|
-
{% endfor %}
|
|
103
|
+
{% endfor %}
|