Pages

Tuesday, March 23, 2010

multicast lab - GNS3


setup the lab as below, bear in mind that multicast is depend on the routing table, so make sure all network are reachable to each other.

enable the multicast routing on both router, R1 and R2

R1(config)#ip multicast-routing

configure PIM on the interfaces R1 : fa0/0 and ser0/0 and R2 fa0/0 and ser0/0


R1
interface FastEthernet0/0
 ip address 192.168.1.99 255.255.255.0
 ip pim sparse-dense-mode
 duplex auto
 speed auto
end
interface Serial0/0
 ip address 10.1.1.1 255.255.255.252
 ip pim sparse-dense-mode
 clock rate 56000
end

R2
interface FastEthernet0/0
 ip address 172.16.1.99 255.255.255.0
 ip pim sparse-dense-mode
 duplex auto
 speed auto
end
interface Serial0/0
 ip address 10.1.1.2 255.255.255.252
 ip pim sparse-dense-mode
end

this is it !! now our multicast traffic should run smoothly on our network. But how to test, there's a few method out there, but let's try this way first.

we'll generate multicast 224.1.1.1 on Source, and interface on Receiver will catch this.

Source

ip sla monitor 1
 type udpEcho dest-ipaddr 224.1.1.1 dest-port 12001 source-ipaddr 192.168.1.10 control disable
 timeout 0
 frequency 5
ip sla monitor schedule 1 start-time now

Receiver

interface FastEthernet1/0
 no switchport
 ip address 172.16.1.10 255.255.255.0
 ip igmp join-group 224.1.1.1
end

Source will generate multicast traffic 224.1.1.1 and start to multicast to the network, any interface that join 224.1.1.1 will grab this packet.

run debug on R1 and R2 to see this packet

R1#debug ip mpacket

focus on the highlighted line, you can see the source of the packet, and to which interface it'll be forwarded. There's another instant of multicast if you notice, that is because i try another method, but.. still working on that ;)
R1
*Mar  1 01:12:59.975: IP(0): s=172.16.1.10 (Serial0/0) d=224.0.1.111 (FastEthernet0/0) id=339, prot=17, len=120(120), mforward
*Mar  1 01:14:59.427: IP(0): s=192.168.1.10 (FastEthernet0/0) d=239.1.1.1 (Serial0/0) id=6548, prot=17, len=44(44), mforward
*Mar  1 01:18:03.727: IP(0): s=192.168.1.10 (FastEthernet0/0) d=239.1.1.1 (Serial0/0) id=8407, prot=17, len=44(44), mforward
*Mar  1 01:23:59.031: IP(0): s=192.168.1.10 (FastEthernet0/0) d=239.1.1.1 (Serial0/0) id=8511, prot=17, len=44(44), mforward
*Mar  1 01:24:59.651: IP(0): s=172.16.1.10 (Serial0/0) d=224.0.1.111 (FastEthernet0/0) id=441, prot=17, len=120(120), mforward

R2
*Mar  1 01:11:55.651: IP(0): s=192.168.1.10 (Serial0/0) d=239.1.1.1 (FastEthernet0/0) id=4729, prot=17, len=44(44), mforward
*Mar  1 01:12:56.051: IP(0): s=172.16.1.10 (FastEthernet0/0) d=224.0.1.111 (Serial0/0) id=339, prot=17, len=120(120), mforward
*Mar  1 01:14:59.503: IP(0): s=192.168.1.10 (Serial0/0) d=239.1.1.1 (FastEthernet0/0) id=6590, prot=17, len=44(44), mforward
*Mar  1 01:23:53.903: IP(0): s=192.168.1.10 (Serial0/0) d=239.1.1.1 (FastEthernet0/0) id=8511, prot=17, len=44(44), mforward
*Mar  1 01:24:54.567: IP(0): s=172.16.1.10 (FastEthernet0/0) d=224.0.1.111 (Serial0/0) id=441, prot=17, len=120(120), mforward

To check the routing and path for multicast, run show ip mroute, there's more detail you can check here

R2#sh ip mroute
..
(*, 224.1.1.1), 02:10:47/00:02:13, RP 0.0.0.0, flags: DC
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:
    FastEthernet0/0, Forward/Sparse-Dense, 02:09:46/00:00:00
    Serial0/0, Forward/Sparse-Dense, 02:10:47/00:00:00

(*, 224.0.1.40), 02:18:14/00:02:05, RP 0.0.0.0, flags: DCL
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:
    Serial0/0, Forward/Sparse-Dense, 02:17:05/00:00:00
    FastEthernet0/0, Forward/Sparse-Dense, 02:17:46/00:00:00

(*, 224.0.1.111), 01:48:01/00:02:14, RP 0.0.0.0, flags: DC
  Incoming interface: Null, RPF nbr 0.0.0.0
  Outgoing interface list:
    Serial0/0, Forward/Sparse-Dense, 01:48:01/00:00:00
    FastEthernet0/0, Forward/Sparse-Dense, 01:48:01/00:00:00

12 comments:

  1. Thanks for the demo. I labbed it up in GNS3 but couldn't duplicate the results until I added:


    source(config)#int fa1/0
    source(config-if)#ip igmp join-group 224.1.1.1

    ReplyDelete
  2. Great Lab! I was looking for a way to simulate a multicast network so I could better understand PIM / IGMP. I didn't even think to use IP SLAs. Thanks!

    ReplyDelete
  3. hello can i get any good materials?
    i really want to be a guru in networking

    ReplyDelete
  4. interesting....

    only Receiver can ping 224.1.1.1

    why Source, R1, and R2 cannot ping 224.1.1.1?

    ReplyDelete
  5. good one... great idea to generate Multicast traffic :) Thanks

    ReplyDelete
  6. Hi my family member! I want to say that this article is awesome,
    nice written and include almost all important infos. I'd like to see more posts like this .
    Also see my page: cigarettes online

    ReplyDelete
  7. Remarkable! Its actually remarkable paragraph,
    I have got much clear idea about from this paragraph.
    Here is my website :: panic attack

    ReplyDelete
  8. Hello, yeah this article is really fastidious and I have
    learned lot of things from it concerning blogging.
    thanks.
    Look at my blog post : clean my pc

    ReplyDelete
  9. http://babaawesam.wordpress.com/2013/03/18/multicasting-with-gns3-and-virtualbox/ is a good blog to graphically see the multicast on GNS3.

    ReplyDelete
  10. can someone please give a full explanation of what is going on in the topology above? or send it to my email don1luv4real@yahoo.com

    ReplyDelete
  11. This didn't start working until I gave, "ip pim sparse-dense-mode" on SOURCE.
    Could you help me understand why?
    interface FastEthernet0/0
    ip address 192.168.1.10 255.255.255.0
    ip pim sparse-dense-mode
    duplex auto
    speed auto

    ReplyDelete
  12. what do you Think,if there are 2 sources with the same Destination address: 224.1.1.1 and we have 4 Receivers. A, B,C and D
    source X: Receivers: A and B
    source Y: Receivers: C and D
    how do you solve that?

    ReplyDelete