Difference between revisions of "Example-OSPF"

From VNUML-WIKI
Jump to: navigation, search
(Scenario)
(configure redirector to 1.8)
 
(29 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Title|OSPF Networking Laboratory}}
+
#REDIRECT [[Example-OSPF 1.8]]
 
 
<big>
 
Authors:
 
'''Fermín Galán (galan at dit.upm.es)'''
 
'''David Fern&aacute;ndez (david at dit.upm.es)'''
 
'''version 1.7, November 23rd, 2006'''
 
</big>
 
 
 
__TOC__
 
 
 
 
 
== Scenario ==
 
 
 
This example shows the VNUML implementation of a networking laboratory for OSPF dymanic routing protocol tests. It is a virtual implementation of the real-based network laboratory testbed of the [http://www.lab.dit.upm.es/~labrst/ Telematic Networks and Services Laboratory] (in Spanish) last exercise at [http://www.dit.upm.es/ DIT]-[http://www.upm.es UPM] grade course. This environment was used at [http://ithet2004.boun.edu.tr/ ITHET'04] in order to illustrate VNUML application for high educational purposes.The laboratory tries to resemble to the network of a distributed organization. The core of the network is a backbone (routers RB1, RB2, RB3 and RB4) that interconnects several regional headquarters (from A to F) to the central organization headquarters. Each regional headquarters provides connectivity for two sites (from 1 to 12).
 
 
 
<center>
 
</center>
 
 
 
[[Image:ospf_lab-small.png|center|frame|100px|OSPF Lab]]
 
 
 
kk
 
 
 
[[Image:ospf_lab.jpg|center|thumbnail|OSPF Lab]]   
 
 
 
The network layout is shown in the picture. Click to enlarge.
 
* Each site is composed of a computer (PCx) and an outbound router. The computer is configured with a default route to the outbound router.
 
* Each regional headquarters is composed of a server (SRx), an inbound router (RRx2) and an outbound router (RRx1). The server is configured with a default route to the outbound router.
 
* The central headquarters of several internals routers (RC1, RC2, RC3 and RC4) and a server (SC). All them are configured with default routes to the backbone. All the routers in the simulation (except for the ones in the central headquarters) run ospfd, a daemon process from the [http://www.zebra.org Zebra Suite] that implements [http://www.ietf.org/rfc/rfc2328.txt OSPF protocol]. This protocol allows each router to configure dynamic routes so, after a convergence time, global connectivity is achive once the simulation has been started. You'll need to download the [ospf_lab_conf.tar.gz  configuration for ospfd daemons] and unpacked it in the examples directory:
 
cd /usr/share/vnuml/examples
 
tar xfvz ospf_lab_conf.tar.gz
 
 
 
Note that this is a '''very big''' VNUML simulation, involving 51 virtual machines and 45 virtual networks. So, be aware that the hosting machine could get stressed (or even worse!). You can use the -w switch to increase the boot timeout (see [http://www.dit.upm.es/vnuml/doc/current/user/index.html#build_topology User Manual] for details). For example:
 
 
 
vnumlparser.pl -t ospf_lab.xml -v -w 120
 
 
 
(However, if your simulation is too big for your host, try to use a tiner version of the VNUML specification. For example, try to remove some of the regional headquarters and/or sites. There is a [ospf_lab_tiny.xml tiny version of ospf_lab.xml] with regional headquarters C, D and E; sites 2, 3 and 11; and servers SRA, RFB and SRF commented out in the XML)
 
 
 
Some examples of test performed with this virtual scenario:
 
 
 
* Connectivity from PC01 to PC12: 
 
 
 
PC01:~# traceroute -n 195.1.95.66
 
traceroute to 195.1.95.66 (195.1.95.66), 30 hops max, 38 byte packets
 
1  195.1.85.1  0.647 ms  0.614 ms  0.526 ms
 
2  195.1.95.193  0.976 ms  140.597 ms  0.814 ms
 
3  195.1.84.1  15.086 ms  1.097 ms  1.182 ms
 
4  195.1.95.161  1.404 ms  1.299 ms  1.322 ms
 
5  195.1.95.129  5.458 ms  2.132 ms  2.156 ms
 
6  195.1.95.138  11.272 ms  2.355 ms  2.301 ms
 
7  195.1.95.182  2.874 ms  2.798 ms  68.750 ms
 
8  195.1.94.2  3.377 ms  2.919 ms  3.116 ms
 
9  195.1.95.238  3.328 ms  3.189 ms  4.028 ms
 
10  195.1.95.66  4.896 ms  3.875 ms  4.395 ms
 
 
 
* Connectivity from PC01 to PC04: 
 
 
 
PC01:~# traceroute -n 195.1.87.66
 
traceroute to 195.1.87.66 (195.1.87.66), 30 hops max, 38 byte packets
 
1  195.1.85.1  1.127 ms  0.461 ms  0.494 ms
 
2  195.1.95.193  0.906 ms  0.701 ms  0.983 ms
 
3  195.1.84.1  1.230 ms  1.569 ms  1.249 ms
 
4  195.1.95.161  1.347 ms  1.309 ms  1.287 ms
 
5  195.1.95.166  2.131 ms  1.970 ms  1.753 ms
 
6  195.1.86.2  2.286 ms  2.622 ms  2.124 ms
 
7  195.1.95.206  2.449 ms  2.200 ms  2.647 ms
 
8  195.1.87.66  3.022 ms  2.741 ms  3.103 ms
 
 
 
* Connectivity from PC01 to SC: 
 
 
 
PC01:~# traceroute -n 10.0.11.22
 
traceroute to 10.0.11.22 (10.0.11.22), 30 hops max, 38 byte packets
 
1  195.1.85.1  0.599 ms  0.613 ms  0.503 ms
 
2  195.1.95.193  0.842 ms  0.790 ms  0.978 ms
 
3  195.1.84.1  1.291 ms  1.443 ms  1.084 ms
 
4  195.1.95.161  1.447 ms  1.318 ms  29.843 ms
 
5  195.1.95.129  2.391 ms  2.183 ms  1.761 ms
 
6  10.0.11.22  2.067 ms  2.153 ms  2.124 ms
 
 
 
* OSPF information from ospfd at RB1: 
 
 
 
RB1> show ip ospf route
 
============ OSPF network routing table ============
 
N    10.0.11.0/24          [10] area: (0.0.0.0)
 
                            directly attached to eth3
 
N    195.1.84.0/26        [30] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.85.0/26        [50] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.85.64/26        [50] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.86.0/26        [30] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.87.0/26        [50] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.87.64/26        [50] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.88.0/26        [40] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.89.0/26        [60] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.89.64/26        [60] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.90.0/26        [40] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.91.0/26        [60] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.91.64/26        [60] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.92.0/26        [30] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.93.0/26        [50] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.93.64/26        [50] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.94.0/26        [30] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.95.0/26        [50] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.95.64/26        [50] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.95.128/30      [10] area: (0.0.0.0)
 
                            directly attached to eth1
 
N    195.1.95.132/30      [20] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.95.136/30      [20] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.95.140/30      [10] area: (0.0.0.0)
 
                            directly attached to eth2
 
N    195.1.95.160/30      [20] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.130, eth1
 
N    195.1.95.164/30      [20] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.95.168/30      [30] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.95.172/30      [30] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.95.176/30      [20] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.95.180/30      [20] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.95.192/30      [40] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.95.196/30      [40] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.95.200/30      [40] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.95.204/30      [40] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
N    195.1.95.208/30      [50] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.95.212/30      [50] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.95.216/30      [50] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.95.220/30      [50] area: (0.0.0.0)
 
                            via 195.1.95.130, eth1
 
                            via 195.1.95.142, eth2
 
N    195.1.95.224/30      [40] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.95.228/30      [40] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.95.232/30      [40] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
N    195.1.95.236/30      [40] area: (0.0.0.0)
 
                            via 195.1.95.142, eth2
 
 
 
============ OSPF external routing table ===========
 
 
RB1> show ip ospf neighbor
 
 
Neighbor ID    Pri  State          Dead Time  Address        Interface          RXmtL RqstL DBsmL
 
195.1.95.165      1  Full/DR        00:00:37    195.1.95.130    eth1:195.1.95.129    0    0    0
 
195.1.95.181      1  Full/DR        00:00:33    195.1.95.142    eth2:195.1.95.141    0    0    0
 
 
RB1> show ip ospf interface
 
...
 
eth1 is up, line protocol is up
 
 
    Internet Address 195.1.95.129/30, Area (0.0.0.0)
 
    Router ID 195.1.95.141, Network Type BROADCAST, Cost: 10
 
    Transmit Delay is 1 sec, State Backup, Priority 1
 
    Designated Router (ID) 195.1.95.165, Interface Address 195.1.95.130
 
    Backup Designated Router (ID) 195.1.95.141, Interface Address 195.1.95.129
 
    Timer intarvals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
 
      Hello due in 00:00:09
 
    Neighbor Count is 1, Adjacent neighbor count is 1
 
eth2 is up, line protocol is up
 
 
    Internet Address 195.1.95.141/30, Area (0.0.0.0)
 
    Router ID 195.1.95.141, Network Type BROADCAST, Cost: 10
 
    Transmit Delay is 1 sec, State Backup, Priority 1
 
    Designated Router (ID) 195.1.95.181, Interface Address 195.1.95.142
 
    Backup Designated Router (ID) 195.1.95.141, Interface Address 195.1.95.141
 
    Timer intarvals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
 
        Hello due in 00:00:09
 
    Neighbor Count is 1, Adjacent neighbor count is 1
 
eth3 is up, line protocol is up
 
 
    Internet Address 10.0.11.50/24, Area (0.0.0.0)
 
    Router ID 195.1.95.141, Network Type BROADCAST, Cost: 10
 
    Transmit Delay is 1 sec, State DR, Priority 1
 
    Designated Router (ID) 195.1.95.141, Interface Address 10.0.11.50
 
    No backup designated router on this network
 
    Timer intarvals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
 
      Hello due in 00:00:06
 
    Neighbor Count is 0, Adjacent neighbor count is 0
 
...
 
 
 
You can download the simulation file from [ospf_lab.xml here].
 
 
 
The example could be improved in several ways. For example:
 
 
 
* The simulation is too big and this has a significative impact when building topology. A solution could be to split the simulation in several pieces, and building only desired parts for each testing case. Read more about this in the [../../user/index.html#concurrent_simulations VNUML User Manual].
 
 
 
* The provided configuration for ospfd daemons is quite simple: all the routers uses OSPF in all their directly connected networks and a single area is use. A multiarea configuration could be more desirable. In addition, some networks (specially PPP-like links between some routers) shouldn't be globally advertised.
 
 
 
== VNUML Description ==
 
 
 
</pre>
 
<?xml version="1.0" encoding="UTF-8"?>
 
<!DOCTYPE vnuml SYSTEM "/usr/share/xml/vnuml/vnuml.dtd">
 
<!-- usual mask values:
 
 
  /24 -> 255.255.255.0
 
  /26 -> 255.255.255.192
 
  /28 -> 255.255.255.240
 
  /30 -> 255.255.255.252
 
 
-->
 
 
<vnuml>
 
    <global>
 
      <version>1.7</version>
 
      <simulation_name>ospf_lab</simulation_name>
 
      <ssh_version>1</ssh_version>
 
      <ssh_key>~/.ssh/identity.pub</ssh_key>
 
      <automac offset="0"/>
 
      <vm_mgmt type="net" network="10.250.0.0" mask="24" offset="0">
 
          <mgmt_net sock="/var/run/vnuml/Mgmt_net.ctl" hostip="10.250.0.1"/>
 
      </vm_mgmt>
 
      <vm_defaults>
 
          <filesystem type="cow">/usr/share/vnuml/filesystems/root_fs_tutorial</filesystem>
 
          <kernel>/usr/share/vnuml/kernels/linux</kernel>
 
          <console id="0">pts</console>
 
      </vm_defaults>
 
    </global>
 
   
 
    <net name="Core1" mode="uml_switch" /> <!-- 195.1.95.128/30 -->
 
    <net name="Core2" mode="uml_switch" /> <!-- 195.1.95.132/30 -->
 
    <net name="Core3" mode="uml_switch" /> <!-- 195.1.95.136/30 -->
 
    <net name="Core4" mode="uml_switch" /> <!-- 195.1.95.140/30 -->
 
   
 
    <net name="boneA" mode="uml_switch" /> <!-- 195.1.95.160/30 -->
 
    <net name="boneB" mode="uml_switch" /> <!-- 195.1.95.164/30 -->
 
    <net name="boneC" mode="uml_switch" /> <!-- 195.1.95.168/30 -->
 
    <net name="boneD" mode="uml_switch" /> <!-- 195.1.95.172/30 -->
 
    <net name="boneE" mode="uml_switch" /> <!-- 195.1.95.176/30 -->
 
    <net name="boneF" mode="uml_switch" /> <!-- 195.1.95.180/30 -->
 
 
 
    <net name="sedeA" mode="uml_switch" /> <!-- 195.1.84.0/26 -->
 
    <net name="linkA01" mode="uml_switch" /> <!-- 195.1.95.192/30 -->
 
    <net name="linkA02" mode="uml_switch" /> <!-- 195.1.95.196/30 -->
 
    <net name="suc01" mode="uml_switch" /> <!-- 195.1.85.0/26 -->
 
    <net name="suc02" mode="uml_switch" /> <!-- 195.1.85.64/26 -->
 
 
 
    <net name="sedeB" mode="uml_switch" /> <!-- 195.1.86.0/26 -->
 
    <net name="linkB03" mode="uml_switch" /> <!-- 195.1.95.200/30 -->
 
    <net name="linkB04" mode="uml_switch" /> <!-- 195.1.95.204/30 -->
 
    <net name="suc03" mode="uml_switch" /> <!-- 195.1.87.0/26-->
 
    <net name="suc04" mode="uml_switch" /> <!-- 195.1.87.64/26 -->
 
 
 
    <net name="sedeC" mode="uml_switch" /> <!-- 195.1.88.0/26 -->
 
    <net name="linkC05" mode="uml_switch" /> <!-- 195.1.95.208/30 -->
 
    <net name="linkC06" mode="uml_switch" /> <!-- 195.1.95.212/30 -->
 
    <net name="suc05" mode="uml_switch" /> <!-- 195.1.89.0/26 -->
 
    <net name="suc06" mode="uml_switch" /> <!-- 195.1.89.64/26 -->
 
 
 
    <net name="sedeD" mode="uml_switch" /> <!-- 195.1.90.0/26 -->
 
    <net name="linkD07" mode="uml_switch" /> <!-- 195.1.95.216/30 -->
 
    <net name="linkD08" mode="uml_switch" /> <!-- 195.1.95.220/30 -->
 
    <net name="suc07" mode="uml_switch" /> <!-- 195.1.91.0/26 -->
 
    <net name="suc08" mode="uml_switch" /> <!-- 195.1.91.64/26 -->
 
 
 
    <net name="sedeE" mode="uml_switch" /> <!-- 195.1.92.0/26 -->
 
    <net name="linkE09" mode="uml_switch" /> <!-- 195.1.95.224/30 -->
 
    <net name="linkE10" mode="uml_switch" /> <!-- 195.1.95.228/30 -->
 
    <net name="suc09" mode="uml_switch" /> <!-- 195.1.93.0/26 -->
 
    <net name="suc10" mode="uml_switch" /> <!-- 195.1.93.64/26 -->
 
 
 
    <net name="sedeF" mode="uml_switch" /> <!-- 195.1.94.0/26 -->
 
    <net name="linkF11" mode="uml_switch" /> <!-- 195.1.95.232/30 -->
 
    <net name="linkF12" mode="uml_switch" /> <!-- 195.1.95.236/30 -->
 
    <net name="suc11" mode="uml_switch" /> <!-- 195.1.95.0/26 -->
 
    <net name="suc12" mode="uml_switch" /> <!-- 195.1.95.64/26 -->
 
 
 
    <net name="centraC" mode="uml_switch" /> <!-- 10.0.11.0/24 -->
 
    <net name="centra1" mode="uml_switch" /> <!-- 10.0.12.0/28 -->
 
    <net name="centra2" mode="uml_switch" /> <!-- 10.0.12.16/28 -->
 
    <net name="centra3" mode="uml_switch" /> <!-- 10.0.32.0/28 -->
 
    <net name="centra4" mode="uml_switch" /> <!-- 10.0.12.48/28 -->
 
 
    <!-- The Core -->
 
    <vm name="RB1">     
 
      <if id="1" net="Core1">
 
          <ipv4 mask="255.255.255.252">195.1.95.129</ipv4>
 
      </if>
 
      <if id="2" net="Core4">
 
          <ipv4 mask="255.255.255.252">195.1.95.141</ipv4>
 
      </if>
 
      <if id="3" net="centraC">
 
          <ipv4 mask="255.255.255.0">10.0.11.50</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RB1</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="RB2">
 
      <if id="1" net="Core1">
 
          <ipv4 mask="255.255.255.252">195.1.95.130</ipv4>
 
      </if>
 
      <if id="2" net="Core2">
 
          <ipv4 mask="255.255.255.252">195.1.95.133</ipv4>
 
      </if>
 
      <if id="3" net="boneA">
 
          <ipv4 mask="255.255.255.252">195.1.95.161</ipv4>
 
      </if>
 
      <if id="4" net="boneB">
 
          <ipv4 mask="255.255.255.252">195.1.95.165</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RB2</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="RB3">
 
      <if id="1" net="Core2">
 
          <ipv4 mask="255.255.255.252">195.1.95.134</ipv4>
 
      </if>
 
      <if id="2" net="Core3">
 
          <ipv4 mask="255.255.255.252">195.1.95.137</ipv4>
 
      </if>
 
      <if id="3" net="boneC">
 
          <ipv4 mask="255.255.255.252">195.1.95.169</ipv4>
 
      </if>
 
      <if id="4" net="boneD">
 
          <ipv4 mask="255.255.255.252">195.1.95.173</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RB3</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="RB4">
 
      <if id="1" net="Core3">
 
          <ipv4 mask="255.255.255.252">195.1.95.138</ipv4>
 
      </if>
 
      <if id="2" net="Core4">
 
          <ipv4 mask="255.255.255.252">195.1.95.142</ipv4>
 
      </if>
 
      <if id="3" net="boneE">
 
          <ipv4 mask="255.255.255.252">195.1.95.177</ipv4>
 
      </if>
 
      <if id="4" net="boneF">
 
          <ipv4 mask="255.255.255.252">195.1.95.181</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RB4</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
 
    <!-- Regional headquarters A -->
 
   
 
    <vm name="RRA1">
 
      <if id="1" net="boneA">
 
          <ipv4 mask="255.255.255.252">195.1.95.162</ipv4>
 
      </if>
 
      <if id="2" net="sedeA">
 
          <ipv4 mask="255.255.255.192">195.1.84.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRA1</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="RRA2">
 
      <if id="1" net="sedeA">
 
          <ipv4 mask="255.255.255.192">195.1.84.2</ipv4>
 
      </if>
 
      <if id="2" net="linkA01">
 
          <ipv4 mask="255.255.255.252">195.1.95.193</ipv4>
 
      </if>
 
      <if id="3" net="linkA02">
 
          <ipv4 mask="255.255.255.252">195.1.95.197</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRA2</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="SRA">
 
      <if id="1" net="sedeA">
 
          <ipv4 mask="255.255.255.192">195.1.84.3</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.84.1">default</route>
 
    </vm>
 
 
  <!-- Site 01 -->
 
   
 
    <vm name="rout01">
 
      <if id="1" net="linkA01">
 
          <ipv4 mask="255.255.255.252">195.1.95.194</ipv4>
 
      </if>
 
      <if id="2" net="suc01">
 
          <ipv4 mask="255.255.255.192">195.1.85.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout01</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="PC01">
 
      <if id="1" net="suc01">
 
          <ipv4 mask="255.255.255.192">195.1.85.2</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.85.1">default</route>
 
    </vm>
 
 
    <!-- Site 02 -->
 
   
 
    <vm name="rout02">
 
      <if id="1" net="linkA02">
 
          <ipv4 mask="255.255.255.252">195.1.95.198</ipv4>
 
      </if>
 
      <if id="2" net="suc02">
 
          <ipv4 mask="255.255.255.192">195.1.85.65</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout02</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="PC02">
 
      <if id="1" net="suc02">
 
          <ipv4 mask="255.255.255.192">195.1.85.66</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.85.65">default</route>
 
    </vm>
 
 
  <!-- Regional headquarters B -->
 
   
 
  <vm name="RRB1">
 
      <if id="1" net="boneB">
 
        <ipv4 mask="255.255.255.252">195.1.95.166</ipv4>
 
      </if>
 
      <if id="2" net="sedeB">
 
        <ipv4 mask="255.255.255.192">195.1.86.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRB1</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="RRB2">
 
      <if id="1" net="sedeB">
 
          <ipv4 mask="255.255.255.192">195.1.86.2</ipv4>
 
        </if>
 
        <if id="2" net="linkB03">
 
          <ipv4 mask="255.255.255.252">195.1.95.201</ipv4>
 
        </if>
 
      <if id="3" net="linkB04">
 
          <ipv4 mask="255.255.255.252">195.1.95.205</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRB2</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="SRB">
 
      <if id="1" net="sedeB">
 
          <ipv4 mask="255.255.255.192">195.1.86.3</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.86.1">default</route>
 
    </vm>
 
 
  <!-- Site 03 -->
 
 
  <vm name="rout03">
 
      <if id="1" net="linkB03">
 
        <ipv4 mask="255.255.255.252">195.1.95.202</ipv4>
 
      </if>
 
      <if id="2" net="suc03">
 
        <ipv4 mask="255.255.255.192">195.1.87.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout03</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="PC03">
 
      <if id="1" net="suc03">
 
          <ipv4 mask="255.255.255.192">195.1.87.2</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.87.1">default</route>
 
    </vm>
 
   
 
    <!-- Site 04 -->
 
   
 
    <vm name="rout04">
 
      <if id="1" net="linkB04">
 
          <ipv4 mask="255.255.255.252">195.1.95.206</ipv4>
 
      </if>
 
      <if id="2" net="suc04">
 
          <ipv4 mask="255.255.255.192">195.1.87.65</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout04</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec  seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="PC04">
 
      <if id="1" net="suc04">
 
          <ipv4 mask="255.255.255.192">195.1.87.66</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.87.65">default</route>
 
    </vm>
 
 
    <!-- Regional headquarters C -->
 
 
    <vm name="RRC1">
 
      <if id="1" net="boneC">
 
          <ipv4 mask="255.255.255.252">195.1.95.170</ipv4>
 
      </if>
 
      <if id="2" net="sedeC">
 
          <ipv4 mask="255.255.255.192">195.1.88.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRC1</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="RRC2">
 
      <if id="1" net="sedeC">
 
          <ipv4 mask="255.255.255.192">195.1.88.2</ipv4>
 
      </if>
 
      <if id="2" net="linkC05">
 
          <ipv4 mask="255.255.255.252">195.1.95.209</ipv4>
 
      </if>
 
      <if id="3" net="linkC06">
 
          <ipv4 mask="255.255.255.252">195.1.95.213</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRC2</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="SRC">
 
      <if id="1" net="sedeC">
 
          <ipv4 mask="255.255.255.192">195.1.88.3</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.88.1">default</route>
 
    </vm>
 
 
    <!-- Site 05 -->
 
   
 
    <vm name="rout05">
 
      <if id="1" net="linkC05">
 
          <ipv4 mask="255.255.255.252">195.1.95.210</ipv4>
 
      </if>
 
      <if id="2" net="suc05">
 
          <ipv4 mask="255.255.255.192">195.1.89.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout05</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="PC05"> 
 
      <if id="1" net="suc05">
 
          <ipv4 mask="255.255.255.192">195.1.89.2</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.89.1">default</route>
 
    </vm>
 
 
    <!-- Site 06 -->
 
   
 
    <vm name="rout06">
 
      <if id="1" net="linkC06">
 
          <ipv4 mask="255.255.255.252">195.1.95.214</ipv4>
 
      </if>
 
      <if id="2" net="suc06">
 
          <ipv4 mask="255.255.255.192">195.1.89.65</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout06</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="PC06"> 
 
      <if id="1" net="suc06">
 
          <ipv4 mask="255.255.255.192">195.1.89.66</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.89.65">default</route>
 
    </vm>
 
 
    <!-- Regional headquarters D -->
 
   
 
    <vm name="RRD1">
 
      <if id="1" net="boneD">
 
          <ipv4 mask="255.255.255.252">195.1.95.174</ipv4>
 
      </if>
 
      <if id="2" net="sedeD">
 
          <ipv4 mask="255.255.255.192">195.1.90.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRD1</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="RRD2">
 
      <if id="1" net="sedeD">
 
          <ipv4 mask="255.255.255.192">195.1.90.2</ipv4>
 
      </if>
 
      <if id="2" net="linkD07">
 
          <ipv4 mask="255.255.255.252">195.1.95.217</ipv4>
 
      </if>
 
      <if id="3" net="linkD08">
 
          <ipv4 mask="255.255.255.252">195.1.95.221</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRD2</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="SRD"> 
 
      <if id="1" net="sedeD">
 
          <ipv4 mask="255.255.255.192">195.1.90.3</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.90.1">default</route>
 
    </vm>
 
 
    <!-- Site 07 -->
 
   
 
    <vm name="rout07"> 
 
      <if id="1" net="linkD07">
 
          <ipv4 mask="255.255.255.252">195.1.95.218</ipv4>
 
      </if>
 
      <if id="2" net="suc07">
 
          <ipv4 mask="255.255.255.192">195.1.91.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout07</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="PC07">
 
      <if id="1" net="suc07">
 
          <ipv4 mask="255.255.255.192">195.1.91.2</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.91.1">default</route>
 
    </vm>
 
   
 
    <!-- Site 08 -->
 
 
 
    <vm name="rout08">
 
      <if id="1" net="linkD08">
 
          <ipv4 mask="255.255.255.252">195.1.95.222</ipv4>
 
      </if>
 
      <if id="2" net="suc08">
 
          <ipv4 mask="255.255.255.192">195.1.91.65</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout08</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="PC08">
 
      <if id="1" net="suc08">
 
          <ipv4 mask="255.255.255.192">195.1.91.66</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.91.65">default</route>
 
    </vm>
 
   
 
    <!-- Regional headquarters E -->
 
 
    <vm name="RRE1">
 
      <if id="1" net="boneE">
 
          <ipv4 mask="255.255.255.252">195.1.95.178</ipv4>
 
      </if>
 
      <if id="2" net="sedeE">
 
          <ipv4 mask="255.255.255.192">195.1.92.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRE1</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="RRE2"> 
 
      <if id="1" net="sedeE">
 
          <ipv4 mask="255.255.255.192">195.1.92.2</ipv4>
 
        </if>
 
        <if id="2" net="linkE09">
 
          <ipv4 mask="255.255.255.252">195.1.95.225</ipv4>
 
        </if>
 
        <if id="3" net="linkE10">
 
          <ipv4 mask="255.255.255.252">195.1.95.229</ipv4>
 
        </if>
 
        <forwarding type="ip"/>
 
        <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRE2</filetree>
 
        <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
        <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
        <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
        <exec seq="stop" type="verbatim">killall zebra</exec>
 
        <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="SRE"> 
 
        <if id="1" net="sedeE">
 
          <ipv4 mask="255.255.255.192">195.1.92.3</ipv4>
 
        </if>
 
        <route type="ipv4" gw="195.1.92.1">default</route>
 
    </vm>
 
 
    <!-- Site 09 -->
 
   
 
    <vm name="rout09">
 
      <if id="1" net="linkE09">
 
          <ipv4 mask="255.255.255.252">195.1.95.226</ipv4>
 
      </if>
 
      <if id="2" net="suc09">
 
          <ipv4 mask="255.255.255.192">195.1.93.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout09</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="PC09">
 
      <if id="1" net="suc09">
 
          <ipv4 mask="255.255.255.192">195.1.93.2</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.93.1">default</route>
 
    </vm>
 
 
    <!-- Site 10 -->
 
   
 
    <vm name="rout10">
 
      <if id="1" net="linkE10">
 
          <ipv4 mask="255.255.255.252">195.1.95.230</ipv4>
 
      </if>
 
      <if id="2" net="suc10">
 
          <ipv4 mask="255.255.255.192">195.1.93.65</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout10</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="PC10">
 
      <if id="1" net="suc10">
 
          <ipv4 mask="255.255.255.192">195.1.93.66</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.93.65">default</route>
 
    </vm>
 
 
    <!-- Regional headquarters F -->
 
 
    <vm name="RRF1">
 
      <if id="1" net="boneF">
 
          <ipv4 mask="255.255.255.252">195.1.95.182</ipv4>
 
      </if>
 
      <if id="2" net="sedeF">
 
          <ipv4 mask="255.255.255.192">195.1.94.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRF1</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="RRF2">
 
      <if id="1" net="sedeF">
 
          <ipv4 mask="255.255.255.192">195.1.94.2</ipv4>
 
      </if>
 
      <if id="2" net="linkF11">
 
          <ipv4 mask="255.255.255.252">195.1.95.233</ipv4>
 
      </if>
 
      <if id="3" net="linkF12">
 
          <ipv4 mask="255.255.255.252">195.1.95.237</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/RRF2</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="SRF">
 
      <if id="1" net="sedeF">
 
          <ipv4 mask="255.255.255.192">195.1.94.3</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.94.1">default</route>
 
    </vm>
 
 
    <!-- Site 11 -->
 
   
 
    <vm name="rout11">
 
      <if id="1" net="linkF11">
 
          <ipv4 mask="255.255.255.252">195.1.95.234</ipv4>
 
      </if>
 
      <if id="2" net="suc11">
 
          <ipv4 mask="255.255.255.192">195.1.95.1</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout11</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
   
 
    <vm name="PC11">
 
      <if id="1" net="suc11">
 
          <ipv4 mask="255.255.255.192">195.1.95.2</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.95.1">default</route>
 
    </vm>
 
 
    <!-- Site 12 -->
 
     
 
    <vm name="rout12">
 
      <if id="1" net="linkF12">
 
          <ipv4 mask="255.255.255.252">195.1.95.238</ipv4>
 
      </if>
 
      <if id="2" net="suc12">
 
          <ipv4 mask="255.255.255.192">195.1.95.65</ipv4>
 
      </if>
 
      <forwarding type="ip"/>
 
      <filetree root="/etc/zebra" when="start">/usr/share/vnuml/examples/conf/ospf_lab/rout12</filetree>
 
      <exec seq="start" type="verbatim">for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 0 amp;gt; $f; done</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/zebra -f /etc/zebra/zebra.conf -d</exec>
 
      <exec seq="start" type="verbatim">/usr/local/sbin/ospfd -f /etc/zebra/ospfd.conf -d</exec>
 
      <exec seq="stop" type="verbatim">killall zebra</exec>
 
      <exec seq="stop" type="verbatim">killall ospfd</exec>
 
    </vm>
 
     
 
    <vm name="PC12"> 
 
      <if id="1" net="suc12">
 
          <ipv4 mask="255.255.255.192">195.1.95.66</ipv4>
 
      </if>
 
      <route type="ipv4" gw="195.1.95.65">default</route>
 
    </vm>
 
 
    <!-- Central headquarters --> 
 
 
    <vm name="RC1">
 
      <if id="1" net="centraC">
 
          <ipv4 mask="255.255.255.0">10.0.11.1</ipv4>
 
      </if>
 
      <if id="2" net="centra1">
 
          <ipv4 mask="255.255.255.240">10.0.12.1</ipv4>
 
      </if>
 
      <route type="ipv4" gw="10.0.11.50">default</route>
 
    </vm>
 
   
 
    <vm name="RC2"> 
 
      <if id="1" net="centraC">
 
          <ipv4 mask="255.255.255.0">10.0.11.2</ipv4>
 
      </if>
 
      <if id="2" net="centra2">
 
          <ipv4 mask="255.255.255.240">10.0.12.17</ipv4>
 
      </if>
 
      <route type="ipv4" gw="10.0.11.50">default</route>
 
    </vm>
 
   
 
    <vm name="RC3">
 
      <if id="1" net="centraC">
 
          <ipv4 mask="255.255.255.0">10.0.11.3</ipv4>
 
      </if>
 
      <if id="2" net="centra3">
 
          <ipv4 mask="255.255.255.240">10.0.32.1</ipv4>
 
      </if>
 
      <route type="ipv4" gw="10.0.11.50">default</route>
 
    </vm>
 
   
 
    <vm name="RC4"> 
 
      <if id="1" net="centraC">
 
          <ipv4 mask="255.255.255.0">10.0.11.4</ipv4>
 
      </if>
 
      <if id="2" net="centra3">
 
          <ipv4 mask="255.255.255.240">10.0.12.49</ipv4>
 
      </if>
 
      <route type="ipv4" gw="10.0.11.50">default</route>
 
    </vm>
 
   
 
    <vm name="SC">
 
      <if id="1" net="centraC">
 
          <ipv4 mask="255.255.255.0">10.0.11.22</ipv4>
 
      </if>
 
      <route type="ipv4" gw="10.0.11.50">default</route>
 
    </vm>
 
   
 
</vnuml>
 
</pre>
 
 
 
== Old Releases ==
 
 
 
* [http://jungla.dit.upm.es/~vnuml/doc/examples/ospf_lab/1.3/ospf_lab.html 1.3]
 
* [http://jungla.dit.upm.es/~vnuml/doc/examples/ospf_lab/1.6/ospf_lab.html 1.6]
 

Latest revision as of 20:03, 30 January 2009

Redirect to: