Browse Source
Merge branch 'master' of ssh://git@gogs.informatik.hs-fulda.de/srieger/git-virl-hs-fulda.git
master
Merge branch 'master' of ssh://git@gogs.informatik.hs-fulda.de/srieger/git-virl-hs-fulda.git
master
Sebastian Rieger
8 years ago
5 changed files with 521 additions and 1145 deletions
-
12GIT-VIRL-HS-Fulda/Advanced Computer Networks (Master AI)/advcompnet-lab3-sdn-lxc.virl
-
293GIT-VIRL-HS-Fulda/Advanced Computer Networks (Master AI)/advcompnet-lab3-sdn.virl
-
677GIT-VIRL-HS-Fulda/Kommunikationsnetze und -protokolle (Bachelor AI)/kommprot-lab3-wanem.virl
-
541GIT-VIRL-HS-Fulda/Kommunikationsnetze und -protokolle (Bachelor AI)/kommprot-lab3-wanem_without_false_arp_entry.virl
-
121GIT-VIRL-HS-Fulda/topology.virl
@ -1,293 +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.9" xsi:schemaLocation="http://www.cisco.com/VIRL https://raw.github.com/CiscoVIRL/schema/v0.9/virl.xsd"> |
|
||||
<extensions> |
|
||||
<entry key="management_network" type="String">exclusive</entry> |
|
||||
</extensions> |
|
||||
<node name="client" type="SIMPLE" subtype="server" location="387,214" ipv4="10.10.20.10"> |
|
||||
<extensions> |
|
||||
<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.15.8
 |
|
||||
lock-passwd: false
 |
|
||||
name: cisco
 |
|
||||
plain-text-passwd: cisco
 |
|
||||
shell: /bin/bash
 |
|
||||
ssh-authorized-keys:
 |
|
||||
- VIRL-USER-SSH-PUBLIC-KEY
 |
|
||||
sudo: ALL=(ALL) ALL
 |
|
||||
packages:
 |
|
||||
- joe
 |
|
||||
- iperf
 |
|
||||
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 10.10.20.10 netmask 255.255.255.0
 |
|
||||
exit 0
 |
|
||||
</entry> |
|
||||
</extensions> |
|
||||
<interface id="0" name="eth1" ipv4="10.0.0.9" netPrefixLenV4="30"/> |
|
||||
</node> |
|
||||
<node name="server" type="SIMPLE" subtype="server" location="673,214" ipv4="10.10.20.20"> |
|
||||
<extensions> |
|
||||
<entry key="config" type="String">#cloud-config
 |
|
||||
bootcmd:
 |
|
||||
- ln -s -t /etc/rc.d /etc/rc.local
 |
|
||||
hostname: server
 |
|
||||
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.15.8
 |
|
||||
lock-passwd: false
 |
|
||||
name: cisco
 |
|
||||
plain-text-passwd: cisco
 |
|
||||
shell: /bin/bash
 |
|
||||
ssh-authorized-keys:
 |
|
||||
- VIRL-USER-SSH-PUBLIC-KEY
 |
|
||||
sudo: ALL=(ALL) ALL
 |
|
||||
packages:
 |
|
||||
- joe
 |
|
||||
- iperf
 |
|
||||
- apache2
 |
|
||||
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 10.10.20.20 netmask 255.255.255.0
 |
|
||||
exit 0
 |
|
||||
</entry> |
|
||||
</extensions> |
|
||||
<interface id="0" name="eth1" ipv4="10.0.0.5" netPrefixLenV4="30"/> |
|
||||
</node> |
|
||||
<node name="controller" type="SIMPLE" subtype="server" location="506,54" vmFlavor="server-medium [9094074e-b640-4fd7-b296-efa4ddaca4c5]" ipv4="10.10.10.254"> |
|
||||
<extensions> |
|
||||
<entry key="config" type="String">#cloud-config
 |
|
||||
bootcmd:
 |
|
||||
- ln -s -t /etc/rc.d /etc/rc.local
 |
|
||||
hostname: controller
 |
|
||||
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
 |
|
||||
- /tmp/install-odl
 |
|
||||
users:
 |
|
||||
- default
 |
|
||||
- gecos: User configured by VIRL Configuration Engine 0.15.8
 |
|
||||
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 10.10.10.254 netmask 255.255.255.0
 |
|
||||
ifconfig eth2 up
 |
|
||||
dhclient eth2
 |
|
||||
# set default gateway to VIRL host in flat1 
 |
|
||||
route del -net default
 |
|
||||
route add -net default gw 172.16.1.254
 |
|
||||
# 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 eth2 -j MASQUERADE
 |
|
||||
exit 0
 |
|
||||
- path: /tmp/install-odl
 |
|
||||
owner: root:root
 |
|
||||
permissions: '0755'
 |
|
||||
content: |-
 |
|
||||
#!/bin/sh -e
 |
|
||||
apt-get update
 |
|
||||
apt-get install -y joe iperf unzip openjdk-7-jre-headless
 |
|
||||
#mkdir /tmp/d
ebs
 |
|
||||
|
|
||||
#cd /tmp/debs
 |
|
||||
#wget http://mmnet.informatik.hs-fulda.de/opendaylight-dep-debs.tar.gz
 |
|
||||
#tar zxvf opendaylight-dep-debs.tar.gz
 |
|
||||
#dpkg -i *.deb
 |
|
||||
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/jre/
 |
|
||||
echo "export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/jre/" >/etc/profile.d/Z99-java-home.sh
 |
|
||||
# setup opendaylight controller
 |
|
||||
#################
 |
|
||||
# Hydrogen
 |
|
||||
#################
 |
|
||||
cd /tmp
 |
|
||||
wget http://mmnet.informatik.hs-fulda.de/distributions-base-0.1.1-osgipackage.zip
 |
|
||||
unzip distributions-base-0.1.1-osgipackage.zip
 |
|
||||
#################
 |
|
||||
# Lithium
 |
|
||||
#################
 |
|
||||
#wget http://mmnet.informatik.hs-fulda.de/distribution-karaf-0.3.0-Lithium.tar.gz
 |
|
||||
#tar zxf distribution-karaf-0.3.0-Lithium.tar.gz
 |
|
||||
#echo -e "feature:install odl-restconf odl-l2switch-switch odl-mdsal-apidocs odl-dlux-core odl-dlux-node odl-dlux-yangui\nlogout" | ./distribution-karaf-0.3.0-Lithium/bin/karaf
 |
|
||||
#./distribution-karaf-0.3.0-Lithium/bin/start
 |
|
||||
#
 |
|
||||
#################
 |
|
||||
# LXDE
 |
|
||||
#################
 |
|
||||
# apt-get -y install midori lxde wireshark
 |
|
||||
exit 0</entry> |
|
||||
</extensions> |
|
||||
<interface id="0" name="eth1" ipv4="10.0.0.13" netPrefixLenV4="30"/> |
|
||||
<interface id="1" name="eth2"/> |
|
||||
</node> |
|
||||
<node name="veos-1" type="SIMPLE" subtype="vEOS" location="514,148" ipv4="10.10.10.253"> |
|
||||
<extensions> |
|
||||
<entry key="Auto-generate config" type="Boolean">false</entry> |
|
||||
<entry key="config" type="String">! Command: show running-config
 |
|
||||
! device: vEOS-1 (vEOS, EOS-4.14.2F)
 |
|
||||
!
 |
|
||||
! boot system flash:/vEOS.swi
 |
|
||||
!
 |
|
||||
! AdvCompNet Lab 2 SDN
 |
|
||||
!
 |
|
||||
transceiver qsfp default-mode 4x10G
 |
|
||||
!
 |
|
||||
hostname veos-1
 |
|
||||
!
 |
|
||||
openflow
 |
|
||||
description SDN-OpenFlow-Lab
 |
|
||||
controller tcp:10.10.10.254:6633
 |
|
||||
bind interface Ethernet1
 |
|
||||
bind interface Ethernet2
 |
|
||||
!
 |
|
||||
spanning-tree mode mstp
 |
|
||||
!
 |
|
||||
no aaa root
 |
|
||||
!
 |
|
||||
username admin privilege 15 role network-admin secret 5 $1$S4W0XejC$69vFakMKc/k9N.nrrTiIY/
 |
|
||||
username cisco privilege 15 role network-admin secret 5 $1$rQS0W9wP$ZUzVG2XoGCCZCJopFp1aV/
 |
|
||||
!
 |
|
||||
vlan 10
 |
|
||||
!
 |
|
||||
interface Ethernet1
 |
|
||||
!
 |
|
||||
interface Ethernet2
 |
|
||||
!
 |
|
||||
interface Ethernet3
 |
|
||||
switchport access vlan 10
 |
|
||||
!
 |
|
||||
interface Management1
 |
|
||||
! ip of ma1 configured on launch
 |
|
||||
!
 |
|
||||
interface Vlan10
 |
|
||||
ip address 10.10.10.253/24
 |
|
||||
!
 |
|
||||
no ip routing
 |
|
||||
ip route 0.0.0.0 0.0.0.0 10.10.10.254
 |
|
||||
!
 |
|
||||
!
 |
