<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <topology xmlns="http://www.cisco.com/VIRL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" schemaVersion="0.95" xsi:schemaLocation="http://www.cisco.com/VIRL https://raw.github.com/CiscoVIRL/schema/v0.95/virl.xsd"> <extensions> <entry key="AutoNetkit.infrastructure_only" type="Boolean">false</entry> <entry key="management_network" type="String">flat</entry> <entry key="AutoNetkit.enable_cdp" type="Boolean">true</entry> <entry key="AutoNetkit.IGP" type="String">rip-v2</entry> </extensions> <node name="iosvl2-1" type="SIMPLE" subtype="IOSvL2" location="296,180"> <extensions> <entry key="config" type="string">! IOSvL2 Config generated on 2017-08-27 14:56 ! by autonetkit_0.23.5 ! version 15.2 service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption service compress-config no service config enable password cisco ip classless ip subnet-zero no ip domain lookup ! line vty 0 4 transport input ssh telnet exec-timeout 720 0 password cisco login ! line con 0 password cisco ! hostname iosvl2-1 ! boot-start-marker boot-end-marker ! ! ! no aaa new-model ! vtp domain virl.lab vtp mode transparent ! vlan 2 name ank_vlan2 vlan 3 name ank_vlan3 ! ! ! ! cdp run ! ! ! ip cef no ipv6 cef ! ! spanning-tree mode pvst spanning-tree extend system-id ! vlan internal allocation policy ascending ! ! ! ! vrf definition Mgmt-intf ! address-family ipv4 exit-address-family ! address-family ipv6 exit-address-family ! ! ! ! ! interface Loopback0 description Loopback ! interface GigabitEthernet0/0 description OOB management ! Configured on launch no switchport vrf forwarding Mgmt-intf no ip address no shutdown ! interface GigabitEthernet0/1 description to iosvl2-2 switchport trunk encapsulation dot1q switchport mode trunk no shutdown ! interface GigabitEthernet0/2 description to iosv-1 switchport access vlan 2 switchport mode access no shutdown ! interface GigabitEthernet0/3 description to kali-1 switchport access vlan 2 switchport mode access no shutdown ! interface GigabitEthernet1/0 description to iosv-2 switchport access vlan 2 switchport mode access no shutdown ! ! ip forward-protocol nd ! no ip http server no ip http secure-server ! ! ! ! ! ! control-plane ! ! ! end </entry> <entry key="AutoNetkit.mgmt_ip" type="string"></entry> </extensions> <interface id="0" name="GigabitEthernet0/1"/> <interface id="1" name="GigabitEthernet0/2"/> <interface id="2" name="GigabitEthernet0/3"/> <interface id="3" name="GigabitEthernet1/0"/> </node> <node name="iosvl2-2" type="SIMPLE" subtype="IOSvL2" location="520,177"> <extensions> <entry key="config" type="string">! IOSvL2 Config generated on 2017-08-27 14:56 ! by autonetkit_0.23.5 ! version 15.2 service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption service compress-config no service config enable password cisco ip classless ip subnet-zero no ip domain lookup ! line vty 0 4 transport input ssh telnet exec-timeout 720 0 password cisco login ! line con 0 password cisco ! hostname iosvl2-2 ! boot-start-marker boot-end-marker ! ! ! no aaa new-model ! vtp domain virl.lab vtp mode transparent ! vlan 2 name ank_vlan2 vlan 3 name ank_vlan3 ! ! ! ! cdp run ! ! ! ip cef no ipv6 cef ! ! spanning-tree mode pvst spanning-tree extend system-id ! vlan internal allocation policy ascending ! ! ! ! vrf definition Mgmt-intf ! address-family ipv4 exit-address-family ! address-family ipv6 exit-address-family ! ! ! ! ! interface Loopback0 description Loopback ! interface GigabitEthernet0/0 description OOB management ! Configured on launch no switchport vrf forwarding Mgmt-intf no ip address no shutdown ! interface GigabitEthernet0/1 description to iosvl2-1 switchport trunk encapsulation dot1q switchport mode trunk no shutdown ! interface GigabitEthernet0/2 description to iosv-1 switchport access vlan 3 switchport mode access no shutdown ! interface GigabitEthernet0/3 description to server-1 switchport access vlan 3 switchport mode access no shutdown ! ! ip forward-protocol nd ! no ip http server no ip http secure-server ! ! ! ! ! ! control-plane ! ! ! end </entry> <entry key="AutoNetkit.mgmt_ip" type="string"></entry> </extensions> <interface id="0" name="GigabitEthernet0/1"/> <interface id="1" name="GigabitEthernet0/2"/> <interface id="2" name="GigabitEthernet0/3"/> </node> <node name="kali-1" type="SIMPLE" subtype="kali" location="193,282"> <extensions> <entry key="config" type="String">#cloud-config bootcmd: - ln -s -t /etc/rc.d /etc/rc.local hostname: kali-1 manage_etc_hosts: true package_update: true packages: - quagga runcmd: - start ttyS0 - systemctl start getty@ttyS0.service - systemctl start rc-local - sed -i '/^\s*PasswordAuthentication\s\+no/d' /etc/ssh/sshd_config - echo "UseDNS no" >> /etc/ssh/sshd_config - service ssh restart - service sshd restart users: - default - gecos: User configured by VIRL Configuration Engine 0.23.10 lock-passwd: false name: cisco plain-text-passwd: cisco shell: /bin/bash ssh-authorized-keys: - VIRL-USER-SSH-PUBLIC-KEY sudo: ALL=(ALL) ALL write_files: - path: /etc/init/ttyS0.conf owner: root:root content: | # ttyS0 - getty # This service maintains a getty on ttyS0 from the point the system is # started until it is shut down again. start on stopped rc or RUNLEVEL=[12345] stop on runlevel [!12345] respawn exec /sbin/getty -L 115200 ttyS0 vt102 permissions: '0644' - path: /etc/systemd/system/dhclient@.service content: | [Unit] Description=Run dhclient on %i interface After=network.target [Service] Type=oneshot ExecStart=/sbin/dhclient %i -pf /var/run/dhclient.%i.pid -lf /var/lib/dhclient/dhclient.%i.lease RemainAfterExit=yes owner: root:root permissions: '0644' - path: /etc/rc.local owner: root:root permissions: '0755' content: |- #!/bin/sh ip route del default ip route add default via 172.16.1.2 ip link set eth1 up ip addr add 10.0.0.1/17 dev eth1 # Use routes from Quagga instead #route add -host 192.168.0.1 gw 10.0.0.2 dev eth1 #route add -host 192.168.0.4 gw 10.0.0.2 dev eth1 #route add -net 10.0.0.0/17 gw 10.0.0.2 dev eth1 #route add -net 10.0.128.0/30 gw 10.0.0.2 dev eth1 #route add -host 192.168.0.1 gw 10.0.0.3 dev eth1 #route add -host 192.168.0.4 gw 10.0.0.3 dev eth1 #route add -net 10.0.0.0/17 gw 10.0.0.3 dev eth1 #route add -net 10.0.128.0/30 gw 10.0.0.3 dev eth1 exit 0 - path: /etc/quagga/zebra.conf owner: root:root permissions: '0644' content: |- hostname kali-1 password cisco enable password cisco interface eth0 interface eth1 line vty - path: /etc/quagga/ripd.conf owner: root:root permissions: '0644' content: |- hostname kali-1 password cisco log stdout router rip network eth1 line vty </entry> </extensions> <interface id="0" name="eth1" ipv4="10.0.0.1" netPrefixLenV4="17"> <extensions> <entry key="AutoNetkit.vlan" type="Integer">2</entry> </extensions> </interface> </node> <node name="iosv-1" type="SIMPLE" subtype="IOSv" location="417,76" ipv4="192.168.0.1"> <extensions> <entry key="config" type="string">! IOS Config generated on 2017-08-27 14:56 ! by autonetkit_0.23.5 ! hostname iosv-1 boot-start-marker boot-end-marker ! vrf definition Mgmt-intf ! address-family ipv4 exit-address-family ! address-family ipv6 exit-address-family ! ! ! no aaa new-model ! ! ip cef ipv6 unicast-routing ipv6 cef ! ! service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption no service config enable password cisco ip classless ip subnet-zero no ip domain lookup ip domain name virl.info crypto key generate rsa modulus 768 ip ssh server algorithm authentication password username cisco privilege 15 secret cisco line vty 0 4 transport input ssh telnet exec-timeout 720 0 password cisco login local line con 0 password cisco ! cdp run ! ! interface Loopback0 description Loopback ip address 192.168.0.1 255.255.255.255 ! interface GigabitEthernet0/0 description OOB Management vrf forwarding Mgmt-intf ! Configured on launch no ip address cdp enable duplex full speed auto no shutdown ! interface GigabitEthernet0/1 description to iosvl2-1 ip address 10.0.0.2 255.255.128.0 cdp enable duplex full speed auto no shutdown ! interface GigabitEthernet0/2 description to iosvl2-2 ip address 10.0.128.1 255.255.255.252 cdp enable duplex full speed auto no shutdown ! ! ! router rip version 2 no auto-summary network 10.0.0.0 network 10.0.128.0 network 192.168.0.1 passive-interface GigabitEthernet0/0 ! ! router bgp 1 bgp router-id 192.168.0.1 no synchronization ! ibgp ! ibgp peers ! neighbor 192.168.0.4 remote-as 1 neighbor 192.168.0.4 description iBGP peer iosv-2 neighbor 192.168.0.4 update-source Loopback0 ! ! ! address-family ipv4 network 192.168.0.1 mask 255.255.255.255 neighbor 192.168.0.4 activate exit-address-family ! ! ! end</entry> <entry key="AutoNetkit.mgmt_ip" type="string"></entry> </extensions> <interface id="0" name="GigabitEthernet0/1" ipv4="10.0.0.2" netPrefixLenV4="17"> <extensions> <entry key="AutoNetkit.vlan" type="Integer">2</entry> </extensions> </interface> <interface id="1" name="GigabitEthernet0/2" ipv4="10.0.128.1" netPrefixLenV4="30"> <extensions> <entry key="AutoNetkit.vlan" type="Integer">3</entry> </extensions> </interface> </node> <node name="server-1" type="SIMPLE" subtype="server" location="592,287"> <extensions> <entry key="config" type="string">#cloud-config bootcmd: - ln -s -t /etc/rc.d /etc/rc.local hostname: server-1 manage_etc_hosts: true runcmd: - start ttyS0 - systemctl start getty@ttyS0.service - systemctl start rc-local - sed -i '/^\s*PasswordAuthentication\s\+no/d' /etc/ssh/sshd_config - echo "UseDNS no" >> /etc/ssh/sshd_config - service ssh restart - service sshd restart users: - default - gecos: User configured by VIRL Configuration Engine 0.23.10 lock-passwd: false name: cisco plain-text-passwd: cisco shell: /bin/bash ssh-authorized-keys: - VIRL-USER-SSH-PUBLIC-KEY sudo: ALL=(ALL) ALL write_files: - path: /etc/init/ttyS0.conf owner: root:root content: | # ttyS0 - getty # This service maintains a getty on ttyS0 from the point the system is # started until it is shut down again. start on stopped rc or RUNLEVEL=[12345] stop on runlevel [!12345] respawn exec /sbin/getty -L 115200 ttyS0 vt102 permissions: '0644' - path: /etc/systemd/system/dhclient@.service content: | [Unit] Description=Run dhclient on %i interface After=network.target [Service] Type=oneshot ExecStart=/sbin/dhclient %i -pf /var/run/dhclient.%i.pid -lf /var/lib/dhclient/dhclient.%i.lease RemainAfterExit=yes owner: root:root permissions: '0644' - path: /etc/rc.local owner: root:root permissions: '0755' content: |- #!/bin/sh ifconfig eth1 up 10.0.128.2 netmask 255.255.255.252 route add -host 192.168.0.1 gw 10.0.128.1 dev eth1 route add -host 192.168.0.4 gw 10.0.128.1 dev eth1 route add -net 10.0.0.0/17 gw 10.0.128.1 dev eth1 route add -net 10.0.128.0/30 gw 10.0.128.1 dev eth1 exit 0 </entry> </extensions> <interface id="0" name="eth1" ipv4="10.0.128.2" netPrefixLenV4="30"> <extensions> <entry key="AutoNetkit.vlan" type="Integer">3</entry> </extensions> </interface> </node> <node name="iosv-2" type="SIMPLE" subtype="IOSv" location="370,291" ipv4="192.168.0.4"> <extensions> <entry key="AutoNetkit.mgmt_ip" type="string"></entry> <entry key="config" type="String">! IOS Config generated on 2017-08-27 14:56 ! by autonetkit_0.23.5 ! hostname iosv-2 boot-start-marker boot-end-marker ! vrf definition Mgmt-intf ! address-family ipv4 exit-address-family ! address-family ipv6 exit-address-family ! ! ! no aaa new-model ! ! ip cef ipv6 unicast-routing ipv6 cef ! ! service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption no service config enable password cisco ip classless ip subnet-zero no ip domain lookup ip domain name virl.info crypto key generate rsa modulus 768 ip ssh server algorithm authentication password username cisco privilege 15 secret cisco ip access-list standard IN-VTY permit 172.16.1.0 0.0.0.255 permit 192.168.0.0 0.0.0.255 permit 10.0.128.0 0.0.0.3 line vty 0 4 transport input ssh telnet access-class IN-VTY in vrf-also exec-timeout 720 0 password cisco login local line con 0 password cisco ! cdp run ! ! interface Loopback0 description Loopback ip address 192.168.0.4 255.255.255.255 ! interface GigabitEthernet0/0 description OOB Management vrf forwarding Mgmt-intf ! Configured on launch no ip address cdp enable duplex full speed auto no shutdown ! interface GigabitEthernet0/1 description to iosvl2-1 ip address 10.0.0.3 255.255.128.0 cdp enable duplex full speed auto no shutdown ! ! ! router rip version 2 no auto-summary network 10.0.0.0 network 192.168.0.4 passive-interface GigabitEthernet0/0 ! ! router bgp 1 bgp router-id 192.168.0.4 no synchronization ! ibgp ! ibgp peers ! neighbor 192.168.0.1 remote-as 1 neighbor 192.168.0.1 description iBGP peer iosv-1 neighbor 192.168.0.1 update-source Loopback0 ! ! ! address-family ipv4 network 192.168.0.4 mask 255.255.255.255 neighbor 192.168.0.1 activate exit-address-family ! ! ! end</entry> </extensions> <interface id="0" name="GigabitEthernet0/1" ipv4="10.0.0.3" netPrefixLenV4="17"> <extensions> <entry key="AutoNetkit.vlan" type="Integer">2</entry> </extensions> </interface> </node> <annotations/> <connection dst="/virl:topology/virl:node[2]/virl:interface[1]" src="/virl:topology/virl:node[1]/virl:interface[1]"/> <connection dst="/virl:topology/virl:node[1]/virl:interface[2]" src="/virl:topology/virl:node[4]/virl:interface[1]"/> <connection dst="/virl:topology/virl:node[4]/virl:interface[2]" src="/virl:topology/virl:node[2]/virl:interface[2]"/> <connection dst="/virl:topology/virl:node[1]/virl:interface[3]" src="/virl:topology/virl:node[3]/virl:interface[1]"/> <connection dst="/virl:topology/virl:node[2]/virl:interface[3]" src="/virl:topology/virl:node[5]/virl:interface[1]"/> <connection dst="/virl:topology/virl:node[6]/virl:interface[1]" src="/virl:topology/virl:node[1]/virl:interface[4]"/> </topology>