Difference between revisions of "Example-NSF-14 1.9"

From VNUML-WIKI
Jump to: navigation, search
(rollback to fix problem)
 
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Title|NSF Network with 14 nodes}}
 
 
 
<big>
 
<big>
 
  Authors:
 
  Authors:
Line 21: Line 19:
 
</center>
 
</center>
  
A VNUML scenario implementing the NSF topology is shown in this example. All the routers in the simulation run ospfd, a daemon process from the Zebra Suite that implements 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. OSPF-based routing have been implemented using OSPFD plugin with [[#OSPF_plugin_configuration_file|this configuration file]].
+
A VNUML scenario implementing the NSF topology is shown in this example. All the routers in the simulation run ospfd, a daemon process from the Zebra Suite that implements 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. Since version 1.9 of VNUML, OSPF-based routing have been implemented using OSPFD plugin with [[#OSPF_plugin_configuration_file|this configuration file]].
  
 
Once the scenario is up, start the routing daemons (which configuration files are automatically generated by the OSPF plugin) using the following command:
 
Once the scenario is up, start the routing daemons (which configuration files are automatically generated by the OSPF plugin) using the following command:
Line 131: Line 129:
 
============ OSPF router routing table =============
 
============ OSPF router routing table =============
  
 +
============ OSPF external routing table ===========
 +
 +
WA# sh ip ospf neighbor
  
 +
    Neighbor ID Pri State          Dead Time Address        Interface            RXmtL RqstL DBsmL
 +
10.0.50.2        1 Full/DR          32.439s 10.0.5.2        eth1:10.0.5.1            0    0    0
 +
10.0.50.3        1 Full/DR          32.542s 10.0.5.6        eth2:10.0.5.5            0    0    0
 +
10.0.50.7        1 Full/DR          33.041s 10.0.5.10      eth3:10.0.5.9            0    0    0
 +
WA# sh ip ospf interface
 +
dummy0 is down
 +
  ifindex 7, MTU 1500 bytes, BW 0 Kbit  <BROADCAST,NOARP>
 +
  OSPF not enabled on this interface
 +
eth0 is up
 +
  ifindex 5, MTU 1500 bytes, BW 0 Kbit  <UP,BROADCAST,RUNNING,MULTICAST>
 +
  OSPF not enabled on this interface
 +
eth1 is up
 +
  ifindex 1, MTU 1500 bytes, BW 0 Kbit  <UP,BROADCAST,RUNNING,PROMISC,MULTICAST>
 +
  Internet Address 10.0.5.1/30, Broadcast 10.0.5.3, Area 0.0.0.0
 +
  MTU mismatch detection:enabled
 +
  Router ID 10.0.50.1, Network Type BROADCAST, Cost: 10
 +
  Transmit Delay is 1 sec, State Backup, Priority 1
 +
  Designated Router (ID) 10.0.50.2, Interface Address 10.0.5.2
 +
  Backup Designated Router (ID) 10.0.50.1, Interface Address 10.0.5.1
 +
  Multicast group memberships: OSPFAllRouters OSPFDesignatedRouters
 +
  Timer intervals configured, Hello 10s, Dead 40s, Wait 40s, Retransmit 5
 +
    Hello due in 5.703s
 +
  Neighbor Count is 1, Adjacent neighbor count is 1
 +
eth2 is up
 +
  ifindex 2, MTU 1500 bytes, BW 0 Kbit  <UP,BROADCAST,RUNNING,PROMISC,MULTICAST>
 +
  Internet Address 10.0.5.5/30, Broadcast 10.0.5.7, Area 0.0.0.0
 +
  MTU mismatch detection:enabled
 +
  Router ID 10.0.50.1, Network Type BROADCAST, Cost: 10
 +
  Transmit Delay is 1 sec, State Backup, Priority 1
 +
  Designated Router (ID) 10.0.50.3, Interface Address 10.0.5.6
 +
  Backup Designated Router (ID) 10.0.50.1, Interface Address 10.0.5.5
 +
  Multicast group memberships: OSPFAllRouters OSPFDesignatedRouters
 +
  Timer intervals configured, Hello 10s, Dead 40s, Wait 40s, Retransmit 5
 +
    Hello due in 5.807s
 +
  Neighbor Count is 1, Adjacent neighbor count is 1
 +
eth3 is up
 +
  ifindex 3, MTU 1500 bytes, BW 0 Kbit  <UP,BROADCAST,RUNNING,PROMISC,MULTICAST>
 +
  Internet Address 10.0.5.9/30, Broadcast 10.0.5.11, Area 0.0.0.0
 +
  MTU mismatch detection:enabled
 +
  Router ID 10.0.50.1, Network Type BROADCAST, Cost: 10
 +
  Transmit Delay is 1 sec, State Backup, Priority 1
 +
  Designated Router (ID) 10.0.50.7, Interface Address 10.0.5.10
 +
  Backup Designated Router (ID) 10.0.50.1, Interface Address 10.0.5.9
 +
  Multicast group memberships: OSPFAllRouters OSPFDesignatedRouters
 +
  Timer intervals configured, Hello 10s, Dead 40s, Wait 40s, Retransmit 5
 +
    Hello due in 6.311s
 +
  Neighbor Count is 1, Adjacent neighbor count is 1
 +
ip6tnl0 is down
 +
  ifindex 9, MTU 1460 bytes, BW 0 Kbit  <NOARP>
 +
  OSPF not enabled on this interface
 +
lo is up
 +
  ifindex 6, MTU 16436 bytes, BW 0 Kbit  <UP,LOOPBACK,RUNNING>
 +
  Internet Address 10.0.50.1/32, Area 0.0.0.0
 +
  MTU mismatch detection:enabled
 +
  Router ID 10.0.50.1, Network Type LOOPBACK, Cost: 10
 +
  Transmit Delay is 1 sec, State Loopback, Priority 1
 +
  No designated router on this network
 +
  No backup designated router on this network
 +
  Multicast group memberships: <None>
 +
  Timer intervals configured, Hello 10s, Dead 40s, Wait 40s, Retransmit 5
 +
    Hello due in inactive
 +
  Neighbor Count is 0, Adjacent neighbor count is 0
 +
sit0 is down
 +
  ifindex 8, MTU 1480 bytes, BW 0 Kbit  <NOARP>
 +
  OSPF not enabled on this interface
 +
</pre>
  
== VNUML Description ==
+
'''Thing to do'''. If you want to help us to improve this example (please, [mailto:vnuml-at-dit.upm.es tell us about] :), the following enhancements could be done:
  
<br/>
+
* A IPv6 version of the scenario (using the [[Reference#<ipv6>|<ipv6>]] tags)
<pre>
 
<?xml version='1.0' encoding='UTF-8'?>
 
<!DOCTYPE vnuml SYSTEM '/usr/share/xml/vnuml/vnuml.dtd'>
 
<vnuml>
 
<global>
 
    <version>1.9</version>
 
    <simulation_name>nsfnet</simulation_name>
 
    <automac/>
 
    <vm_mgmt type="private" network="10.250.0.0" mask="16" offset="0">
 
      <host_mapping/>
 
    </vm_mgmt>
 
    <vm_defaults exec_mode='mconsole'>
 
      <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>
 
    <extension plugin="ospfd" conf="nsf-14_ospf_conf.xml" />
 
  </global>
 
  <net name='il-ne' mode='uml_switch'/>
 
  <net name='mi-ut' mode='uml_switch'/>
 
  <net name='dc-ny' mode='uml_switch'/>
 
  <net name='il-wa' mode='uml_switch'/>
 
  <net name='ca2-tx' mode='uml_switch'/>
 
  <net name='dc-tx' mode='uml_switch'/>
 
  <net name='co-tx' mode='uml_switch'/>
 
  <net name='ca1-ut' mode='uml_switch'/>
 
  <net name='dc-nj' mode='uml_switch'/>
 
  <net name='ca1-wa' mode='uml_switch'/>
 
  <net name='ca1-ca2' mode='uml_switch'/>
 
  <net name='nj-pa' mode='uml_switch'/>
 
  <net name='mi-ny' mode='uml_switch'/>
 
  <net name='ca2-wa' mode='uml_switch'/>
 
  <net name='co-ne' mode='uml_switch'/>
 
  <net name='ga-tx' mode='uml_switch'/>
 
  <net name='il-pa' mode='uml_switch'/>
 
  <net name='ny-pa' mode='uml_switch'/>
 
  <net name='co-ut' mode='uml_switch'/>
 
  <net name='ga-pa' mode='uml_switch'/>
 
  <net name='mi-nj' mode='uml_switch'/>
 
  <vm name='WA'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.1</ipv4>
 
    </if>
 
    <if id='1' net='ca1-wa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.1</ipv4>
 
    </if>
 
    <if id='2' net='ca2-wa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.5</ipv4>
 
    </if>
 
    <if id='3' net='il-wa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.9</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='CA1'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.2</ipv4>
 
    </if>
 
    <if id='1' net='ca1-ca2'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.13</ipv4>
 
    </if>
 
    <if id='2' net='ca1-ut'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.17</ipv4>
 
    </if>
 
    <if id='3' net='ca1-wa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.2</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='CA2'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.3</ipv4>
 
    </if>
 
    <if id='1' net='ca1-ca2'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.14</ipv4>
 
    </if>
 
    <if id='2' net='ca2-wa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.6</ipv4>
 
    </if>
 
    <if id='3' net='ca2-tx'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.21</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='UT'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.4</ipv4>
 
    </if>
 
    <if id='1' net='ca1-ut'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.18</ipv4>
 
    </if>
 
    <if id='2' net='mi-ut'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.25</ipv4>
 
    </if>
 
    <if id='3' net='co-ut'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.29</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='CO'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.5</ipv4>
 
    </if>
 
    <if id='1' net='co-ut'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.30</ipv4>
 
    </if>
 
    <if id='2' net='co-ne'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.33</ipv4>
 
    </if>
 
    <if id='3' net='co-tx'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.37</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='NE'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.6</ipv4>
 
    </if>
 
    <if id='1' net='co-ne'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.34</ipv4>
 
    </if>
 
    <if id='2' net='il-ne'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.41</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='IL'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.7</ipv4>
 
    </if>
 
    <if id='1' net='il-ne'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.42</ipv4>
 
    </if>
 
    <if id='2' net='il-wa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.10</ipv4>
 
    </if>
 
    <if id='3' net='il-pa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.45</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='MI'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.8</ipv4>
 
    </if>
 
    <if id='1' net='mi-ut'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.26</ipv4>
 
    </if>
 
    <if id='2' net='mi-nj'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.49</ipv4>
 
    </if>
 
    <if id='3' net='mi-ny'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.53</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='PA'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.9</ipv4>
 
    </if>
 
    <if id='1' net='il-pa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.46</ipv4>
 
    </if>
 
    <if id='2' net='ga-pa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.57</ipv4>
 
    </if>
 
    <if id='3' net='ny-pa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.61</ipv4>
 
    </if>
 
    <if id='4' net='nj-pa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.65</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='NY'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.10</ipv4>
 
    </if>
 
    <if id='1' net='mi-ny'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.54</ipv4>
 
    </if>
 
    <if id='2' net='ny-pa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.62</ipv4>
 
    </if>
 
    <if id='3' net='dc-ny'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.69</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='NJ'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.11</ipv4>
 
    </if>
 
    <if id='1' net='mi-nj'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.50</ipv4>
 
    </if>
 
    <if id='2' net='nj-pa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.66</ipv4>
 
    </if>
 
    <if id='3' net='dc-nj'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.73</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='DC'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.12</ipv4>
 
    </if>
 
    <if id='1' net='dc-tx'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.77</ipv4>
 
    </if>
 
    <if id='2' net='dc-ny'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.70</ipv4>
 
    </if>
 
    <if id='3' net='dc-nj'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.74</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='GA'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.13</ipv4>
 
    </if>
 
    <if id='1' net='ga-pa'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.58</ipv4>
 
    </if>
 
    <if id='2' net='ga-tx'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.81</ipv4>
 
    </if>
 
  </vm>
 
  <vm name='TX'>
 
    <if id='1' net='lo'>
 
      <ipv4 mask='255.255.255.255'>10.0.50.14</ipv4>
 
    </if>
 
    <if id='1' net='ca2-tx'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.22</ipv4>
 
    </if>
 
    <if id='2' net='co-tx'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.38</ipv4>
 
    </if>
 
    <if id='3' net='dc-tx'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.78</ipv4>
 
    </if>
 
    <if id='4' net='ga-tx'>
 
      <ipv4 mask='255.255.255.252'>10.0.5.82</ipv4>
 
    </if>
 
  </vm>
 
</vnuml>
 
</pre>
 
  
 
== VNUML Description ==
 
== VNUML Description ==
Line 393: Line 223:
 
       <console id='0'>pts</console>
 
       <console id='0'>pts</console>
 
     </vm_defaults>
 
     </vm_defaults>
     <extension plugin="ospfd" conf="nsf-14_ospf_conf.xml" />
+
     <extension plugin="ospfd" conf="nsf-14_conf.xml" />
 
   </global>
 
   </global>
 
   <net name='il-ne' mode='uml_switch'/>
 
   <net name='il-ne' mode='uml_switch'/>
Line 429: Line 259:
 
       <ipv4 mask='255.255.255.252'>10.0.5.9</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.9</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='CA1'>
 
   <vm name='CA1'>
Line 443: Line 274:
 
       <ipv4 mask='255.255.255.252'>10.0.5.2</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.2</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='CA2'>
 
   <vm name='CA2'>
Line 457: Line 289:
 
       <ipv4 mask='255.255.255.252'>10.0.5.21</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.21</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='UT'>
 
   <vm name='UT'>
Line 471: Line 304:
 
       <ipv4 mask='255.255.255.252'>10.0.5.29</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.29</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='CO'>
 
   <vm name='CO'>
Line 485: Line 319:
 
       <ipv4 mask='255.255.255.252'>10.0.5.37</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.37</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='NE'>
 
   <vm name='NE'>
Line 496: Line 331:
 
       <ipv4 mask='255.255.255.252'>10.0.5.41</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.41</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='IL'>
 
   <vm name='IL'>
Line 510: Line 346:
 
       <ipv4 mask='255.255.255.252'>10.0.5.45</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.45</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='MI'>
 
   <vm name='MI'>
Line 524: Line 361:
 
       <ipv4 mask='255.255.255.252'>10.0.5.53</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.53</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='PA'>
 
   <vm name='PA'>
Line 541: Line 379:
 
       <ipv4 mask='255.255.255.252'>10.0.5.65</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.65</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='NY'>
 
   <vm name='NY'>
Line 555: Line 394:
 
       <ipv4 mask='255.255.255.252'>10.0.5.69</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.69</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='NJ'>
 
   <vm name='NJ'>
Line 569: Line 409:
 
       <ipv4 mask='255.255.255.252'>10.0.5.73</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.73</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='DC'>
 
   <vm name='DC'>
Line 583: Line 424:
 
       <ipv4 mask='255.255.255.252'>10.0.5.74</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.74</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='GA'>
 
   <vm name='GA'>
Line 594: Line 436:
 
       <ipv4 mask='255.255.255.252'>10.0.5.81</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.81</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
   <vm name='TX'>
 
   <vm name='TX'>
Line 611: Line 454:
 
       <ipv4 mask='255.255.255.252'>10.0.5.82</ipv4>
 
       <ipv4 mask='255.255.255.252'>10.0.5.82</ipv4>
 
     </if>
 
     </if>
 +
    <forwarding type="ip"/>
 
   </vm>
 
   </vm>
 
</vnuml>
 
</vnuml>
Line 618: Line 462:
  
 
<pre>
 
<pre>
 +
<?xml version='1.0' encoding='UTF-8'?>
 +
<!DOCTYPE ospf_conf SYSTEM '/usr/share/xml/vnuml/ospfd.dtd'>
 
<ospf_conf>
 
<ospf_conf>
 
   <vm name="WA" type="quagga" subtype="lib-install">
 
   <vm name="WA" type="quagga" subtype="lib-install">
       <zebra hostname="WA" password="xxxx"> </zebra>
+
       <zebra hostname="WA" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.1</ip>
 
         <ip mask="32">10.0.50.1</ip>
Line 639: Line 485:
 
   </vm>
 
   </vm>
 
   <vm name="CA1" type="quagga" subtype="lib-install">
 
   <vm name="CA1" type="quagga" subtype="lib-install">
       <zebra hostname="CA1" password="xxxx"> </zebra>
+
       <zebra hostname="CA1" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.2</ip>
 
         <ip mask="32">10.0.50.2</ip>
Line 658: Line 504:
 
   </vm>
 
   </vm>
 
   <vm name="CA2" type="quagga" subtype="lib-install">
 
   <vm name="CA2" type="quagga" subtype="lib-install">
       <zebra hostname="CA2" password="xxxx"> </zebra>
+
       <zebra hostname="CA2" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.3</ip>
 
         <ip mask="32">10.0.50.3</ip>
Line 677: Line 523:
 
   </vm>
 
   </vm>
 
   <vm name="UT" type="quagga" subtype="lib-install">
 
   <vm name="UT" type="quagga" subtype="lib-install">
       <zebra hostname="UT" password="xxxx"> </zebra>
+
       <zebra hostname="UT" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.4</ip>
 
         <ip mask="32">10.0.50.4</ip>
Line 696: Line 542:
 
   </vm>
 
   </vm>
 
   <vm name="CO" type="quagga" subtype="lib-install">
 
   <vm name="CO" type="quagga" subtype="lib-install">
       <zebra hostname="CO" password="xxxx"> </zebra>
+
       <zebra hostname="CO" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.5</ip>
 
         <ip mask="32">10.0.50.5</ip>
Line 715: Line 561:
 
   </vm>
 
   </vm>
 
   <vm name="NE" type="quagga" subtype="lib-install">
 
   <vm name="NE" type="quagga" subtype="lib-install">
       <zebra hostname="NE" password="xxxx"> </zebra>
+
       <zebra hostname="NE" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.6</ip>
 
         <ip mask="32">10.0.50.6</ip>
Line 730: Line 576:
 
   </vm>
 
   </vm>
 
   <vm name="IL" type="quagga" subtype="lib-install">
 
   <vm name="IL" type="quagga" subtype="lib-install">
       <zebra hostname="IL" password="xxxx"> </zebra>
+
       <zebra hostname="IL" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.7</ip>
 
         <ip mask="32">10.0.50.7</ip>
Line 749: Line 595:
 
   </vm>
 
   </vm>
 
   <vm name="MI" type="quagga" subtype="lib-install">
 
   <vm name="MI" type="quagga" subtype="lib-install">
       <zebra hostname="MI" password="xxxx"> </zebra>
+
       <zebra hostname="MI" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.8</ip>
 
         <ip mask="32">10.0.50.8</ip>
Line 768: Line 614:
 
   </vm>
 
   </vm>
 
   <vm name="PA" type="quagga" subtype="lib-install">
 
   <vm name="PA" type="quagga" subtype="lib-install">
       <zebra hostname="PA" password="xxxx"> </zebra>
+
       <zebra hostname="PA" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.9</ip>
 
         <ip mask="32">10.0.50.9</ip>
Line 791: Line 637:
 
   </vm>
 
   </vm>
 
   <vm name="NY" type="quagga" subtype="lib-install">
 
   <vm name="NY" type="quagga" subtype="lib-install">
       <zebra hostname="NY" password="xxxx"> </zebra>
+
       <zebra hostname="NY" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.10</ip>
 
         <ip mask="32">10.0.50.10</ip>
Line 810: Line 656:
 
   </vm>
 
   </vm>
 
   <vm name="NJ" type="quagga" subtype="lib-install">
 
   <vm name="NJ" type="quagga" subtype="lib-install">
       <zebra hostname="NJ" password="xxxx"> </zebra>
+
       <zebra hostname="NJ" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.11</ip>
 
         <ip mask="32">10.0.50.11</ip>
Line 829: Line 675:
 
   </vm>
 
   </vm>
 
   <vm name="DC" type="quagga" subtype="lib-install">
 
   <vm name="DC" type="quagga" subtype="lib-install">
       <zebra hostname="DC" password="xxxx"> </zebra>
+
       <zebra hostname="DC" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.12</ip>
 
         <ip mask="32">10.0.50.12</ip>
Line 848: Line 694:
 
   </vm>
 
   </vm>
 
   <vm name="GA" type="quagga" subtype="lib-install">
 
   <vm name="GA" type="quagga" subtype="lib-install">
       <zebra hostname="GA" password="xxxx"> </zebra>
+
       <zebra hostname="GA" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.13</ip>
 
         <ip mask="32">10.0.50.13</ip>
Line 863: Line 709:
 
   </vm>
 
   </vm>
 
   <vm name="TX" type="quagga" subtype="lib-install">
 
   <vm name="TX" type="quagga" subtype="lib-install">
       <zebra hostname="TX" password="xxxx"> </zebra>
+
       <zebra hostname="TX" password="xxxx"></zebra>
 
       <network>
 
       <network>
 
         <ip mask="32">10.0.50.14</ip>
 
         <ip mask="32">10.0.50.14</ip>
Line 890: Line 736:
 
== Download ==
 
== Download ==
  
* VNUML specification file: [http://jungla.dit.upm.es/~vnuml/doc/examples/nsf-14/nsf-14.xml Nsf-14.xml]
+
* VNUML specification file: [http://jungla.dit.upm.es/~vnuml/doc/examples/nsf-14/1.9/nsf-14.xml Nsf-14.xml]
* VNUML configuration file: [http://jungla.dit.upm.es/~vnuml/doc/examples/nsf-14/nsf-14.xml Nsf-14_ospf_conf.xml]
+
* VNUML configuration file: [http://jungla.dit.upm.es/~vnuml/doc/examples/nsf-14/1.9/nsf-14_conf.xml Nsf-14_conf.xml]
  
 
== Old Releases ==
 
== Old Releases ==
 
* [[Example-NSF-14_1.8|1.8]]
 
* [[Example-NSF-14_1.8|1.8]]

Latest revision as of 11:59, 10 February 2009

Authors:
Fermín Galán (galan at dit.upm.es)
Francisco José Martín Moreno (fjmartin at dit.upm.es)
Miguel Ferrer Cámara (mferrer at dit.upm.es)
version 1.9, January 29st, 2009


Scenario

NFS (National Science Foundation) is the US Research and Education Network (NREN). Although there are several incarnations of the NFS net, here we consider the one described in the following document (also shown in the figure below) is composed of 14 network nodes connected through 21 point-to-point links (each one a /30 network).

NSFNet topology (with 14 nodes)
Figure 1: NSFNet topology (with 14 nodes)

A VNUML scenario implementing the NSF topology is shown in this example. All the routers in the simulation run ospfd, a daemon process from the Zebra Suite that implements 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. Since version 1.9 of VNUML, OSPF-based routing have been implemented using OSPFD plugin with this configuration file.

Once the scenario is up, start the routing daemons (which configuration files are automatically generated by the OSPF plugin) using the following command:

vnumlparser.pl -x start@nsf-14.xml -v

Some examples of test performed with this virtual scenario:

  • Connectivity from WA to GA:
root@WA:~# traceroute 10.0.50.13
traceroute to 10.0.50.13 (10.0.50.13), 30 hops max, 38 byte packets
 1  10.0.5.6 (10.0.5.6)  0.371 ms  0.579 ms  0.262 ms
 2  10.0.5.22 (10.0.5.22)  0.472 ms  0.420 ms  0.426 ms
 3  10.0.50.13 (10.0.50.13)  0.594 ms  0.586 ms  0.507 ms
  • Connectivity from WA to NJ:
traceroute to 10.0.50.11 (10.0.50.11), 30 hops max, 38 byte packets
 1  10.0.5.10 (10.0.5.10)  2.862 ms  0.279 ms  0.226 ms
 2  10.0.5.46 (10.0.5.46)  0.421 ms  2.355 ms  0.414 ms
 3  10.0.50.11 (10.0.50.11)  0.561 ms  0.476 ms  1.424 ms
  • OSPF information from ospfd at WA:
WA# sh ip ospf route
============ OSPF network routing table ============
N    10.0.5.0/30           [10] area: 0.0.0.0
                           directly attached to eth1
N    10.0.5.4/30           [10] area: 0.0.0.0
                           directly attached to eth2
N    10.0.5.8/30           [10] area: 0.0.0.0
                           directly attached to eth3
N    10.0.5.12/30          [20] area: 0.0.0.0
                           via 10.0.5.2, eth1
                           via 10.0.5.6, eth2
N    10.0.5.16/30          [20] area: 0.0.0.0
                           via 10.0.5.2, eth1
N    10.0.5.20/30          [20] area: 0.0.0.0
                           via 10.0.5.6, eth2
N    10.0.5.24/30          [30] area: 0.0.0.0
                           via 10.0.5.2, eth1
N    10.0.5.28/30          [30] area: 0.0.0.0
                           via 10.0.5.2, eth1
N    10.0.5.32/30          [30] area: 0.0.0.0
                           via 10.0.5.10, eth3
N    10.0.5.36/30          [30] area: 0.0.0.0
                           via 10.0.5.6, eth2
N    10.0.5.40/30          [20] area: 0.0.0.0
                           via 10.0.5.10, eth3
N    10.0.5.44/30          [20] area: 0.0.0.0
                           via 10.0.5.10, eth3
N    10.0.5.48/30          [40] area: 0.0.0.0
                           via 10.0.5.2, eth1
                           via 10.0.5.10, eth3
N    10.0.5.52/30          [40] area: 0.0.0.0
                           via 10.0.5.2, eth1
                           via 10.0.5.10, eth3
N    10.0.5.56/30          [30] area: 0.0.0.0
                           via 10.0.5.10, eth3
N    10.0.5.60/30          [30] area: 0.0.0.0
                           via 10.0.5.10, eth3
N    10.0.5.64/30          [30] area: 0.0.0.0
                           via 10.0.5.10, eth3
N    10.0.5.68/30          [40] area: 0.0.0.0
                           via 10.0.5.6, eth2
                           via 10.0.5.10, eth3
N    10.0.5.72/30          [40] area: 0.0.0.0
                           via 10.0.5.6, eth2
                           via 10.0.5.10, eth3
N    10.0.5.76/30          [30] area: 0.0.0.0
                           via 10.0.5.6, eth2
N    10.0.5.80/30          [30] area: 0.0.0.0
                           via 10.0.5.6, eth2
N    10.0.50.1/32          [10] area: 0.0.0.0
                           directly attached to lo
N    10.0.50.2/32          [20] area: 0.0.0.0
                           via 10.0.5.2, eth1
N    10.0.50.3/32          [20] area: 0.0.0.0
                           via 10.0.5.6, eth2
N    10.0.50.4/32          [30] area: 0.0.0.0
                           via 10.0.5.2, eth1
N    10.0.50.5/32          [40] area: 0.0.0.0
                           via 10.0.5.2, eth1
                           via 10.0.5.10, eth3
                           via 10.0.5.6, eth2
N    10.0.50.6/32          [30] area: 0.0.0.0
                           via 10.0.5.10, eth3
N    10.0.50.7/32          [20] area: 0.0.0.0
                           via 10.0.5.10, eth3
N    10.0.50.8/32          [40] area: 0.0.0.0
                           via 10.0.5.2, eth1
N    10.0.50.9/32          [30] area: 0.0.0.0
                           via 10.0.5.10, eth3
N    10.0.50.10/32         [40] area: 0.0.0.0
                           via 10.0.5.10, eth3
N    10.0.50.11/32         [40] area: 0.0.0.0
                           via 10.0.5.10, eth3
N    10.0.50.12/32         [40] area: 0.0.0.0
                           via 10.0.5.6, eth2
N    10.0.50.13/32         [40] area: 0.0.0.0
                           via 10.0.5.6, eth2
                           via 10.0.5.10, eth3
N    10.0.50.14/32         [30] area: 0.0.0.0
                           via 10.0.5.6, eth2

============ OSPF router routing table =============

============ OSPF external routing table ===========

WA# sh ip ospf neighbor 

    Neighbor ID Pri State           Dead Time Address         Interface            RXmtL RqstL DBsmL
10.0.50.2         1 Full/DR           32.439s 10.0.5.2        eth1:10.0.5.1            0     0     0
10.0.50.3         1 Full/DR           32.542s 10.0.5.6        eth2:10.0.5.5            0     0     0
10.0.50.7         1 Full/DR           33.041s 10.0.5.10       eth3:10.0.5.9            0     0     0
WA# sh ip ospf interface 
dummy0 is down
  ifindex 7, MTU 1500 bytes, BW 0 Kbit   <BROADCAST,NOARP>
  OSPF not enabled on this interface
eth0 is up
  ifindex 5, MTU 1500 bytes, BW 0 Kbit   <UP,BROADCAST,RUNNING,MULTICAST>
  OSPF not enabled on this interface
eth1 is up
  ifindex 1, MTU 1500 bytes, BW 0 Kbit   <UP,BROADCAST,RUNNING,PROMISC,MULTICAST>
  Internet Address 10.0.5.1/30, Broadcast 10.0.5.3, Area 0.0.0.0
  MTU mismatch detection:enabled
  Router ID 10.0.50.1, Network Type BROADCAST, Cost: 10
  Transmit Delay is 1 sec, State Backup, Priority 1
  Designated Router (ID) 10.0.50.2, Interface Address 10.0.5.2
  Backup Designated Router (ID) 10.0.50.1, Interface Address 10.0.5.1
  Multicast group memberships: OSPFAllRouters OSPFDesignatedRouters
  Timer intervals configured, Hello 10s, Dead 40s, Wait 40s, Retransmit 5
    Hello due in 5.703s
  Neighbor Count is 1, Adjacent neighbor count is 1
eth2 is up
  ifindex 2, MTU 1500 bytes, BW 0 Kbit   <UP,BROADCAST,RUNNING,PROMISC,MULTICAST>
  Internet Address 10.0.5.5/30, Broadcast 10.0.5.7, Area 0.0.0.0
  MTU mismatch detection:enabled
  Router ID 10.0.50.1, Network Type BROADCAST, Cost: 10
  Transmit Delay is 1 sec, State Backup, Priority 1
  Designated Router (ID) 10.0.50.3, Interface Address 10.0.5.6
  Backup Designated Router (ID) 10.0.50.1, Interface Address 10.0.5.5
  Multicast group memberships: OSPFAllRouters OSPFDesignatedRouters
  Timer intervals configured, Hello 10s, Dead 40s, Wait 40s, Retransmit 5
    Hello due in 5.807s
  Neighbor Count is 1, Adjacent neighbor count is 1
eth3 is up
  ifindex 3, MTU 1500 bytes, BW 0 Kbit   <UP,BROADCAST,RUNNING,PROMISC,MULTICAST>
  Internet Address 10.0.5.9/30, Broadcast 10.0.5.11, Area 0.0.0.0
  MTU mismatch detection:enabled
  Router ID 10.0.50.1, Network Type BROADCAST, Cost: 10
  Transmit Delay is 1 sec, State Backup, Priority 1
  Designated Router (ID) 10.0.50.7, Interface Address 10.0.5.10
  Backup Designated Router (ID) 10.0.50.1, Interface Address 10.0.5.9
  Multicast group memberships: OSPFAllRouters OSPFDesignatedRouters
  Timer intervals configured, Hello 10s, Dead 40s, Wait 40s, Retransmit 5
    Hello due in 6.311s
  Neighbor Count is 1, Adjacent neighbor count is 1
ip6tnl0 is down
  ifindex 9, MTU 1460 bytes, BW 0 Kbit   <NOARP>
  OSPF not enabled on this interface
lo is up
  ifindex 6, MTU 16436 bytes, BW 0 Kbit   <UP,LOOPBACK,RUNNING>
  Internet Address 10.0.50.1/32, Area 0.0.0.0
  MTU mismatch detection:enabled
  Router ID 10.0.50.1, Network Type LOOPBACK, Cost: 10
  Transmit Delay is 1 sec, State Loopback, Priority 1
  No designated router on this network
  No backup designated router on this network
  Multicast group memberships: <None>
  Timer intervals configured, Hello 10s, Dead 40s, Wait 40s, Retransmit 5
    Hello due in inactive
  Neighbor Count is 0, Adjacent neighbor count is 0
sit0 is down
  ifindex 8, MTU 1480 bytes, BW 0 Kbit   <NOARP>
  OSPF not enabled on this interface

Thing to do. If you want to help us to improve this example (please, tell us about :), the following enhancements could be done:

  • A IPv6 version of the scenario (using the <ipv6> tags)

VNUML Description


<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE vnuml SYSTEM '/usr/share/xml/vnuml/vnuml.dtd'>
<vnuml>
<global>
    <version>1.9</version>
    <simulation_name>nsfnet</simulation_name>
    <automac/>
    <vm_mgmt type="private" network="10.250.0.0" mask="16" offset="0">
       <host_mapping/>
    </vm_mgmt>
    <vm_defaults exec_mode='mconsole'>
       <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>
    <extension plugin="ospfd" conf="nsf-14_conf.xml" />
  </global>
  <net name='il-ne' mode='uml_switch'/>
  <net name='mi-ut' mode='uml_switch'/>
  <net name='dc-ny' mode='uml_switch'/>
  <net name='il-wa' mode='uml_switch'/>
  <net name='ca2-tx' mode='uml_switch'/>
  <net name='dc-tx' mode='uml_switch'/>
  <net name='co-tx' mode='uml_switch'/>
  <net name='ca1-ut' mode='uml_switch'/>
  <net name='dc-nj' mode='uml_switch'/>
  <net name='ca1-wa' mode='uml_switch'/>
  <net name='ca1-ca2' mode='uml_switch'/>
  <net name='nj-pa' mode='uml_switch'/>
  <net name='mi-ny' mode='uml_switch'/>
  <net name='ca2-wa' mode='uml_switch'/>
  <net name='co-ne' mode='uml_switch'/>
  <net name='ga-tx' mode='uml_switch'/>
  <net name='il-pa' mode='uml_switch'/>
  <net name='ny-pa' mode='uml_switch'/>
  <net name='co-ut' mode='uml_switch'/>
  <net name='ga-pa' mode='uml_switch'/>
  <net name='mi-nj' mode='uml_switch'/>
  <vm name='WA'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.1</ipv4>
    </if>
    <if id='1' net='ca1-wa'>
      <ipv4 mask='255.255.255.252'>10.0.5.1</ipv4>
    </if>
    <if id='2' net='ca2-wa'>
      <ipv4 mask='255.255.255.252'>10.0.5.5</ipv4>
    </if>
    <if id='3' net='il-wa'>
      <ipv4 mask='255.255.255.252'>10.0.5.9</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='CA1'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.2</ipv4>
    </if>
    <if id='1' net='ca1-ca2'>
      <ipv4 mask='255.255.255.252'>10.0.5.13</ipv4>
    </if>
    <if id='2' net='ca1-ut'>
      <ipv4 mask='255.255.255.252'>10.0.5.17</ipv4>
    </if>
    <if id='3' net='ca1-wa'>
      <ipv4 mask='255.255.255.252'>10.0.5.2</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='CA2'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.3</ipv4>
    </if>
    <if id='1' net='ca1-ca2'>
      <ipv4 mask='255.255.255.252'>10.0.5.14</ipv4>
    </if>
    <if id='2' net='ca2-wa'>
      <ipv4 mask='255.255.255.252'>10.0.5.6</ipv4>
    </if>
    <if id='3' net='ca2-tx'>
      <ipv4 mask='255.255.255.252'>10.0.5.21</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='UT'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.4</ipv4>
    </if>
    <if id='1' net='ca1-ut'>
      <ipv4 mask='255.255.255.252'>10.0.5.18</ipv4>
    </if>
    <if id='2' net='mi-ut'>
      <ipv4 mask='255.255.255.252'>10.0.5.25</ipv4>
    </if>
    <if id='3' net='co-ut'>
      <ipv4 mask='255.255.255.252'>10.0.5.29</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='CO'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.5</ipv4>
    </if>
    <if id='1' net='co-ut'>
      <ipv4 mask='255.255.255.252'>10.0.5.30</ipv4>
    </if>
    <if id='2' net='co-ne'>
      <ipv4 mask='255.255.255.252'>10.0.5.33</ipv4>
    </if>
    <if id='3' net='co-tx'>
      <ipv4 mask='255.255.255.252'>10.0.5.37</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='NE'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.6</ipv4>
    </if>
    <if id='1' net='co-ne'>
      <ipv4 mask='255.255.255.252'>10.0.5.34</ipv4>
    </if>
    <if id='2' net='il-ne'>
      <ipv4 mask='255.255.255.252'>10.0.5.41</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='IL'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.7</ipv4>
    </if>
    <if id='1' net='il-ne'>
      <ipv4 mask='255.255.255.252'>10.0.5.42</ipv4>
    </if>
    <if id='2' net='il-wa'>
      <ipv4 mask='255.255.255.252'>10.0.5.10</ipv4>
    </if>
    <if id='3' net='il-pa'>
      <ipv4 mask='255.255.255.252'>10.0.5.45</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='MI'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.8</ipv4>
    </if>
    <if id='1' net='mi-ut'>
      <ipv4 mask='255.255.255.252'>10.0.5.26</ipv4>
    </if>
    <if id='2' net='mi-nj'>
      <ipv4 mask='255.255.255.252'>10.0.5.49</ipv4>
    </if>
    <if id='3' net='mi-ny'>
      <ipv4 mask='255.255.255.252'>10.0.5.53</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='PA'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.9</ipv4>
    </if>
    <if id='1' net='il-pa'>
      <ipv4 mask='255.255.255.252'>10.0.5.46</ipv4>
    </if>
    <if id='2' net='ga-pa'>
      <ipv4 mask='255.255.255.252'>10.0.5.57</ipv4>
    </if>
    <if id='3' net='ny-pa'>
      <ipv4 mask='255.255.255.252'>10.0.5.61</ipv4>
    </if>
    <if id='4' net='nj-pa'>
      <ipv4 mask='255.255.255.252'>10.0.5.65</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='NY'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.10</ipv4>
    </if>
    <if id='1' net='mi-ny'>
      <ipv4 mask='255.255.255.252'>10.0.5.54</ipv4>
    </if>
    <if id='2' net='ny-pa'>
      <ipv4 mask='255.255.255.252'>10.0.5.62</ipv4>
    </if>
    <if id='3' net='dc-ny'>
      <ipv4 mask='255.255.255.252'>10.0.5.69</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='NJ'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.11</ipv4>
    </if>
    <if id='1' net='mi-nj'>
      <ipv4 mask='255.255.255.252'>10.0.5.50</ipv4>
    </if>
    <if id='2' net='nj-pa'>
      <ipv4 mask='255.255.255.252'>10.0.5.66</ipv4>
    </if>
    <if id='3' net='dc-nj'>
      <ipv4 mask='255.255.255.252'>10.0.5.73</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='DC'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.12</ipv4>
    </if>
    <if id='1' net='dc-tx'>
      <ipv4 mask='255.255.255.252'>10.0.5.77</ipv4>
    </if>
    <if id='2' net='dc-ny'>
      <ipv4 mask='255.255.255.252'>10.0.5.70</ipv4>
    </if>
    <if id='3' net='dc-nj'>
      <ipv4 mask='255.255.255.252'>10.0.5.74</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='GA'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.13</ipv4>
    </if>
    <if id='1' net='ga-pa'>
      <ipv4 mask='255.255.255.252'>10.0.5.58</ipv4>
    </if>
    <if id='2' net='ga-tx'>
      <ipv4 mask='255.255.255.252'>10.0.5.81</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
  <vm name='TX'>
    <if id='1' net='lo'>
      <ipv4 mask='255.255.255.255'>10.0.50.14</ipv4>
    </if>
    <if id='1' net='ca2-tx'>
      <ipv4 mask='255.255.255.252'>10.0.5.22</ipv4>
    </if>
    <if id='2' net='co-tx'>
      <ipv4 mask='255.255.255.252'>10.0.5.38</ipv4>
    </if>
    <if id='3' net='dc-tx'>
      <ipv4 mask='255.255.255.252'>10.0.5.78</ipv4>
    </if>
    <if id='4' net='ga-tx'>
      <ipv4 mask='255.255.255.252'>10.0.5.82</ipv4>
    </if>
    <forwarding type="ip"/>
  </vm>
</vnuml>

OSPF plugin configuration file

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE ospf_conf SYSTEM '/usr/share/xml/vnuml/ospfd.dtd'>
<ospf_conf>
   <vm name="WA" type="quagga" subtype="lib-install">
      <zebra hostname="WA" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.1</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.0</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.4</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.8</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
   <vm name="CA1" type="quagga" subtype="lib-install">
      <zebra hostname="CA1" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.2</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.12</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.16</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.0</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
   <vm name="CA2" type="quagga" subtype="lib-install">
      <zebra hostname="CA2" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.3</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.12</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.4</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.20</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
   <vm name="UT" type="quagga" subtype="lib-install">
      <zebra hostname="UT" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.4</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.16</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.24</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.28</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
   <vm name="CO" type="quagga" subtype="lib-install">
      <zebra hostname="CO" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.5</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.28</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.32</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.36</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
   <vm name="NE" type="quagga" subtype="lib-install">
      <zebra hostname="NE" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.6</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.32</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.40</ip>
         <area>0.0.0.0</area>
      </network>		
   </vm>
   <vm name="IL" type="quagga" subtype="lib-install">
      <zebra hostname="IL" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.7</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.40</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.8</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.44</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
   <vm name="MI" type="quagga" subtype="lib-install">
      <zebra hostname="MI" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.8</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.24</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.48</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.52</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
   <vm name="PA" type="quagga" subtype="lib-install">
      <zebra hostname="PA" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.9</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.44</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.56</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.60</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.64</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
   <vm name="NY" type="quagga" subtype="lib-install">
      <zebra hostname="NY" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.10</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.52</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.60</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.68</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>		
   <vm name="NJ" type="quagga" subtype="lib-install">
      <zebra hostname="NJ" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.11</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.48</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.64</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.72</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
   <vm name="DC" type="quagga" subtype="lib-install">
      <zebra hostname="DC" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.12</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.76</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.68</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.72</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
   <vm name="GA" type="quagga" subtype="lib-install">
      <zebra hostname="GA" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.13</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.56</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.80</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
   <vm name="TX" type="quagga" subtype="lib-install">
      <zebra hostname="TX" password="xxxx"></zebra>
      <network>
         <ip mask="32">10.0.50.14</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.20</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.36</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.76</ip>
         <area>0.0.0.0</area>
      </network>
      <network>
         <ip mask="30">10.0.5.80</ip>
         <area>0.0.0.0</area>
      </network>
   </vm>
</ospf_conf>

Download

Old Releases