|
||||
end</entry> |
|
||||
</extensions> |
|
||||
<interface id="0" name="Ethernet1" ipv4="10.0.0.10" netPrefixLenV4="30"/> |
|
||||
<interface id="1" name="Ethernet2" ipv4="10.0.0.6" netPrefixLenV4="30"/> |
|
||||
<interface id="2" name="Ethernet3" ipv4="10.0.0.14" netPrefixLenV4="30"/> |
|
||||
</node> |
|
||||
<node name="flat-1" type="ASSET" subtype="FLAT" location="411,38"> |
|
||||
<interface id="0" name="link0"/> |
|
||||
</node> |
|
||||
<connection dst="/virl:topology/virl:node[1]/virl:interface[1]" src="/virl:topology/virl:node[4]/virl:interface[1]"/> |
|
||||
<connection dst="/virl:topology/virl:node[2]/virl:interface[1]" src="/virl:topology/virl:node[4]/virl:interface[2]"/> |
|
||||
<connection dst="/virl:topology/virl:node[3]/virl:interface[1]" src="/virl:topology/virl:node[4]/virl:interface[3]"/> |
|
||||
<connection dst="/virl:topology/virl:node[5]/virl:interface[1]" src="/virl:topology/virl:node[3]/virl:interface[2]"/> |
|
||||
</topology> |
|
@ -1,541 +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.9" xsi:schemaLocation="http://www.cisco.com/VIRL https://raw.github.com/CiscoVIRL/schema/v0.9/virl.xsd"> |
|
||||
<node name="Router-A" type="SIMPLE" subtype="IOSv" location="220,198"> |
|
||||
<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"/> |
|
||||
<interface id="2" name="GigabitEthernet0/3"/> |
|
||||
<interface id="3" name="GigabitEthernet0/4"/> |
|
||||
</node> |
|
||||
<node name="Client" type="SIMPLE" subtype="server" location="158,285"> |
|
||||
<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
 |
|
||||
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" ipv4="192.168.1.100" netPrefixLenV4="24"/> |
|
||||
</node> |
|
||||
<node name="ISP" type="SIMPLE" subtype="wanEM" location="340,139" vmImage="wanEM-bash-init-aktuell [d38b887a-e92a-41ad-9f86-f6d81d7afeb8]" vmFlavor="m1.small [2]"> |
|
||||
<extensions> |
|
||||
<entry key="Auto-generate config" type="Boolean">false</entry> |
|
||||
<entry key="config" type="String"> 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
 |
|
||||

 |
|
||||
route add default gw 172.16.1.254 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 -A FORWARD -i eth2 -j ACCEPT
 |
|
||||
iptables -A FORWARD -i eth1 -j ACCEPT
 |
|
||||
/sbin/tc qdisc add dev eth2 root handle 1:1 netem delay 100ms loss 5%
 |
|
||||
service ssh start
 |
|
||||

 |
|
||||
hostname ISP
 |
|
||||

 |
|
||||
exit 0
 |
|
||||
</entry> |
|
||||
</extensions> |
|
||||
<interface id="0" name="Ethernet1" ipv4="192.168.101.1" netPrefixLenV4="24"/> |
|
||||
<interface id="1" name="Ethernet2" ipv4="192.168.102.1" netPrefixLenV4="24"/> |
|
||||
<interface id="2" name="Ethernet3"/> |
|
||||
</node> |
|
||||
<node name="Router-B" type="SIMPLE" subtype="IOSv" location="442,185"> |
|
||||
<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="Server-B" type="SIMPLE" subtype="server" location="405,302" vmImage="server-uwmadmin-server-Server-B-aktuell [df1463d4-87d0-439f-96d6-ea7aeacccaf3]"> |
|
||||
<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 |
|
||||
- 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 |
|
||||
echo "nameserver 8.8.8.8" >/etc/resolv.conf |
|
||||
exit 0 |
|
||||
</entry> |
|
||||
</extensions> |
|
||||
<interface id="0" name="eth1" ipv4="192.168.2.100" netPrefixLenV4="24"/> |
|
||||
</node> |
|
||||
<node name="flat-1" type="ASSET" subtype="FLAT" location="358,16"> |
|
||||
<interface id="0" name="link0"/> |
|
||||
</node> |
|
||||
<node name="Server-A" type="SIMPLE" subtype="server" location="650,215" vmImage="server-uwmadmin-server-Server-B-aktuell [df1463d4-87d0-439f-96d6-ea7aeacccaf3]"> |
|
||||
<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" ipv4="10.0.0.14" netPrefixLenV4="30"/> |
|
||||
</node> |
|
||||
<node name="Switch-A" type="SIMPLE" subtype="IOSvL2" location="578,316"> |
|
||||
<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> |
|
||||
<connection dst="/virl:topology/virl:node[3]/virl:interface[1]" src="/virl:topology/virl:node[1]/virl:interface[1]"/> |
|
||||
<connection dst="/virl:topology/virl:node[4]/virl:interface[1]" src="/virl:topology/virl:node[3]/virl:interface[2]"/> |
|
||||
<connection dst="/virl:topology/virl:node[3]/virl:interface[3]" src="/virl:topology/virl:node[6]/virl:interface[1]"/> |
|
||||
<connection dst="/virl:topology/virl:node[2]/virl:interface[1]" src="/virl:topology/virl:node[1]/virl:interface[2]"/> |
|
||||
<connection dst="/virl:topology/virl:node[8]/virl:interface[1]" src="/virl:topology/virl:node[4]/virl:interface[2]"/> |
|
||||
<connection dst="/virl:topology/virl:node[8]/virl:interface[2]" src="/virl:topology/virl:node[7]/virl:interface[1]"/> |
|
||||
<connection dst="/virl:topology/virl:node[8]/virl:interface[3]" src="/virl:topology/virl:node[5]/virl:interface[1]"/> |
|
||||
</topology> |
|
@ -0,0 +1,121 @@ |
|||||
|
<?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