On Wed, Jul 13, 2005 at 03:06:55PM +0000, stonewall@xxxxxxxxxxxxx wrote: > I am attempting to solve a problem that has began to plague me since kernel > version 2.6.11. > > I have a single DVB-S PCI card. I receive six PIDs via that card for news > streaming (I'm a news junky). The problem is that the multicast streams on > each of the six PIDs come from the same address - 10.230.17.5. > > When I configure the dvb0_? devices, I had been using 10.230.17.20-25 up > through kernel 2.6.11. All worked fine - I was able to connect to the six > multicasts and see all six PIDs. > > Starting with 2.6.11, though, the routing table had become much tighter, and > it would then only stream through the first device I configured for that > subnet. I can tcpdump all the devices and see the stream packets - but I > cannot "read" or forward on any except the first I configure for that subnet. > > I initially tried: > > route add -net 224.0.6.10 netmask 255.255.255.255 dvb0_0 > route add -net 224.0.6.11 netmask 255.255.255.255 dvb0_1 > route add -net 224.0.6.12 netmask 255.255.255.255 dvb0_2 > route add -net 224.0.6.13 netmask 255.255.255.255 dvb0_3 > route add -net 224.0.6.14 netmask 255.255.255.255 dvb0_4 > route add -net 224.0.6.15 netmask 255.255.255.255 dvb0_5 > > This did not help - I still could only see the first device configured for the > subnet. I configured each device for a completely different subnet - each, > and then attempted to route - still failure. > > I have read, unfortunately, that multicast cannot be routed. Or at least with > the traditional methods. SMCRoute might provide a workaround: it can make static routes for multicast streams without IGMP. I think you can define source as well as destination interfaces. http://www.cschill.de/smcroute/ Julian > > So then I bridged all the devices together: > > brctl addbr br0 > brctl stp br0 off > brctl addif br0 dvb0_0 > brctl addif br0 dvb0_1 > brctl addif br0 dvb0_2 > brctl addif br0 dvb0_3 > brctl addif br0 dvb0_4 > brctl addif br0 dvb0_5 > ifconfig dvb0_0 0.0.0.0 up > ifconfig dvb0_1 0.0.0.0 up > ifconfig dvb0_2 0.0.0.0 up > ifconfig dvb0_3 0.0.0.0 up > ifconfig dvb0_4 0.0.0.0 up > ifconfig dvb0_5 0.0.0.0 up > ifconfig br0 10.230.17.20 > > And this worked through kernel version 2.6.11.11. But, I use the skystar2 > card, and until 2.6.12.2, it's flaky. Under 2.6.12.2, the new b2c2_flexcop > driver seems to work grand - but now bridging no longer works. I can bridge > without errors, but now no data flows from any of the PIDs. > > I corresponded briefly with the kernel bridge maintainer, and from the initial > conversation, I used macchanger to change the mac address for each dvb0_? > device so that each was unique within my system. Still no go. The final > statement from the bridge module maintainer is that the networking device > from linuxtv-dvb must be broke. > > All I want to do is be able to stream all six PIDs and see them (outside of > tcpdump). > > Final notes - multicast is compiled into the kernel, and ifconfig shows > MULTICAST on the devices. > > Any ideas? > > Stonewall > > _______________________________________________ > > linux-dvb@xxxxxxxxxxx > http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb