I want to see which Multicast-Join-Reports fly through the network in which my host computer resides in. For that I've written a little TypeScript program, that joins the multicast group '224.0.0.22', which is defined in RFC3376 under 4.2.14 as the IP Destination for Multicast-Join-Reports. But I receive no requests even when I should, because I'am watching traffic via Wireshark and there Multicast-Join-Reports are send and received.
Edit 1: Attached is the receiving part:
const interfaces = os.networkInterfaces();
const IGMP_V3_REPORT_MULTICAST_ADDRESS = '224.0.0.22';
const socket = dgram.createSocket('udp4');
const ipv4Interface = interfaces['eth0'].find((i) => i.family === 'IPv4');
if (ipv4Interface) {
    socket.on('error', (e: Error) => {
        console.log(`${ifaceName}: socket error: ${e}`);
        sockResults[index] = false;
    });
    socket.on('listening', () => {
        const address = socket.address();
        console.log(`${ifaceName}: listening on ${address.address}:${address.port}`);
        console.log(`${ifaceName}: joining multicast group with address: ${IGMP_V3_REPORT_MULTICAST_ADDRESS} for local address: ${ipv4Interface.address}`);
        socket.addMembership(IGMP_V3_REPORT_MULTICAST_ADDRESS, ipv4Interface.address);
    })
    socket.on('message', (msg, rinfo) => {
        console.log(`${ifaceName}: got ${msg}`);
    });
    socket.bind(0);
    setTimeout(() => {
        console.log(`${ifaceName}: dropping multicast membership for ${IGMP_V3_REPORT_MULTICAST_ADDRESS}`);
        socket.dropMembership(IGMP_V3_REPORT_MULTICAST_ADDRESS,  ipv4Interface.address);
        console.log(`${ifaceName}: closing socket`);
        socket.close();
        resolve();
    }, 120 * 1000);
}
 
     
    