You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<?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"> <node name="Router-A" type="SIMPLE" subtype="IOSv" location="236,245"> <extensions> <entry key="AutoNetkit.mgmt_ip" type="string"></entry> <entry key="AutoNetkit.IGP" type="String">eigrp</entry> <entry key="Auto-generate config" type="Boolean">false</entry> <entry key="config" type="String">! IOS Config generated on 2015-09-06 21:22 ! by autonetkit_0.18.1 ! hostname Router-A 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 line vty 0 4 transport input ssh telnet exec-timeout 720 0 password cisco login line con 0 password cisco ! no cdp run ! ! interface Loopback0 description Loopback ip address 192.168.0.2 255.255.255.255 ! interface GigabitEthernet0/0 description OOB Management vrf forwarding Mgmt-intf ! Configured on launch no ip address duplex full speed auto no shutdown ! interface GigabitEthernet0/1 description to wanEM ip address 192.168.101.2 255.255.255.252 duplex full speed auto no shutdown ! interface GigabitEthernet0/2 description to server-1 ip address 192.168.1.1 255.255.255.0 duplex full speed auto no shutdown ! ! !
! ip route 0.0.0.0 0.0.0.0 192.168.101.1 ! end </entry> </extensions> <interface id="0" name="GigabitEthernet0/1" ipv4="192.168.101.2" netPrefixLenV4="24"/> <interface id="1" name="GigabitEthernet0/2" ipv4="192.168.1.1" netPrefixLenV4="24"/> </node> <node name="Router-B" type="SIMPLE" subtype="IOSv" location="463,232"> <extensions> <entry key="AutoNetkit.mgmt_ip" type="string"></entry> <entry key="Auto-generate config" type="Boolean">false</entry> <entry key="config" type="String">! IOS Config generated on 2015-09-06 21:22
 ! by autonetkit_0.18.1
 !
 hostname Router-B
 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
 line vty 0 4
 transport input ssh telnet
 exec-timeout 720 0
 password cisco
 login
 line con 0
 password cisco
 !
 no cdp run
 !
 !
 interface Loopback0
 description Loopback
 ip address 192.168.0.3 255.255.255.255
 !
 interface GigabitEthernet0/0
 description OOB Management
 vrf forwarding Mgmt-intf
 ! Configured on launch
 no ip address
 duplex full
 speed auto
 no shutdown
 !
 interface GigabitEthernet0/1
 description to wanEM
 ip address 192.168.102.2 255.255.255.252
 ip ospf cost 1
 duplex full
 speed auto
 no shutdown
 !
 interface GigabitEthernet0/2
 description to server-2
 ip address 192.168.2.1 255.255.255.0
 ip ospf cost 1
 duplex full
 speed auto
 no shutdown
 !
 !
 !
 ip route 0.0.0.0 0.0.0.0 192.168.102.1
 !
 end
 </entry> </extensions> <interface id="0" name="GigabitEthernet0/1"/> <interface id="1" name="GigabitEthernet0/2" netPrefixLenV4="24"/> </node> <node name="Internet
