Table Of Contents
Table Of Contents

Step 18. AS-External LSAs of ‘type 1 metric’ with different advertised destination

Goals

[explanation]

Configuration

This step uses the following network:

../../../_images/step18.png
network OSPF_Area_External extends OSPF_AreaTest
{
    @display("bgb=1151.665,517.31");
    submodules:
        N1: OspfLan {
            parameters:
                h = 1;
                @display("p=539.45123,389.04126");
        }
        N2: OspfLan {
            parameters:
                h = 1;
                @display("p=820.02374,389.04126");
        }

    connections:
        R3.ethg++ <--> Eth100M <--> N1.ethg++;
        R5.ethg++ <--> Eth100M <--> N2.ethg++;
}

The configuration in omnetpp.ini is the following:

[Config Step18]
description = "AS-External LSAs of 'type 1 metric' with different advertised destination"
network = OSPF_Area_External

# ToDo: R5 has a cost of 13 to the external network

*.configurator.config = xml("<config> \
                                <interface hosts='R3' towards='R4' address='192.168.0.x' netmask='255.255.255.x' /> \
                                <interface hosts='R4' towards='R3' address='192.168.0.x' netmask='255.255.255.x' /> \
                                \
                                <interface hosts='R3' towards='N1.*' address='192.168.9.x' netmask='255.255.255.x' /> \
                                <interface hosts='R5' towards='N2.*' address='192.168.10.x' netmask='255.255.255.x' /> \
                                \
                                <interface among='host1 host2 R1 R2 R3' address='192.168.11.x' netmask='255.255.255.x' /> \
                                <interface among='R3 R4 R5 host3' address='192.168.22.x' netmask='255.255.255.x' /> \
                                \
                                <route hosts='host*' destination='*' netmask='0.0.0.0' interface='eth0' /> \
                             </config>")

*.R*.ospf.ospfConfig = xmldoc("ASConfig_Area_ExternalRoute_Type1.xml")

The OSPF configuration:

<?xml version="1.0"?>
<OSPFASConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="OSPF.xsd">

  <!-- Areas -->
  <Area id="0.0.0.0">
    <AddressRange address="R3>R4" mask="R3>R4" />
    <AddressRange address="R4>R3" mask="R4>R3" />
  </Area>

  <Area id="0.0.0.1">
    <AddressRange address="R1>switch1" mask="R1>switch1" />
    <AddressRange address="R1>R2" mask="R1>R2" />
    <AddressRange address="R1>R3" mask="R1>R3" />        
    
    <AddressRange address="R2>switch2" mask="R2>switch2" />
    <AddressRange address="R2>R1" mask="R2>R1" />
    <AddressRange address="R2>R3" mask="R2>R3" />        

    <AddressRange address="R3>R1" mask="R3>R1" />
    <AddressRange address="R3>R2" mask="R3>R2" />
  </Area>

  <Area id="0.0.0.2">
    <AddressRange address="R4>R5" mask="R4>R5" />
    
    <AddressRange address="R5>R4" mask="R5>R4" />
    <AddressRange address="R5>switch3" mask="R5>switch3" />
  </Area>

  <!-- Routers -->
  <Router name="R1" RFC1583Compatible="true">
    <BroadcastInterface ifName="eth0" areaID="0.0.0.1" interfaceMode="Passive" />
    <PointToPointInterface ifName="ppp0" areaID="0.0.0.1" />
    <PointToPointInterface ifName="ppp1" areaID="0.0.0.1" />
  </Router>

  <Router name="R2" RFC1583Compatible="true">
    <BroadcastInterface ifName="eth0" areaID="0.0.0.1" interfaceMode="Passive" />
    <PointToPointInterface ifName="ppp0" areaID="0.0.0.1" />
    <PointToPointInterface ifName="ppp1" areaID="0.0.0.1" />
  </Router>

  <Router name="R3" RFC1583Compatible="true">
    <PointToPointInterface ifName="ppp0" areaID="0.0.0.1" />
    <PointToPointInterface ifName="ppp1" areaID="0.0.0.1" />
    <PointToPointInterface ifName="ppp2" areaID="0.0.0.0" />
    <ExternalInterface toward="N1" advertisedExternalNetworkAddress="R3>N1" advertisedExternalNetworkMask="R3>N1" externalInterfaceOutputCost="10" externalInterfaceOutputType="Type1" />
  </Router>

  <Router name="R4" RFC1583Compatible="true">
    <PointToPointInterface ifName="ppp0" areaID="0.0.0.2" />
    <PointToPointInterface ifName="ppp1" areaID="0.0.0.0" />
  </Router>

  <Router name="R5" RFC1583Compatible="true">
    <BroadcastInterface ifName="eth0" areaID="0.0.0.2" interfaceMode="Passive" />
    <PointToPointInterface ifName="ppp0" areaID="0.0.0.2" />
    <ExternalInterface toward="N2" advertisedExternalNetworkAddress="R5>N2" advertisedExternalNetworkMask="R5>N2" externalInterfaceOutputCost="5" externalInterfaceOutputType="Type1" />
  </Router>

</OSPFASConfig>

Discussion

Use this page in the GitHub issue tracker for commenting on this tutorial.