Tiny Core Linux

Tiny Core Base => TCB Q&A Forum => Topic started by: RogerWilco on January 18, 2016, 05:55:32 PM

Title: Using a Tiny Core client as an IGMP host
Post by: RogerWilco on January 18, 2016, 05:55:32 PM
I was wanting to test the IGMP/PIM features of vEOS, and I wasn't able to get both the Tinycore clients, and Debian Jessie server to use multicast to send a VLC stream via a multicast stream.  Is there something specific I need to do to get the tinycore clients configured to accomodate IGMP, or is there a .tcz extension that would let me simulate this?   I configured the vEOS switches correctly, but I never saw join/prune requests on the RP, nor would the client machines pull down the video I wanted to multicast.

Here's an example of the setup ->  VLC-server 
                                                              |
                                                           FHR
                                                       /         \
                                                     RP          L3 Router
                                                        \        /   
                                                           LHR
                                                             |
                                                            L2 
                                             TC-host 1 TC-host 2
                                                             
I also tied directly connecting the hosts to LHR, but nada. Neither of the hosts could every see the video stream from the VLC server, and I never saw join, prune, registration, nor could the clients ping the multicast group address. I also tried IGMP host-proxy, but that was a no go.
Title: Re: Using a Tiny Core client as an IGMP host
Post by: curaga on January 19, 2016, 04:47:18 AM
I can tell the kernel support is there, but otherwise I've never used multicast, sorry.
Title: Re: Using a Tiny Core client as an IGMP host
Post by: RogerWilco on January 19, 2016, 08:24:21 AM
Darn!  Thanks anyway curaga!   :-\
Title: Re: Using a Tiny Core client as an IGMP host
Post by: Rich on January 19, 2016, 10:33:54 AM
Hi RogerWilco
Have you looked at this:
http://peakdrive.com/?p=440
Some of the replies in the  Comments  section at the end may also be of use.
Title: Re: Using a Tiny Core client as an IGMP host
Post by: RogerWilco on January 19, 2016, 11:26:56 AM
Hi Rich!  I've been able to configure VLC to use rtp properly on my Debian Jessie server, but the Tiny Core clients never receive the stream, nor do I see any joins, registration, prunes on the Rendevous Point.  It could easily be a configuration issue on my Tiny Core clients (or an issue with the vEOS switches). If I set all the switches to no use IGMP/PIM, and for direct routing, the Tiny Core clients can stream the VLC stream just fine (albeit slowly).  The TC clients also cannot ping the multicast group address, which is why I'm wondering if it's just a misconfig in those.

Any idea what settings I need to add to ifconfig on the TC hosts to get them to reach the multicast group? I followed a generic linux example online about adding a multicast gw with "sudo route add", but I've no idea if I did it correct.
Title: Re: Using a Tiny Core client as an IGMP host
Post by: Rich on January 19, 2016, 12:01:03 PM
Hi RogerWilco
I've never had to deal with multicast myself, but it is enabled by default:
Code: [Select]
tc@box:~$ netstat -g
IPv6/IPv4 Group Memberships
Interface       RefCnt Group
--------------- ------ ---------------------
lo              1      all-systems.mcast.net
eth0            1      all-systems.mcast.net
tc@box:~$
tc@box:~$ ifconfig
eth0      Link encap:Ethernet  HWaddr 00:02:e3:07:6a:d4 
          inet addr:192.168.1.30  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:31909900 errors:1 dropped:89 overruns:0 frame:0
          TX packets:21791119 errors:4 dropped:0 overruns:0 carrier:4
          collisions:0 txqueuelen:1000
          RX bytes:4094812595 (3.8 GiB)  TX bytes:82671610 (78.8 MiB)
          Interrupt:3 Base address:0xd800

lo        Link encap:Local Loopback 
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:422592 errors:0 dropped:0 overruns:0 frame:0
          TX packets:422592 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:21178818 (20.1 MiB)  TX bytes:21178818 (20.1 MiB)

Quote
I followed a generic linux example online about adding a multicast gw with "sudo route add", but I've no idea if I did it correct.
If you don't post the command you executed, no one else will know if you did it correctly either.

See:
http://wiki.gigaspaces.com/wiki/display/XAP91/How+to+Configure+Multicast
Title: Re: Using a Tiny Core client as an IGMP host
Post by: RogerWilco on January 19, 2016, 12:34:15 PM
Oh, ok. I didn't use "$ /sbin/route -n add -net 224.0.0.0 netmask 240.0.0.0 dev eth0"

The guide I followed had me delete the default route to my gateway, and the enter "sudo route add -net 224.0.0.0/4 gw 10.230.8.1".  That's could easily be the issue. I'll try using this in a couple of hours, and report back if it worked properly.
Title: Re: Using a Tiny Core client as an IGMP host
Post by: Rich on January 19, 2016, 12:40:45 PM
Hi RogerWilco
Use:
Code: [Select]
sudo route -n add -net 224.0.0.0 netmask 240.0.0.0 dev eth0Generally, you don't specify the path to an executable.
Title: Re: Using a Tiny Core client as an IGMP host
Post by: RogerWilco on January 23, 2016, 06:08:30 PM
Works great! That was what I was missing. Thanks! :)