Ostinato and Nokia SROS Routers in GNS3 (1/3)

Here is the GNS3 Topology for this blog post:

5 Router Multicast Topology
5 SROS Router Multicast Topology with Ostinato

For the moment let us ignore Ostinato and the Cloud parts of our topology and initially concentrate on building the network infrastructure.

  • OSPF is the IGP
  • PIM is enabled on all inter-router interfaces
  • Candidate BSRs are R3 (Priority 100) and R4 (Priority 90) – R3 should become the BSR (Like Basketball, highest wins)
  • Candidate RPs for 224.0.0.0/4 are R2 (Priority 90) and R4 (Priority 100) – R2 should become the RP (Like Golf, lowest wins)
/configure
    system
        name "R1"
    exit
    card 1
        card-type iom3-xp-b
        mda 1
            mda-type m5-1gb-sfp-b
            no shutdown
        exit
        no shutdown
    exit
    port 1/1/1
        ethernet
        exit
        no shutdown
    exit
    port 1/1/3
        ethernet
        exit
        no shutdown
    exit
    port 1/1/4
        ethernet
        exit
        no shutdown
    exit
    router
        interface "R2"
            address 10.1.2.1/27
            port 1/1/1
            no shutdown
        exit
        interface "R3"
            address 10.1.3.1/27
            port 1/1/3
            no shutdown
        exit
        interface "R5"
            address 10.1.5.1/27
            port 1/1/4
            no shutdown
        exit
        interface "system"
            address 10.10.10.1/32
            no shutdown
        exit
        ospf 0
            area 0.0.0.0
                interface "system"
                    no shutdown
                exit
                interface "R2"
                    no shutdown
                exit
                interface "R3"
                    no shutdown
                exit
                interface "R5"
                    no shutdown
                exit
            exit
            no shutdown
        exit
        pim
            interface "system"
            exit
            interface "R2"
            exit
            interface "R3"
            exit
            interface "R5"
            exit
            no shutdown
                bsr-candidate
                    shutdown
                exit
                rp-candidate
                    shutdown
                exit
        exit
exit all

 

/configure
    system
        name "R2"
    exit
    card 1
        card-type iom3-xp-b
        mda 1
            mda-type m5-1gb-sfp-b
            no shutdown
        exit
        no shutdown
    exit
    port 1/1/1
        ethernet
        exit
        no shutdown
    exit
    port 1/1/2
        ethernet
        exit
        no shutdown
    exit
    port 1/1/3
        ethernet
        exit
        no shutdown
    exit
    router
        interface "R1"
            address 10.1.2.2/27
            port 1/1/1
            no shutdown
        exit
        interface "R4"
            address 10.2.4.2/27
            port 1/1/3
            no shutdown
        exit
        interface "R5"
            address 10.2.5.2/27
            port 1/1/2
            no shutdown
        exit
        interface "system"
            address 10.10.10.2/32
            no shutdown
        exit
        ospf 0
            area 0.0.0.0
                interface "system"
                    no shutdown
                exit
                interface "R1"
                    no shutdown
                exit
                interface "R4"
                    no shutdown
                exit
                interface "R5"
                    no shutdown
                exit
            exit
            no shutdown
        exit
        pim
            interface "system"
            exit
            interface "R1"
            exit
            interface "R4"
            exit
            interface "R5"
            exit
            rp
                static
                exit
                bsr-candidate
                    shutdown
                exit
                rp-candidate
                    address 10.10.10.2
                    group-range 224.0.0.0/4
                    priority 90
                    no shutdown
                exit
            exit
            no shutdown
        exit
exit all

 