" type="ASSET" subtype="FLAT" location="391,42"> <extensions> <entry key="host_network" type="String">flat</entry> </extensions> <interface id="0" name="link0"/> </node> <node name="Switch-A" type="SIMPLE" subtype="IOSvL2" location="552,358"> <extensions> <entry key="AutoNetkit.mgmt_ip" type="string"></entry> <entry key="config" type="String">! IOSvL2 Config generated on 2015-12-11 21:04 ! by autonetkit_0.18.1 ! 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 Switch-A ! boot-start-marker boot-end-marker ! ! ! no aaa new-model ! ! ! ! ! ! ! ! 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 no ip address no shutdown ! interface GigabitEthernet0/1 description to Router-B switchport access vlan 2 switchport mode access no shutdown ! interface GigabitEthernet0/2 description to Server-A switchport access vlan 2 switchport mode access shutdown ! interface GigabitEthernet0/3 description to Server-B 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="Auto-generate config" type="Boolean">false</entry> </extensions> <interface id="0" name="GigabitEthernet0/1"/> <interface id="1" name="GigabitEthernet0/2"/> <interface id="2" name="GigabitEthernet0/3"/> </node> <node name="Client" type="SIMPLE" subtype="lxc" location="154,308"> <extensions> <entry key="Auto-generate config" type="Boolean">false</entry> <entry key="config" type="String">#cloud-config
 bootcmd:
 - ln -s -t /etc/rc.d /etc/rc.local
 hostname: Client
 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.18.9
 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 -e
 ifconfig eth1 up 192.168.1.100 netmask 255.255.255.0
 route del default
 route add default gw 192.168.1.1
 arp -i eth1 -s 192.168.1.1 aa:aa:aa:aa:aa:aa
 echo "alias unbug='sudo arp -d 192.168.1.1'" >>/home/cisco/.bashrc
 exit 0
 
 - path: /etc/resolv.conf
 owner: root:root
 permissions: '0644'
 content: |
 #by Patrick.
 nameserver 8.8.8.8
 </entry> </extensions> <interface id="0" name="eth1"/> </node> <node name="ISP" type="SIMPLE" subtype="lxc" location="343,149"> <extensions> <entry key="Auto-generate config" type="Boolean">false</entry> <entry key="config" type="String">#cloud-config
 bootcmd:
 - ln -s -t /etc/rc.d /etc/rc.local
 hostname: ISP
 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.9
 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 192.168.101.1 netmask 255.255.255.252
 ifconfig eth2 up 192.168.102.1 netmask 255.255.255.252
 
 dhclient eth0
 dhclient eth3
 
 echo 1 > /proc/sys/net/ipv4/ip_forward
 
 route add default gw 172.16.1.1 eth3
 
 route add -net 192.168.101.0/30 gw 192.168.101.2 dev eth1
 route add -net 192.168.1.0/24 gw 192.168.101.2 dev eth1
 
 route add -net 192.168.102.0/30 gw 192.168.102.2 dev eth2
 route add -net 192.168.2.0/24 gw 192.168.102.2 dev eth2
 
 iptables -t nat -A POSTROUTING -o eth3 -j MASQUERADE
 iptables -P FORWARD ACCEPT
 iptables -F FORWARD
 
 iptables -t nat -A PREROUTING -i eth3 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.2.100:80
 iptables -t nat -A PREROUTING -i eth3 -p tcp -m tcp --dport 22 -j DNAT --to-destination 192.168.2.100:22
 
 /sbin/tc qdisc add dev eth2 root handle 1:1 netem delay 100ms loss 5%
 echo "alias unbug='sudo tc qdisc del dev eth2 root'" >>/home/cisco/.bashrc
 
 service ssh start
 
 hostname ISP
 
 exit 0
 
 </entry> </extensions> <interface id="0" name="eth1"/> <interface id="1" name="eth2"/> <interface id="2" name="eth3"/> </node> <node name="Server-B" type="SIMPLE" subtype="lxc" location="411,333"> <extensions> <entry key="Auto-generate config" type="Boolean">false</entry> <entry key="config" type="String">#cloud-config
 bootcmd:
 - ln -s -t /etc/rc.d /etc/rc.local
 hostname: Server-B
 manage_etc_hosts: true
 
 runcmd:
 - start ttyS0
 - systemctl start getty@ttyS0.service
 - systemctl start rc-local
 - systemctl start install-webserver
 - 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.18.9
 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 -e
 ifconfig eth1 up 192.168.2.100 netmask 255.255.255.0
 route del default
 route add default gw 192.168.2.1
 route add -net 192.168.1.0/24 gw 127.0.0.1
 echo "alias unbug='sudo route del -net 192.168.1.0/24'" >>/home/cisco/.bashrc
 echo "nameserver 8.8.8.8" >/etc/resolv.conf
 screen -dmS install-webserver /tmp/install-webserver &
 exit 0
 - path: /tmp/install-webserver
 owner: root:root
 permissions: '0755'
 content: |-
 #!/bin/bash
 echo "Waiting for internet connectivity"
 until echo -n "." && ping -c1 archive.ubuntu.com &>/dev/null; do :; done
 apt-get -y update
 apt-get -y install apache2
 echo "<h1>Willkommen auf Server-B!</h1>" >/var/www/html/index.html
 read -p "Press any key..."
 exit 0
 </entry> </extensions> <interface id="0" name="eth1"/> </node> <node name="Server-A" type="SIMPLE" subtype="lxc" location="639,256"> <extensions> <entry key="Auto-generate config" type="Boolean">false</entry> <entry key="config" type="String">#cloud-config
 bootcmd:
 - ln -s -t /etc/rc.d /etc/rc.local
 hostname: Server-A
 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.18.9
 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 -e
 ifconfig eth1 up 192.168.2.200 netmask 255.255.255.0
 route del default
 route add default gw 192.168.2.1
 exit 0
 
 - path: /etc/resolv.conf
 owner: root:root
 permissions: '0644'
 content: |
 # ttyS0 - getty
 # This service maintains a getty on ttyS0 from the point the system is
 # started until it is shut down again.
 nameserver 8.8.8.8</entry> </extensions> <interface id="0" name="eth1"/> </node> <annotations/> <connection dst="/virl:topology/virl:node[4]/virl:interface[1]" src="/virl:topology/virl:node[2]/virl:interface[2]"/> <connection dst="/virl:topology/virl:node[6]/virl:interface[1]" src="/virl:topology/virl:node[1]/virl:interface[1]"/> <connection dst="/virl:topology/virl:node[2]/virl:interface[1]" src="/virl:topology/virl:node[6]/virl:interface[2]"/> <connection dst="/virl:topology/virl:node[6]/virl:interface[3]" src="/virl:topology/virl:node[3]/virl:interface[1]"/> <connection dst="/virl:topology/virl:node[4]/virl:interface[3]" src="/virl:topology/virl:node[7]/virl:interface[1]"/> <connection dst="/virl:topology/virl:node[4]/virl:interface[2]" src="/virl:topology/virl:node[8]/virl:interface[1]"/> <connection dst="/virl:topology/virl:node[5]/virl:interface[1]" src="/virl:topology/virl:node[1]/virl:interface[2]"/> </topology>
|