Operating System - Linux
1752793 Members
6107 Online
108789 Solutions
New Discussion юеВ

Re: Multicasting over crosscabled NIC

 
HenryChuaka
Occasional Contributor

Multicasting over crosscabled NIC

Hi Guys,

I am have setup a cross cable between 2 NIC card sitting in 2 different system. I set

card A (eth1) ip: 192.168.4.3
card B (eth1) ip: 192.168.4.4

after bring up the interfaces, I am able to ping both way e.g. ping -Ieth1 192.168.4.3,4

but when I try to do a multicast

ping -Ieth1 224.0.0.1 i don't get a response. Do I need to enable something on the NIC to make this to work?

Cheers
Henry
3 REPLIES 3
Matti_Kurkela
Honored Contributor

Re: Multicasting over crosscabled NIC

If no application on the second host has registered any interest in receiving any multicast traffic, the network driver's multicast filter will be completely closed, and your multicast pings may not reach the part of the network driver stack that responds to pings.

(Yes, I know: in theory, all multicast-capable hosts should receive all traffic addressed to 224.0.0.1; but in practice, that turned out to be an easy way to overload a network by accident or malice, so modern OSs may have added some extra safeguards.)

Try with proper multicast testing tool kit, like the one available from here:

http://www.29west.com/mtools/

For example: on system A, run:
mdump -v 224.0.2.1 1234 192.168.4.3

And on system B:
msend 224.0.2.1 1234 0 192.168.4.4

The first command on system A tells the kernel it's interested in receiving multicast messages on that particular address/port combination. That causes the system A to send out an IGMP message to tell the system wants to join that multicast group. It also causes the kernel to configure the NIC's multicast filter to receive traffic for that multicast group. The kernel does both these actions automatically, as soon as an application sets up a multicast listening socket of the correct type.

By the way: please don't use the 224.0.0.1 multicast address unless you really, really need to. In fact, please avoid any *.0.0.1 and *.128.0.1 multicast addresses, because these will all map to the same Ethernet-level multicast MAC address.

If you accidentally send *.0.0.1 or *.128.0.1 multicast traffic into a network of multicast-aware switches instead of your cross cable, that can make your network administrator somewhat unhappy.

Please see pages 13-18 of this Cisco presentation:
http://www.cisco.com/en/US/prod/collateral/iosswrel/ps6537/ps6552/prod_presentation0900aecd80310883.pdf

MK
MK
Alan_152
Honored Contributor

Re: Multicasting over crosscabled NIC

In theory this should work, but in my practice I've always had to throw in a switch between the 2 machines I've tried to multicast between.
HenryChuaka
Occasional Contributor

Re: Multicasting over crosscabled NIC

Hi Guys,

Thanks for your valuable feedbabck. I have redhat 5.4 64x on both box with the same kernel. I have 2 NIC active on each boxes, one to a switch and one crossed between them. If I do a ping 224.0.0.1 without the interface it goes thru the switch which allow the ping to come back with a response but that does not work with the crossed Nic - like Alan say, it seems to work only thru switches, does this mean

1. the switch is managing the multicast messages from the box?
2. and is there a known security feature in Redhat 5.4 that is stopping this?

Thanks in Advance!

Regards
Henry