1. Summary: Can't receive multi-cast data correctly when using unique multi-cast addresses but a common port. 2. Description I'm converting an application that runs under SGI IRIX 6.2 to run under Linux. It works under IRIX. I can't receive multi-cast data correctly under Linux when using a unique multi-cast addresses but a common port. Any process that is listening to a particular port will receive all data for that port irregardless of the address. Everything works if each process uses unique multi-cast address and unique ports. No common ports at all. It was my understanding that a connection requires a unique 5-tuple. Source and destination address, source and destination port, and protocol. 3. Keywords: kernel networking multi-cast 4. Kernel version: 2.2.10 and 2.4.7 5. Output of Oops: Not an OOPS 6. Example : I don't think so 7.Environment 7.1 ver_linux If some fields are empty or look unusual you may have an old version. Compare to the current minimal requirements in Documentation/Changes. Linux linux_test1 2.4.7-10 #1 Thu Sep 6 17:27:27 EDT 2001 i686 unknown Gnu C 2.96 Gnu make 3.79.1 binutils 2.11.90.0.8 util-linux 2.11f mount 2.11g modutils 2.4.6 e2fsprogs tune2fs reiserfsprogs 3.x.0j PPP 2.4.1 isdn4k-utils 3.1pre1 Linux C Library 2.2.4 Dynamic linker (ldd) 2.2.4 Procps 2.0.7 Net-tools 1.60 Console-tools 0.3.3 Sh-utils 2.0.11 Modules Loaded sd_mod scsi_mod ide-cd cdrom nls_iso8859-1 nls_cp437 vfat fat soundcore autofs e100 ipchains usb-uhci usbcore ext3 jbd -- Versions installed: (if some fields are empty or looks -- unusual then possibly you have very old versions) Linux metalshop.gsfc.nasa.gov 2.2.10 #1 SMP Tue Aug 10 19:01:45 MDT 1999 i586 unknown Kernel modules 2.1.121 Gnu C egcs-2.91.66 Binutils 2.9.1.0.21 Linux C Library 2.1.1 Dynamic linker ldd: version 1.9.11 Linux C++ Library 2.9.0 Procps 2.0.2 Mount 2.9s Net-tools 1.52 Kbd 0.99 Sh-utils 1.16 Modules Loaded nfs lockd sunrpc lp parport_pc parport 3c59x sound soundcore soundlow sd_mod aic7xxx loop scsi_mod 7.2 Processor information kernel 2.4.7 processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 8 model name : Pentium III (Coppermine) stepping : 10 cpu MHz : 851.954 cache size : 256 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat pse36 mmx fxsr sse bogomips : 1697.38 kernel 2.2.10 processor : 0 vendor_id : AuthenticAMD cpu family : 5 model : 8 model name : AMD-K6(tm) 3D processor stepping : 0 cpu MHz : 300.689371 fdiv_bug : no hlt_bug : no sep_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr mce cx8 sep mmx 3dnow bogomips : 599.65 7.3 Module information kernel 2.4.7 sd_mod 11616 0 (autoclean) (unused) scsi_mod 95696 1 (autoclean) [sd_mod] ide-cd 27072 0 (autoclean) cdrom 28512 0 (autoclean) [ide-cd] nls_iso8859-1 2832 0 (autoclean) nls_cp437 4352 0 (autoclean) vfat 9584 0 (autoclean) fat 32384 0 (autoclean) [vfat] soundcore 4464 0 (autoclean) autofs 11520 0 (autoclean) (unused) e100 52144 1 ipchains 39200 0 usb-uhci 21536 0 (unused) usbcore 51712 1 [usb-uhci] ext3 64624 6 jbd 40992 6 [ext3] kernel 2.2.10 nfs 30168 1 (autoclean) lockd 31720 1 (autoclean) [nfs] sunrpc 53924 1 (autoclean) [nfs lockd] lp 5692 0 (unused) parport_pc 5620 1 parport 7648 1 [lp parport_pc] 3c59x 18472 2 sound 60248 0 (unused) soundcore 2788 3 [sound] soundlow 304 0 [sound] sd_mod 17116 2 aic7xxx 103484 2 loop 7712 0 (unused) scsi_mod 59248 2 [sd_mod aic7xxx] 7.4 Loaded driver and hardware information kernel 2.2.10 0000-001f : dma1 0020-003f : pic1 0040-005f : timer 0060-006f : keyboard 0070-007f : rtc 0080-008f : dma page reg 00a0-00bf : pic2 00c0-00df : dma2 00f0-00ff : fpu 0170-0177 : ide1 01f0-01f7 : ide0 02f8-02ff : serial(auto) 0376-0376 : ide1 03c0-03df : vga+ 03f6-03f6 : ide0 03f8-03ff : serial(auto) 0400-043f : Intel Corporation 82371AB PIIX4 ACPI 0440-045f : Intel Corporation 82371AB PIIX4 ACPI 0cf8-0cff : PCI conf1 e800-e8ff : ATI Technologies Inc Rage XL ee80-eebf : Intel Corporation 82557 [Ethernet Pro 100] (#2) ee80-ee9f : e100 ef00-ef3f : Intel Corporation 82557 [Ethernet Pro 100] ef00-ef1f : e100 ef80-ef9f : Intel Corporation 82371AB PIIX4 USB ef80-ef9f : usb-uhci ffa0-ffaf : Intel Corporation 82371AB PIIX4 IDE ffa0-ffa7 : ide0 ffa8-ffaf : ide1 00000000-0009fbff : System RAM 0009fc00-0009ffff : reserved 000a0000-000bffff : Video RAM area 000c0000-000c7fff : Video ROM 000c8000-000c97ff : Extension ROM 000c9800-000cafff : Extension ROM 000f0000-000fffff : System ROM 00100000-1ffbffff : System RAM 00100000-0023d5ff : Kernel code 0023d600-002541cb : Kernel data 1ffc0000-1fff7fff : ACPI Tables 1fff8000-1fffffff : ACPI Non-volatile Storage e0000000-efffffff : Intel Corporation 440BX/ZX - 82443BX/ZX Host bridge (AGP dis abled) fd000000-fdffffff : ATI Technologies Inc Rage XL fe800000-fe8fffff : Intel Corporation 82557 [Ethernet Pro 100] (#2) fea00000-feafffff : Intel Corporation 82557 [Ethernet Pro 100] febfa000-febfafff : Intel Corporation 82557 [Ethernet Pro 100] (#2) febfb000-febfbfff : Intel Corporation 82557 [Ethernet Pro 100] febff000-febfffff : ATI Technologies Inc Rage XL fec00000-fec00fff : reserved fee00000-fee00fff : reserved fff00000-ffffffff : reserved kernel 2.2.10 0000-001f : dma1 0020-003f : pic1 0040-005f : timer 0060-006f : keyboard 0070-007f : rtc 0080-008f : dma page reg 00a0-00bf : pic2 00c0-00df : dma2 00f0-00ff : fpu 02f8-02ff : serial(auto) 0378-037a : parport0 03c0-03df : vga+ 03f8-03ff : serial(auto) d800-d8be : aic7xxx dc00-dc3f : eth0 e000-e03f : eth1 cat: /proc/iomem: No such file or directory 7.5 PCI information kernel 2.4.7 <nothing> kernel 2.2.10 00:00.0 Host bridge: VIA Technologies, Inc. VT82C597 [Apollo VP3] (rev 04) Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 16 set Region 0: Memory at e0000000 (32-bit, prefetchable) Capabilities: [a0] AGP version 1.0 Status: RQ=7 SBA+ 64bit- FW- Rate=21 Command: RQ=7 SBA+ AGP- 64bit- FW- Rate=21 00:01.0 PCI bridge: VIA Technologies, Inc. VT82C598 [Apollo MVP3 AGP] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR- Latency: 0 set Bus: primary=00, secondary=01, subordinate=01, sec-latency=0 I/O behind bridge: 0000c000-0000cfff Memory behind bridge: e4000000-e5ffffff Prefetchable memory behind bridge: e6000000-e6ffffff BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B- 00:07.0 ISA bridge: VIA Technologies, Inc. VT82C586 ISA [Apollo VP] (rev 41) Subsystem: Unknown device 1106:0000 Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 0 set 00:07.1 IDE interface: VIA Technologies, Inc. VT82C586 IDE [Apollo] (rev 06) (prog-if 8f) Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Interrupt: pin A routed to IRQ 0 Region 0: I/O ports at <ignored> [disabled] Region 1: I/O ports at <ignored> [disabled] Region 2: I/O ports at <ignored> [disabled] Region 3: I/O ports at <ignored> [disabled] Region 4: I/O ports at d000 [disabled] 00:08.0 SCSI storage controller: Adaptec AIC-7861 (rev 01) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 4 min, 4 max, 64 set, cache line size 08 Interrupt: pin A routed to IRQ 15 Region 0: I/O ports at d800 Region 1: Memory at ea000000 (32-bit, non-prefetchable) 00:0a.0 Ethernet controller: 3Com Corporation 3c905 100BaseT4 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 3 min, 8 max, 64 set Interrupt: pin A routed to IRQ 5 Region 0: I/O ports at dc00 00:0b.0 Ethernet controller: 3Com Corporation 3c905 100BaseT4 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 2 min, 64 set Interrupt: pin A routed to IRQ 9 Region 0: I/O ports at e000 01:00.0 VGA compatible controller: ATI Technologies Inc 215GB [Mach64 GB] (rev 5c) Subsystem: Unknown device 1002:0040 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 8 min, 64 set, cache line size 08 Region 0: Memory at e6000000 (32-bit, prefetchable) Region 1: I/O ports at c000 Region 2: Memory at e5000000 (32-bit, non-prefetchable) Capabilities: [50] AGP version 1.0 Status: RQ=255 SBA+ 64bit- FW- Rate=21 Command: RQ=255 SBA+ AGP- 64bit- FW- Rate=21 7.6 None on either machine. 7.7 kernel 2.4.7 ifconfig eth0 Link encap:Ethernet HWaddr 00:02:B3:A4:A3:EA inet addr:172.16.1.100 Bcast:172.16.255.255 Mask:255.255.0.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:11246189 errors:0 dropped:0 overruns:0 frame:0 TX packets:27619104 errors:284 dropped:0 overruns:0 carrier:284 collisions:296058 txqueuelen:100 RX bytes:2442513226 (2329.3 Mb) TX bytes:980767033 (935.3 Mb) Interrupt:5 Base address:0xef00 Memory:e08b7000-e08b7c40 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:1442509 errors:0 dropped:0 overruns:0 frame:0 TX packets:1442509 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:1275302817 (1216.2 Mb) TX bytes:1275302817 (1216.2 Mb) route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 172.16.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 224.0.0.0 0.0.0.0 240.0.0.0 U 0 0 0 eth0 0.0.0.0 172.16.1.78 0.0.0.0 UG 0 0 0 eth0 kernel 2.2.10 ifconfig eth0 Link encap:Ethernet HWaddr 00:60:08:8D:8E:57 inet addr:172.16.1.78 Bcast:172.16.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:69509 errors:0 dropped:0 overruns:0 frame:0 TX packets:131501 errors:0 dropped:0 overruns:0 carrier:0 collisions:64776 txqueuelen:100 Interrupt:5 Base address:0xdc00 eth1 Link encap:Ethernet HWaddr 00:60:08:8D:90:10 inet addr:<deleted> Bcast:<deleted> Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:80106 errors:0 dropped:0 overruns:0 frame:0 TX packets:32 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 Interrupt:9 Base address:0xe000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:3924 Metric:1 RX packets:14317 errors:0 dropped:0 overruns:0 frame:0 TX packets:14317 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface <deleted> 0.0.0.0 255.255.255.0 U 0 0 0 eth1 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 172.16.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 224.0.0.0 0.0.0.0 240.0.0.0 U 0 0 0 eth0 0.0.0.0 <deleted> 0.0.0.0 UG 1 0 0 eth1 0.0.0.0 172.16.1.254 0.0.0.0 UG 1 0 0 eth0 - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html