Browse Source
Merge branch 'master' of https://gogs.informatik.hs-fulda.de/srieger/git-virl-hs-fulda
master
Merge branch 'master' of https://gogs.informatik.hs-fulda.de/srieger/git-virl-hs-fulda
master
anxietypb
8 years ago
4 changed files with 630 additions and 129 deletions
-
11GIT-VIRL-HS-Fulda/Advanced Computer Networks (Master AI)/advcompnet-lab1-dcn-scenario1.virl
-
5GIT-VIRL-HS-Fulda/Advanced Computer Networks (Master AI)/advcompnet-lab3-sdn-lxc.virl
-
622GIT-VIRL-HS-Fulda/Kommunikationsnetze und -protokolle (Bachelor AI)/kommprot-lab3-wanem-ok.virl
-
121GIT-VIRL-HS-Fulda/topology.virl
@ -0,0 +1,622 @@ |
|||
<?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> |
@ -1,121 +0,0 @@ |
|||
<?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
 |
|||
bootcmd:
 |
|||
- ln -s -t /etc/rc.d /etc/rc.local
 |
|||
hostname: lxc-1
 |
|||
manage_etc_hosts: true
 |
|||
runcmd:
 |
|||
- 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/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
 |
|||
dhclient -nw eth1
 |
|||
systemctl start dhclient@eth1.service
 |
|||
# add second nic connecting clients
 |
|||
ifconfig eth2 10.10.0.1 netmask 255.255.0.0
 |
|||
# set default gateway to VIRL host in flat1 
 |
|||
route del -net default
 |
|||
route add -net default gw 172.16.1.1
 |
|||
# change dns
 |
|||
echo "nameserver 8.8.8.8" >/etc/resolv.conf
 |
|||
echo "nameserver 8.8.4.4" >>/etc/resolv.conf 
 |
|||
# enable routing and NAT for 10.10.0.0/16
 |
|||
sysctl -w net.ipv4.ip_forward=1
 |
|||
iptables -A POSTROUTING -t nat -s 10.10.0.0/16 -o eth1 -j MASQUERADE
 |
|||
exit 0
 |
|||
</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
 |
|||
bootcmd:
 |
|||
- ln -s -t /etc/rc.d /etc/rc.local
 |
|||
hostname: lxc-2
 |
|||
manage_etc_hosts: true
 |
|||
runcmd:
 |
|||
- 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/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 10.10.0.100 netmask 255.255.0.0
 |
|||
# set default gateway to VIRL host in flat1 
 |
|||
route del -net default
 |
|||
route add -net default gw 10.10.0.1
 |
|||
# change dns
 |
|||
echo "nameserver 8.8.8.8" >/etc/resolv.conf
 |
|||
echo "nameserver 8.8.4.4" >>/etc/resolv.conf 
 |
|||
exit 0
 |
|||
</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> |
Write
Preview
Loading…
Cancel
Save
Reference in new issue