Skip to content
Snippets Groups Projects
Commit 4b81a1d7 authored by anxietypb's avatar anxietypb
Browse files
parents fc4782a8 0f67709e
No related branches found
No related tags found
No related merge requests found
<?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.9" xsi:schemaLocation="http://www.cisco.com/VIRL https://raw.github.com/CiscoVIRL/schema/v0.9/virl.xsd">
<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="management_network" type="String">exclusive</entry>
</extensions>
<node name="veos-1" type="SIMPLE" subtype="vEOS" location="413,31" ipv4="10.10.10.10">
<node name="veos-1" type="SIMPLE" subtype="vEOS" location="413,31" vmImage="vEOS-4.14.16M [76258b5e-a0f1-4068-84d0-1f8b3d2a3602]" ipv4="10.10.10.10">
<extensions>
<entry key="Auto-generate config" type="Boolean">false</entry>
<entry key="config" type="String">! device: vEOS-1 (vEOS, EOS-4.14.2F)&#xD;
......@@ -52,7 +52,7 @@ end&#xD;
<interface id="2" name="Ethernet3"/>
<interface id="3" name="Ethernet4"/>
</node>
<node name="veos-2" type="SIMPLE" subtype="vEOS" location="218,127" ipv4="10.10.10.20">
<node name="veos-2" type="SIMPLE" subtype="vEOS" location="218,127" vmImage="vEOS-4.14.16M [76258b5e-a0f1-4068-84d0-1f8b3d2a3602]" ipv4="10.10.10.20">
<extensions>
<entry key="Auto-generate config" type="Boolean">false</entry>
<entry key="config" type="String">! device: vEOS-2 (vEOS, EOS-4.14.2F)&#xD;
......@@ -109,7 +109,7 @@ end&#xD;
<interface id="4" name="Ethernet5"/>
<interface id="5" name="Ethernet6"/>
</node>
<node name="veos-3" type="SIMPLE" subtype="vEOS" location="611,127" ipv4="10.10.10.30">
<node name="veos-3" type="SIMPLE" subtype="vEOS" location="611,127" vmImage="vEOS-4.14.16M [76258b5e-a0f1-4068-84d0-1f8b3d2a3602]" ipv4="10.10.10.30">
<extensions>
<entry key="Auto-generate config" type="Boolean">false</entry>
<entry key="config" type="String">! device: vEOS-3 (vEOS, EOS-4.14.2F)&#xD;
......@@ -166,7 +166,7 @@ end&#xD;
<interface id="4" name="Ethernet5"/>
<interface id="5" name="Ethernet6"/>
</node>
<node name="veos-4" type="SIMPLE" subtype="vEOS" location="413,221" ipv4="10.10.10.40">
<node name="veos-4" type="SIMPLE" subtype="vEOS" location="413,221" vmImage="vEOS-4.14.16M [76258b5e-a0f1-4068-84d0-1f8b3d2a3602]" ipv4="10.10.10.40">
<extensions>
<entry key="Auto-generate config" type="Boolean">false</entry>
<entry key="config" type="String">! device: vEOS-4 (vEOS, EOS-4.14.2F)&#xD;
......@@ -215,6 +215,7 @@ end&#xD;
<interface id="2" name="Ethernet3"/>
<interface id="3" name="Ethernet4"/>
</node>
<annotations/>
<connection dst="/virl:topology/virl:node[1]/virl:interface[1]" src="/virl:topology/virl:node[2]/virl:interface[1]"/>
<connection dst="/virl:topology/virl:node[1]/virl:interface[2]" src="/virl:topology/virl:node[2]/virl:interface[2]"/>
<connection dst="/virl:topology/virl:node[3]/virl:interface[1]" src="/virl:topology/virl:node[2]/virl:interface[3]"/>
......
......@@ -152,9 +152,8 @@ write_files:&#xD;
</extensions>
<interface id="0" name="eth1" ipv4="10.0.0.6" netPrefixLenV4="30"/>
</node>
<node name="controller" type="SIMPLE" subtype="lxc" location="508,70" ipv4="10.10.10.254">
<node name="controller" type="SIMPLE" subtype="server" location="513,71" vmFlavor="m1.small [2]" ipv4="10.10.10.254">
<extensions>
<entry key="Auto-generate config" type="Boolean">false</entry>
<entry key="config" type="String">#cloud-config&#xD;
bootcmd:&#xD;
- ln -s -t /etc/rc.d /etc/rc.local&#xD;
......@@ -259,7 +258,7 @@ write_files:&#xD;
exit 0&#xD;
</entry>
</extensions>
<interface id="0" name="eth1" ipv4="10.0.128.2" netPrefixLenV4="30"/>
<interface id="0" name="eth1"/>
<interface id="1" name="eth2"/>
</node>
<annotations/>
......
<?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&#xD;
! by autonetkit_0.18.1&#xD;
!&#xD;
hostname Router-B&#xD;
boot-start-marker&#xD;
boot-end-marker&#xD;
!&#xD;
vrf definition Mgmt-intf&#xD;
!&#xD;
address-family ipv4&#xD;
exit-address-family&#xD;
!&#xD;
address-family ipv6&#xD;
exit-address-family&#xD;
!&#xD;
!&#xD;
!&#xD;
no aaa new-model&#xD;
!&#xD;
!&#xD;
ip cef&#xD;
ipv6 unicast-routing&#xD;
ipv6 cef&#xD;
!&#xD;
!&#xD;
service timestamps debug datetime msec&#xD;
service timestamps log datetime msec&#xD;
no service password-encryption&#xD;
no service config&#xD;
enable password cisco&#xD;
ip classless&#xD;
ip subnet-zero&#xD;
no ip domain lookup&#xD;
line vty 0 4&#xD;
transport input ssh telnet&#xD;
exec-timeout 720 0&#xD;
password cisco&#xD;
login&#xD;
line con 0&#xD;
password cisco&#xD;
!&#xD;
no cdp run&#xD;
!&#xD;
!&#xD;
interface Loopback0&#xD;
description Loopback&#xD;
ip address 192.168.0.3 255.255.255.255&#xD;
!&#xD;
interface GigabitEthernet0/0&#xD;
description OOB Management&#xD;
vrf forwarding Mgmt-intf&#xD;
! Configured on launch&#xD;
no ip address&#xD;
duplex full&#xD;
speed auto&#xD;
no shutdown&#xD;
!&#xD;
interface GigabitEthernet0/1&#xD;
description to wanEM&#xD;
ip address 192.168.102.2 255.255.255.252&#xD;
ip ospf cost 1&#xD;
duplex full&#xD;
speed auto&#xD;
no shutdown&#xD;
!&#xD;
interface GigabitEthernet0/2&#xD;
description to server-2&#xD;
ip address 192.168.2.1 255.255.255.0&#xD;
ip ospf cost 1&#xD;
duplex full&#xD;
speed auto&#xD;
no shutdown&#xD;
!&#xD;
!&#xD;
!&#xD;
ip route 0.0.0.0 0.0.0.0 192.168.102.1&#xD;
!&#xD;
end&#xD;
</entry>
</extensions>
<interface id="0" name="GigabitEthernet0/1"/>
<interface id="1" name="GigabitEthernet0/2" netPrefixLenV4="24"/>
</node>
<node name="Internet&#xD;&#xA;" 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&#xD;
bootcmd:&#xD;
- ln -s -t /etc/rc.d /etc/rc.local&#xD;
hostname: Client&#xD;
manage_etc_hosts: true&#xD;
runcmd:&#xD;
- start ttyS0&#xD;
- systemctl start getty@ttyS0.service&#xD;
- systemctl start rc-local&#xD;
- sed -i '/^\s*PasswordAuthentication\s\+no/d' /etc/ssh/sshd_config&#xD;
- echo "UseDNS no" &gt;&gt; /etc/ssh/sshd_config&#xD;
- service ssh restart&#xD;
- service sshd restart&#xD;
users:&#xD;
- default&#xD;
- gecos: User configured by VIRL Configuration Engine 0.18.9&#xD;
lock-passwd: false&#xD;
name: cisco&#xD;
plain-text-passwd: cisco&#xD;
shell: /bin/bash&#xD;
ssh-authorized-keys:&#xD;
- VIRL-USER-SSH-PUBLIC-KEY&#xD;
sudo: ALL=(ALL) ALL&#xD;
write_files:&#xD;
- path: /etc/init/ttyS0.conf&#xD;
owner: root:root&#xD;
content: |&#xD;
# ttyS0 - getty&#xD;
# This service maintains a getty on ttyS0 from the point the system is&#xD;
# started until it is shut down again.&#xD;
start on stopped rc or RUNLEVEL=[12345]&#xD;
stop on runlevel [!12345]&#xD;
respawn&#xD;
exec /sbin/getty -L 115200 ttyS0 vt102&#xD;
permissions: '0644'&#xD;
- path: /etc/systemd/system/dhclient@.service&#xD;
content: |&#xD;
[Unit]&#xD;
Description=Run dhclient on %i interface&#xD;
After=network.target&#xD;
[Service]&#xD;
Type=oneshot&#xD;
ExecStart=/sbin/dhclient %i -pf /var/run/dhclient.%i.pid -lf /var/lib/dhclient/dhclient.%i.lease&#xD;
RemainAfterExit=yes&#xD;
owner: root:root&#xD;
permissions: '0644'&#xD;
- path: /etc/rc.local&#xD;
owner: root:root&#xD;
permissions: '0755'&#xD;
content: |-&#xD;
!/bin/sh -e&#xD;
ifconfig eth1 up 192.168.1.100 netmask 255.255.255.0&#xD;
route del default&#xD;
route add default gw 192.168.1.1&#xD;
#arp -i eth1 -s 192.168.1.1 aa:aa:aa:aa:aa:aa&#xD;
echo "alias unbug='sudo arp -d 192.168.1.1'" &gt;&gt;/home/cisco/.bashrc&#xD;
exit 0&#xD;
&#xD;
- path: /etc/resolv.conf&#xD;
owner: root:root&#xD;
permissions: '0644'&#xD;
content: |&#xD;
#by Patrick.&#xD;
nameserver 8.8.8.8&#xD;
</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&#xD;
bootcmd:&#xD;
- ln -s -t /etc/rc.d /etc/rc.local&#xD;
hostname: ISP&#xD;
manage_etc_hosts: true&#xD;
runcmd:&#xD;
- start ttyS0&#xD;
- systemctl start getty@ttyS0.service&#xD;
- systemctl start rc-local&#xD;
- sed -i '/^\s*PasswordAuthentication\s\+no/d' /etc/ssh/sshd_config&#xD;
- echo "UseDNS no" &gt;&gt; /etc/ssh/sshd_config&#xD;
- service ssh restart&#xD;
- service sshd restart&#xD;
users:&#xD;
- default&#xD;
- gecos: User configured by VIRL Configuration Engine 0.23.9&#xD;
lock-passwd: false&#xD;
name: cisco&#xD;
plain-text-passwd: cisco&#xD;
shell: /bin/bash&#xD;
ssh-authorized-keys:&#xD;
- VIRL-USER-SSH-PUBLIC-KEY&#xD;
sudo: ALL=(ALL) ALL&#xD;
write_files:&#xD;
- path: /etc/init/ttyS0.conf&#xD;
owner: root:root&#xD;
content: |&#xD;
# ttyS0 - getty&#xD;
# This service maintains a getty on ttyS0 from the point the system is&#xD;
# started until it is shut down again.&#xD;
start on stopped rc or RUNLEVEL=[12345]&#xD;
stop on runlevel [!12345]&#xD;
respawn&#xD;
exec /sbin/getty -L 115200 ttyS0 vt102&#xD;
permissions: '0644'&#xD;
- path: /etc/systemd/system/dhclient@.service&#xD;
content: |&#xD;
[Unit]&#xD;
Description=Run dhclient on %i interface&#xD;
After=network.target&#xD;
[Service]&#xD;
Type=oneshot&#xD;
ExecStart=/sbin/dhclient %i -pf /var/run/dhclient.%i.pid -lf /var/lib/dhclient/dhclient.%i.lease&#xD;
RemainAfterExit=yes&#xD;
owner: root:root&#xD;
permissions: '0644'&#xD;
- path: /etc/rc.local&#xD;
owner: root:root&#xD;
permissions: '0755'&#xD;
content: |-&#xD;
#!/bin/sh&#xD;
ifconfig eth1 up 192.168.101.1 netmask 255.255.255.252&#xD;
ifconfig eth2 up 192.168.102.1 netmask 255.255.255.252&#xD;
&#xD;
dhclient eth0&#xD;
dhclient eth3&#xD;
&#xD;
echo 1 &gt; /proc/sys/net/ipv4/ip_forward&#xD;
&#xD;
route add default gw 172.16.1.1 eth3&#xD;
&#xD;
route add -net 192.168.101.0/30 gw 192.168.101.2 dev eth1&#xD;
route add -net 192.168.1.0/24 gw 192.168.101.2 dev eth1&#xD;
&#xD;
route add -net 192.168.102.0/30 gw 192.168.102.2 dev eth2&#xD;
route add -net 192.168.2.0/24 gw 192.168.102.2 dev eth2&#xD;
&#xD;
iptables -t nat -A POSTROUTING -o eth3 -j MASQUERADE&#xD;
iptables -P FORWARD ACCEPT&#xD;
iptables -F FORWARD&#xD;
&#xD;
iptables -t nat -A PREROUTING -i eth3 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.2.100:80&#xD;
iptables -t nat -A PREROUTING -i eth3 -p tcp -m tcp --dport 22 -j DNAT --to-destination 192.168.2.100:22&#xD;
&#xD;
/sbin/tc qdisc add dev eth2 root handle 1:1 netem delay 100ms loss 5%&#xD;
echo "alias unbug='sudo tc qdisc del dev eth2 root'" &gt;&gt;/home/cisco/.bashrc&#xD;
&#xD;
service ssh start&#xD;
&#xD;
hostname ISP&#xD;
&#xD;
exit 0&#xD;
&#xD;
</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&#xD;
bootcmd:&#xD;
- ln -s -t /etc/rc.d /etc/rc.local&#xD;
hostname: Server-B&#xD;
manage_etc_hosts: true&#xD;
&#xD;
runcmd:&#xD;
- start ttyS0&#xD;
- systemctl start getty@ttyS0.service&#xD;
- systemctl start rc-local&#xD;
- systemctl start install-webserver&#xD;
- sed -i '/^\s*PasswordAuthentication\s\+no/d' /etc/ssh/sshd_config&#xD;
- echo "UseDNS no" &gt;&gt; /etc/ssh/sshd_config&#xD;
- service ssh restart&#xD;
- service sshd restart&#xD;
users:&#xD;
- default&#xD;
- gecos: User configured by VIRL Configuration Engine 0.18.9&#xD;
lock-passwd: false&#xD;
name: cisco&#xD;
plain-text-passwd: cisco&#xD;
shell: /bin/bash&#xD;
ssh-authorized-keys:&#xD;
- VIRL-USER-SSH-PUBLIC-KEY&#xD;
sudo: ALL=(ALL) ALL&#xD;
write_files:&#xD;
- path: /etc/init/ttyS0.conf&#xD;
owner: root:root&#xD;
content: |&#xD;
# ttyS0 - getty&#xD;
# This service maintains a getty on ttyS0 from the point the system is&#xD;
# started until it is shut down again.&#xD;
start on stopped rc or RUNLEVEL=[12345]&#xD;
stop on runlevel [!12345]&#xD;
respawn&#xD;
exec /sbin/getty -L 115200 ttyS0 vt102&#xD;
permissions: '0644'&#xD;
- path: /etc/systemd/system/dhclient@.service&#xD;
content: |&#xD;
[Unit]&#xD;
Description=Run dhclient on %i interface&#xD;
After=network.target&#xD;
[Service]&#xD;
Type=oneshot&#xD;
ExecStart=/sbin/dhclient %i -pf /var/run/dhclient.%i.pid -lf /var/lib/dhclient/dhclient.%i.lease&#xD;
RemainAfterExit=yes&#xD;
owner: root:root&#xD;
permissions: '0644'&#xD;
- path: /etc/rc.local&#xD;
owner: root:root&#xD;
permissions: '0755'&#xD;
content: |-&#xD;
#!/bin/sh -e&#xD;
ifconfig eth1 up 192.168.2.100 netmask 255.255.255.0&#xD;
route del default&#xD;
route add default gw 192.168.2.1&#xD;
#route add -net 192.168.1.0/24 gw 127.0.0.1&#xD;
echo "alias unbug='sudo route del -net 192.168.1.0/24'" &gt;&gt;/home/cisco/.bashrc&#xD;
echo "nameserver 8.8.8.8" &gt;/etc/resolv.conf&#xD;
screen -dmS install-webserver /tmp/install-webserver &amp;&#xD;
exit 0&#xD;
- path: /tmp/install-webserver&#xD;
owner: root:root&#xD;
permissions: '0755'&#xD;
content: |-&#xD;
#!/bin/bash&#xD;
echo "Waiting for internet connectivity"&#xD;
until echo -n "." &amp;&amp; ping -c1 archive.ubuntu.com &amp;&gt;/dev/null; do :; done&#xD;
apt-get -y update&#xD;
apt-get -y install apache2&#xD;
echo "&lt;h1&gt;Willkommen auf Server-B!&lt;/h1&gt;" &gt;/var/www/html/index.html&#xD;
read -p "Press any key..."&#xD;
exit 0&#xD;
</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&#xD;
bootcmd:&#xD;
- ln -s -t /etc/rc.d /etc/rc.local&#xD;
hostname: Server-A&#xD;
manage_etc_hosts: true&#xD;
runcmd:&#xD;
- start ttyS0&#xD;
- systemctl start getty@ttyS0.service&#xD;
- systemctl start rc-local&#xD;
- sed -i '/^\s*PasswordAuthentication\s\+no/d' /etc/ssh/sshd_config&#xD;
- echo "UseDNS no" &gt;&gt; /etc/ssh/sshd_config&#xD;
- service ssh restart&#xD;
- service sshd restart&#xD;
users:&#xD;
- default&#xD;
- gecos: User configured by VIRL Configuration Engine 0.18.9&#xD;
lock-passwd: false&#xD;
name: cisco&#xD;
plain-text-passwd: cisco&#xD;
shell: /bin/bash&#xD;
ssh-authorized-keys:&#xD;
- VIRL-USER-SSH-PUBLIC-KEY&#xD;
sudo: ALL=(ALL) ALL&#xD;
write_files:&#xD;
- path: /etc/init/ttyS0.conf&#xD;
owner: root:root&#xD;
content: |&#xD;
# ttyS0 - getty&#xD;
# This service maintains a getty on ttyS0 from the point the system is&#xD;
# started until it is shut down again.&#xD;
start on stopped rc or RUNLEVEL=[12345]&#xD;
stop on runlevel [!12345]&#xD;
respawn&#xD;
exec /sbin/getty -L 115200 ttyS0 vt102&#xD;
permissions: '0644'&#xD;
- path: /etc/systemd/system/dhclient@.service&#xD;
content: |&#xD;
[Unit]&#xD;
Description=Run dhclient on %i interface&#xD;
After=network.target&#xD;
[Service]&#xD;
Type=oneshot&#xD;
ExecStart=/sbin/dhclient %i -pf /var/run/dhclient.%i.pid -lf /var/lib/dhclient/dhclient.%i.lease&#xD;
RemainAfterExit=yes&#xD;
owner: root:root&#xD;
permissions: '0644'&#xD;
- path: /etc/rc.local&#xD;
owner: root:root&#xD;
permissions: '0755'&#xD;
content: |-&#xD;
#!/bin/sh -e&#xD;
ifconfig eth1 up 192.168.2.200 netmask 255.255.255.0&#xD;
route del default&#xD;
route add default gw 192.168.2.1&#xD;
exit 0&#xD;
&#xD;
- path: /etc/resolv.conf&#xD;
owner: root:root&#xD;
permissions: '0644'&#xD;
content: |&#xD;
# ttyS0 - getty&#xD;
# This service maintains a getty on ttyS0 from the point the system is&#xD;
# started until it is shut down again.&#xD;
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>
<?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="flat-1" type="ASSET" subtype="FLAT" location="429,190">
<interface id="0" name="link0"/>
</node>
<node name="lxc-1" type="SIMPLE" subtype="lxc" location="520,247">
<extensions>
<entry key="config" type="String">#cloud-config&#xD;
bootcmd:&#xD;
- ln -s -t /etc/rc.d /etc/rc.local&#xD;
hostname: lxc-1&#xD;
manage_etc_hosts: true&#xD;
runcmd:&#xD;
- systemctl start rc-local&#xD;
- sed -i '/^\s*PasswordAuthentication\s\+no/d' /etc/ssh/sshd_config&#xD;
- echo "UseDNS no" &gt;&gt; /etc/ssh/sshd_config&#xD;
- service ssh restart&#xD;
- service sshd restart&#xD;
users:&#xD;
- default&#xD;
- gecos: User configured by VIRL Configuration Engine 0.23.9&#xD;
lock-passwd: false&#xD;
name: cisco&#xD;
plain-text-passwd: cisco&#xD;
shell: /bin/bash&#xD;
ssh-authorized-keys:&#xD;
- VIRL-USER-SSH-PUBLIC-KEY&#xD;
sudo: ALL=(ALL) ALL&#xD;
write_files:&#xD;
- path: /etc/systemd/system/dhclient@.service&#xD;
content: |&#xD;
[Unit]&#xD;
Description=Run dhclient on %i interface&#xD;
After=network.target&#xD;
[Service]&#xD;
Type=oneshot&#xD;
ExecStart=/sbin/dhclient %i -pf /var/run/dhclient.%i.pid -lf /var/lib/dhclient/dhclient.%i.lease&#xD;
RemainAfterExit=yes&#xD;
owner: root:root&#xD;
permissions: '0644'&#xD;
- path: /etc/rc.local&#xD;
owner: root:root&#xD;
permissions: '0755'&#xD;
content: |-&#xD;
#!/bin/sh&#xD;
ifconfig eth1 up&#xD;
dhclient -nw eth1&#xD;
systemctl start dhclient@eth1.service&#xD;
# add second nic connecting clients&#xD;
ifconfig eth2 10.10.0.1 netmask 255.255.0.0&#xD;
# set default gateway to VIRL host in flat1 &#xD;
route del -net default&#xD;
route add -net default gw 172.16.1.1&#xD;
# change dns&#xD;
echo "nameserver 8.8.8.8" &gt;/etc/resolv.conf&#xD;
echo "nameserver 8.8.4.4" &gt;&gt;/etc/resolv.conf &#xD;
# enable routing and NAT for 10.10.0.0/16&#xD;
sysctl -w net.ipv4.ip_forward=1&#xD;
iptables -A POSTROUTING -t nat -s 10.10.0.0/16 -o eth1 -j MASQUERADE&#xD;
exit 0&#xD;
</entry>
</extensions>
<interface id="0" name="eth1"/>
<interface id="1" name="eth2"/>
</node>
<node name="lxc-2" type="SIMPLE" subtype="lxc" location="659,241">
<extensions>
<entry key="config" type="String">#cloud-config&#xD;
bootcmd:&#xD;
- ln -s -t /etc/rc.d /etc/rc.local&#xD;
hostname: lxc-2&#xD;
manage_etc_hosts: true&#xD;
runcmd:&#xD;
- systemctl start rc-local&#xD;
- sed -i '/^\s*PasswordAuthentication\s\+no/d' /etc/ssh/sshd_config&#xD;
- echo "UseDNS no" &gt;&gt; /etc/ssh/sshd_config&#xD;
- service ssh restart&#xD;
- service sshd restart&#xD;
users:&#xD;
- default&#xD;
- gecos: User configured by VIRL Configuration Engine 0.23.9&#xD;
lock-passwd: false&#xD;
name: cisco&#xD;
plain-text-passwd: cisco&#xD;
shell: /bin/bash&#xD;
ssh-authorized-keys:&#xD;
- VIRL-USER-SSH-PUBLIC-KEY&#xD;
sudo: ALL=(ALL) ALL&#xD;
write_files:&#xD;
- path: /etc/systemd/system/dhclient@.service&#xD;
content: |&#xD;
[Unit]&#xD;
Description=Run dhclient on %i interface&#xD;
After=network.target&#xD;
[Service]&#xD;
Type=oneshot&#xD;
ExecStart=/sbin/dhclient %i -pf /var/run/dhclient.%i.pid -lf /var/lib/dhclient/dhclient.%i.lease&#xD;
RemainAfterExit=yes&#xD;
owner: root:root&#xD;
permissions: '0644'&#xD;
- path: /etc/rc.local&#xD;
owner: root:root&#xD;
permissions: '0755'&#xD;
content: |-&#xD;
#!/bin/sh&#xD;
ifconfig eth1 10.10.0.100 netmask 255.255.0.0&#xD;
# set default gateway to VIRL host in flat1 &#xD;
route del -net default&#xD;
route add -net default gw 10.10.0.1&#xD;
# change dns&#xD;
echo "nameserver 8.8.8.8" &gt;/etc/resolv.conf&#xD;
echo "nameserver 8.8.4.4" &gt;&gt;/etc/resolv.conf &#xD;
exit 0&#xD;
</entry>
</extensions>
<interface id="0" name="eth1"/>
</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[3]/virl:interface[1]" src="/virl:topology/virl:node[2]/virl:interface[2]"/>
</topology>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment