[General] sim-time-limit = 1000s *.pcapRecorder.moduleNamePatterns = ".^" **.checksumMode = "computed" **.fcsMode = "computed" # ip settings **.ip.procDelay = 10us # NIC configuration **.eth[*].queue.typename = "EthernetQosQueue" **.eth[*].queue.dataQueue.typename = "DropTailQueue" # tcp settings **.tcp.mss = 1024 **.tcp.advertisedWindow = 14336 #**.tcp.sendQueueClass = "TCPMsgBasedSendQueue" #**.tcp.receiveQueueClass = "TCPMsgBasedRcvQueue" **.tcp.tcpAlgorithmClass = "TcpReno" *.R*.ipv4.routingTable.useAdminDist = true *.configurator.config = xml(" \ \ \ ") *.configurator.addStaticRoutes = false # Application parameters *.host0.numApps = 1 *.host0.app[0].typename = "PingApp" *.host0.app[0].destAddr = "host1" *.host0.app[0].startTime = 100s # Visualizer settings *.visualizer.numRoutingTableVisualizers = 2 *.visualizer.interfaceTableVisualizer[0].displayInterfaceTables = true #*.visualizer.interfaceTableVisualizer[0].displayWiredInterfacesAtConnections = false *.visualizer.routingTableVisualizer[*].displayRoutingTables = true #*.visualizer.routingTableVisualizer[*].displayRoutesIndividually = false *.visualizer.routingTableVisualizer[0].destinationFilter = "host1" *.visualizer.routingTableVisualizer[1].destinationFilter = "host0" *.visualizer.routingTableVisualizer[0].lineColor = "blue" *.visualizer.routingTableVisualizer[1].lineColor = "red" *.visualizer.routingTableVisualizer[*].labelFormat = "%d/%m (%e) -> %g (%n)" # display metric *.visualizer.routingTableVisualizer[*].lineStyle = "dashed" # --------------------------------------------------------------- [Config Step1] description = "BGP Basic Topology" network = BGP_Basic_Topology *.routingTableRecorder.logfile = "step1.rt" *.pcapRecorder.pcapFile = "step1.pcap" # BGP configuration *.R*.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig_Basic.xml") *.visualizer.routingTableVisualizer[1].displayRoutingTables = false *.visualizer.routingTableVisualizer[*].lineShift = 80 *.visualizer.routingTableVisualizer[*].destinationFilter = "*" *.visualizer.routingTableVisualizer[*].lineColor = "black" # --------------------------------------------------------------- [Config Step2] description = "BGP Scenario with E-BGP session only" network = BGP_Topology_1 *.routingTableRecorder.logfile = "step2.rt" *.pcapRecorder.pcapFile = "step2.pcap" *.configurator.config = xml(" \ \ \ \ \ \ \ \ \ \ \ \ \ ") # OSPF configuration *.R*.hasOspf = true *.R*.ospf.ospfConfig = xmldoc("OSPFConfig_EBGP.xml") *.RA4.ipv4.routingTable.routerId = "10.0.0.5" *.RB1.ipv4.routingTable.routerId = "20.0.0.18" # BGP configuration *.RA4.hasBgp = true *.RB1.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig_EBGP.xml") # enable OSPF redistribution *.RA4.bgp.redistributeOspf = "O IA" *.RB1.bgp.redistributeOspf = "O IA" # --------------------------------------------------------------- [Config Step3] description = "BGP Path Attributes" network = BGP_Topology_1a *.routingTableRecorder.logfile = "step3.rt" *.pcapRecorder.pcapFile = "step3.pcap" *.configurator.config = xml(" \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ") # OSPF configuration *.R*.hasOspf = true *.R*.ospf.ospfConfig = xmldoc("OSPFConfig_FullAS.xml") *.RA4.ipv4.routingTable.routerId = "10.0.0.5" *.RB1.ipv4.routingTable.routerId = "20.0.0.18" *.RC2.ipv4.routingTable.routerId = "30.0.0.22" *.RD3.ipv4.routingTable.routerId = "40.0.0.17" # BGP configuration *.RA4.hasBgp = true *.RB1.hasBgp = true *.RC2.hasBgp = true *.RD3.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig_FullAS.xml") # enable OSPF redistribution *.RA4.bgp.redistributeOspf = "O IA" *.RB1.bgp.redistributeOspf = "O IA" *.RC2.bgp.redistributeOspf = "O IA" *.RD3.bgp.redistributeOspf = "O IA" # --------------------------------------------------------------- [Config Step4] description = "BGP Scenario with I-BGP over directly-connected BGP speakers" network = BGP_Topology_2 *.routingTableRecorder.logfile = "step4.rt" *.pcapRecorder.pcapFile = "step4.pcap" # adding default routes in RA4 and RC1 and ask OSPF to distribute it within the AS *.configurator.config = xml(" \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ") # OSPF configuration *.RB{1,2}.hasOspf = false *.R*.hasOspf = true *.R*.ospf.ospfConfig = xmldoc("OSPFConfig_IBGP.xml") *.RA4.ipv4.routingTable.routerId = "10.0.0.5" *.RC1.ipv4.routingTable.routerId = "30.0.0.5" # BGP configuration *.RA4.hasBgp = true *.RB1.hasBgp = true *.RB2.hasBgp = true *.RC1.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig_IBGP.xml") # enable OSPF redistribution *.RA4.bgp.redistributeOspf = "O IA" *.RC1.bgp.redistributeOspf = "O IA" # --------------------------------------------------------------- [Config Step4a] description = "Enable nextHopSelf on RB1 and RB2" extends = Step4 *.routingTableRecorder.logfile = "step4a.rt" *.pcapRecorder.pcapFile = "step4a.pcap" # set nextHopSelf in both RB1 and RB2. They change next hop to # themselfe before forwarding Update message to the other peer *.R*.bgp.bgpConfig = xmldoc("BGPConfig_IBGP_NextHopSelf.xml") # --------------------------------------------------------------- [Config Step5] description = "BGP Scenario with I-BGP over not directly-connected BGP speakers" network = BGP_Topology_3 *.routingTableRecorder.logfile = "step5.rt" *.pcapRecorder.pcapFile = "step5.pcap" # adding default routes in RA4 and RC1 and ask OSPF to distribute it within the AS *.configurator.config = xml(" \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ") # OSPF configuration *.R*.hasOspf = true *.R*.ospf.ospfConfig = xmldoc("OSPFConfig_Multi.xml") *.RA4.ipv4.routingTable.routerId = "10.0.0.5" *.RC1.ipv4.routingTable.routerId = "30.0.0.5" *.RB1.ipv4.routingTable.routerId = "20.0.0.5" *.RB2.ipv4.routingTable.routerId = "20.0.0.1" # BGP configuration *.RA4.hasBgp = true *.RB1.hasBgp = true *.RB2.hasBgp = true *.RC1.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig_Multi.xml") # enable OSPF redistribution *.RA4.bgp.redistributeOspf = "O IA" *.RC1.bgp.redistributeOspf = "O IA" *.RB1.bgp.redistributeOspf = "O IA" *.RB2.bgp.redistributeOspf = "O IA" # --------------------------------------------------------------- [Config Step5a] description = "BGP internal distribution" extends = Step5 *.routingTableRecorder.logfile = "step5a.rt" *.pcapRecorder.pcapFile = "step5a.pcap" # BGP routes are distributed internally within the AS *.RB{1,2}.bgp.redistributeInternal = true # --------------------------------------------------------------- [Config Step5b] description = "Enabling BGP on RB3" extends = Step5 *.routingTableRecorder.logfile = "step5b.rt" *.pcapRecorder.pcapFile = "step5b.pcap" # enable BGP on RB3 *.RB3.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig_Multi_RB3.xml") # --------------------------------------------------------------- [Config Step6] description = "BGP Scenario and using loopbacks" network = BGP_Topology_4 *.routingTableRecorder.logfile = "step6.rt" *.pcapRecorder.pcapFile = "step6.pcap" # adding default routes in RA4 and RC1 and ask OSPF to distribute it within the AS *.configurator.config = xml(" \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ") # OSPF configuration *.R*.hasOspf = true *.R*.ospf.ospfConfig = xmldoc("OSPFConfig.xml") *.RA4.ipv4.routingTable.routerId = "10.0.0.5" *.RC1.ipv4.routingTable.routerId = "30.0.0.5" *.RB1.ipv4.routingTable.routerId = "20.0.0.18" *.RB4.ipv4.routingTable.routerId = "20.0.0.14" # BGP configuration *.RA4.hasBgp = true *.RB1.hasBgp = true *.RB4.hasBgp = true *.RC1.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig_Redist.xml") *.R*.bgp.redistributeOspf = "O IA" # BGP routes are distributed internally within the AS #*.RB1.bgp.redistributeInternal = true #*.RB4.bgp.redistributeInternal = true # enable BGP on RB2 and RB3 *.RB2.hasBgp = true *.RB3.hasBgp = true # --------------------------------------------------------------- [Config Step7] description = "BGP with RIP redistribution" network = BGP_Topology_4 *.routingTableRecorder.logfile = "step7.rt" *.pcapRecorder.pcapFile = "step7.pcap" *.configurator.config = xml(" \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ") # RIP configuration *.R*.hasRip = true *.R*.rip.ripConfig = xmldoc("RIPConfig.xml") # BGP configuration *.RA4.hasBgp = true *.RB1.hasBgp = true *.RB4.hasBgp = true *.RC1.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig_Redist.xml") *.R*.bgp.redistributeRip = true # enable BGP on RB2 and RB3 *.RB2.hasBgp = true *.RB3.hasBgp = true # --------------------------------------------------------------- [Config Step8] description = "BGP with OSPF and RIP redistribution" network = BGP_Topology_4 *.routingTableRecorder.logfile = "step8.rt" *.pcapRecorder.pcapFile = "step8.pcap" # adding default routes in RA4 and RC1. RIP and OSPF will distribute it within the AS *.configurator.config = xml(" \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ") # RIP configuration *.RA*.hasRip = true *.RC*.hasRip = true *.R*.rip.ripConfig = xmldoc("RIPConfig.xml") # OSPF configuration *.RB*.hasOspf = true *.RB*.ospf.ospfConfig = xmldoc("OSPFConfig.xml") # BGP configuration *.RA4.hasBgp = true *.RB1.hasBgp = true *.RB4.hasBgp = true *.RC1.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig_Redist.xml") *.R*.bgp.redistributeRip = true *.R*.bgp.redistributeOspf = "O IA" # enable BGP on RB2 and RB3 *.RB2.hasBgp = true *.RB3.hasBgp = true # --------------------------------------------------------------- [Config Step9] description = "Using Network attribute to advertise specific networks" network = BGP_Topology_4 *.routingTableRecorder.logfile = "step9.rt" *.pcapRecorder.pcapFile = "step9.pcap" # this example shows how to advertise selective networks in BGP using the 'Network' attribute *.configurator.config = xml(" \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ") # OSPF configuration *.R*.hasOspf = true *.R*.ospf.ospfConfig = xmldoc("OSPFConfig.xml") # BGP configuration *.RA4.hasBgp = true *.RB1.hasBgp = true *.RB4.hasBgp = true *.RC1.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig.xml") # --------------------------------------------------------------- [Config Step10] description = "LOCAL_PREF Attribute" network = BGP_LOCAL_PREF *.routingTableRecorder.logfile = "step10.rt" *.pcapRecorder.pcapFile = "step10.pcap" *.configurator.config = xml(" \ \ \ \ \ \ \ \ \ \ \ ") # OSPF configuration *.RB*.hasOspf = true *.RB*.ospf.ospfConfig = xmldoc("OSPFConfig_LOCAL_PREF.xml") *.R*.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig_LOCAL_PREF.xml") *.visualizer.routingTableVisualizer[1].displayRoutingTables = false #*.visualizer.routingTableVisualizer[*].lineShift = 80 *.visualizer.routingTableVisualizer[*].destinationFilter = "*" *.visualizer.routingTableVisualizer[*].lineColor = "black" # --------------------------------------------------------------- [Config Step11] description = "Multi-hop E-BGP" network = Multihop_EBGP *.routingTableRecorder.logfile = "step11.rt" *.pcapRecorder.pcapFile = "step11.pcap" *.configurator.config = xml(" \ \ \ \ \ \ \ ") *.RA.hasBgp = true *.RB.hasBgp = true *.R*.bgp.bgpConfig = xmldoc("BGPConfig_MultiHopEBGP.xml") # ---------------------------------------------------------------