I am developing an application for multicast detection on Fedora core. As part of it I have to inspect IGMP packets arriving from routers (e.g. Membership Query). I am using raw socket with IPPROTO_IGMP to send and receive IGMP packets. Using ethereal I can see the IGMP packets going out and coming in to the host. However, incoming IGMP packets never arrive to my user level process - socket 'receivefrom' simply does not get them. I am not sure whether I have to set any socket option or ioctl to receive IGMP packets at user process level. I will appreciate any help. I can post my code if required. Also please let me know if I should post it to some other mailing list. Thanks. Avijit