/configure
    system
        name "R3"
    exit
    card 1
        card-type iom3-xp-b
        mda 1
            mda-type m5-1gb-sfp-b
            no shutdown
        exit
        no shutdown
    exit
    port 1/1/1
        ethernet
        exit
        no shutdown
    exit
    port 1/1/3
        ethernet
        exit
        no shutdown
    exit
    router
        interface "R1"
            address 10.1.3.3/27
            port 1/1/3
            no shutdown
        exit
        interface "R4"
            address 10.3.4.3/27
            port 1/1/1
            no shutdown
        exit
        interface "system"
            address 10.10.10.3/32
            no shutdown
        exit
        ospf 0
            area 0.0.0.0
                interface "system"
                    no shutdown
                exit
                interface "R1"
                    no shutdown
                exit
                interface "R4"
                    no shutdown
                exit
            exit
            no shutdown
        exit
        pim
            interface "system"
            exit
            interface "R1"
            exit
            interface "R4"
            exit
            rp
                static
                exit
                bsr-candidate
                    priority 100
                    address 10.10.10.3
                    no shutdown
                exit
                rp-candidate
                    shutdown
                exit
            exit
            no shutdown
        exit
exit all

 

/configure
    system
        name "R4"
    exit
    card 1
        card-type iom3-xp-b
        mda 1
            mda-type m5-1gb-sfp-b
            no shutdown
        exit
        no shutdown
    exit
    port 1/1/1
        ethernet
        exit
        no shutdown
    exit
    port 1/1/3
        ethernet
        exit
        no shutdown
    exit
    router
        interface "R2"
            address 10.2.4.4/27
            port 1/1/3
            no shutdown
        exit
        interface "R3"
            address 10.3.4.4/27
            port 1/1/1
            no shutdown
        exit
        interface "system"
            address 10.10.10.4/32
            no shutdown
        exit
        ospf 0
            area 0.0.0.0
                interface "system"
                    no shutdown
                exit
                interface "R2"
                    no shutdown
                exit
                interface "R3"
                    no shutdown
                exit
            exit
            no shutdown
        exit
        pim
            interface "system"
            exit
            interface "R2"
            exit
            interface "R3"
            exit
            rp
                static
                exit
                bsr-candidate
                    priority 90
                    address 10.10.10.4
                    no shutdown
                exit
                rp-candidate
                    address 10.10.10.4
                    group-range 224.0.0.0/4
                    priority 100
                    no shutdown
                exit
            exit
            no shutdown
        exit
exit all

 

/configure
    system
        name "R5"
    exit
    card 1
        card-type iom3-xp-b
        mda 1
            mda-type m5-1gb-sfp-b
            no shutdown
        exit
        no shutdown
    exit
    port 1/1/2
        ethernet
        exit
        no shutdown
    exit
    port 1/1/3
        ethernet
        exit
        no shutdown
    exit
    router
        interface "R1"
            address 10.1.5.5/27
            port 1/1/3
            no shutdown
        exit
        interface "R2"
            address 10.2.5.5/27
            port 1/1/2
            no shutdown
        exit
        interface "system"
            address 10.10.10.5/32
            no shutdown
        exit
        ospf 0
            area 0.0.0.0
                interface "system"
                    no shutdown
                exit
                interface "R1"
                    no shutdown
                exit
                interface "R2"
                    no shutdown
                exit
            exit
            no shutdown
        exit
        pim
            interface "R1"
            exit
            interface "R2"
            exit
            rp
                static
                exit
                bsr-candidate
                    shutdown
                exit
                rp-candidate
                    shutdown
                exit
            exit
            no shutdown
        exit
exit all

Initial Multicast Verification:

A:R4# show router pim status | match " BSR" post-lines 5
BSR State                         : Candidate BSR

Elected BSR
    Address                       : 10.10.10.3
    Expiry Time                   : 0d 00:01:15
    Priority                      : 100
    Hash Mask Length              : 30
    Up Time                       : 0d 00:06:58
Candidate BSR
    Admin State                   : Up
    Oper State                    : Up
    Address                       : 10.10.10.4
    Priority                      : 90
    Hash Mask Length              : 30

Although R4 was a possible BSR, it knows R3 has the job.

Regarding the RP? Well the BSR sends all RP candidates and lets the PIM enabled routers decide themselves – in this case, lowest priority (R2) will be what matters

A:R1# show router pim rp

===============================================================================
PIM RP Set ipv4
===============================================================================
Group Address                                                Hold Expiry
  RP Address                                   Type     Prio Time Time
-------------------------------------------------------------------------------
224.0.0.0/4
  10.10.10.2                                   Dynamic  90   150  0d 00:02:06
  10.10.10.4                                   Dynamic  100  150  0d 00:02:06
-------------------------------------------------------------------------------
Group Prefixes : 1
===============================================================================

So lets look at Ostinato.

There are two parts to it

  1. the Drone (Server that generates/receives traffic) which is a virtual appliance in my GNS3 topology
  2. the GUI which is running on my desktop and connects over the network to the Drone

What may not be obvious is that I run GNS3 on a separate device (an desktop pc given 16GB of ram which runs Ubuntu and starts the GNS3 server upon bootup) as a remote server which I connect to via the GNS3 GUI on my PC.

The Ubuntu Server /etc/network/interfaces configuration is a little different to most as a bridge interface is used rather than the eth0 interface directly:

adam@gns3:~$cat /etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
iface eth0 inet manual
auto pnet0
iface pnet0 inet dhcp
    bridge_ports eth0
    bridge_stp off

This comes in handy because I can then add other interfaces to the bridge and be part of the same IP subnet. The follow command makes sure the gns3 user (which the GNS3 server application runs as) can control the tunnel interface (tap0) and it is added to bridge pnet0 and is enabled.

adam@gns3:~$cat /etc/rc.local
tunctl -u gns3
brctl addif pnet0 tap0
ifconfig tap0 up
exit 0
Ostinator e0 tap interface
Ostinato e0 connected to server tap0

Within GNS3, a cloud that is attached to nio_tap:tap0 is created and the link is attached to the Ostinato VM interface e0.

Lets fire up the Ostinato VM (I downloaded it from Bernhard Ehlers’s site – I use the qcow2 version because I’m running it as a qemu app) and see if it has world connectivity:

Core Linux

username 'gns3', password 'gns3'
Run filetool.sh -b if you want to save your changes
box login: tc
login: can't change directory to '/home/tc'
   ( '>')
  /) TC (\   Core is distributed with ABSOLUTELY NO WARRANTY.
 (/-_--_-\)           www.tinycorelinux.net

tc@box:/$ netstat -l | grep tcp
tcp        0      0 0.0.0.0:7878            0.0.0.0:*               LISTEN

tc@box:/$tc@box:/$ ifconfig eth0 | grep "inet addr"
          inet addr:192.168.1.66  Bcast:192.168.1.255  Mask:255.255.255.0
tc@box:/$ ping 8.8.4.4 -c 5
PING 8.8.4.4 (8.8.4.4): 56 data bytes
64 bytes from 8.8.4.4: seq=0 ttl=55 time=25.842 ms
64 bytes from 8.8.4.4: seq=1 ttl=55 time=25.151 ms
64 bytes from 8.8.4.4: seq=2 ttl=55 time=24.438 ms
64 bytes from 8.8.4.4: seq=3 ttl=55 time=25.739 ms
64 bytes from 8.8.4.4: seq=4 ttl=55 time=25.540 ms

--- 8.8.4.4 ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 24.438/25.342/25.842 ms

The Ostinato drone is on our network and ready to rock, we can see the drone is listening on tcp port 7878 for the Ostinato GUI and it has reachability on the LAN to the router and off to the wild and woolly internet.

The Next Post will focus on connecting Ostinato up to the topology and using it to play with multicast.

We shall:

  • Connect he Ostinato GUI to the Drone
  • Create Virtual Devices in Ostinato to appear as ARP/ICMP responders to the network
  • Create a multicast stream (Mac/EthII/IPv4/UDP) to be sent to the network
  • Create streams which send IGMP reports to the network so the network will forward multicast packets to those ports