Open In App

Node.js socket.setMulticastLoopback() Method

Last Updated : 11 Apr, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

The socket.setMulticastLoopback() method is an inbuilt application programming interface of class Socket within dgram module which is used to set or clear the IP_MULTICAST_LOOP socket option which helps the server in receiving the multicast packet at the local interface.

Syntax:

const socket.setMulticastLoopback( flag )

Parameters: This method takes the Boolean value as a parameter true for enabling the IP_MULTICAST_LOOP socket option and false for disabling it.

Return Value: This method does not return any value.

Example 1: In this example, we will see the use of the socket.setMulticastLoopback() method

Filename: index.js

Javascript




// Node.js program to demonstrate the
// socket.setMulticastLoopback() method
 
// Importing dgram module
const dgram = require('dgram');
 
// Creating and initializing client
// and server socket
let server = dgram.createSocket("udp4");
let client = dgram.createSocket("udp4");
let broadcast_address = 12345;
 
// Catching the message event
server.on("message", function (msg) {
 
    // Displaying the client message
    process.stdout.write("UDP String: " + msg + "\n");
 
    // Exiting process
    process.exit();
})
    .bind(broadcast_address, () => {
 
        // Enable the IP_MULTICAST_LOOP socket option
        // by using the setMulticastLoopback() method
        server.setMulticastLoopback(true);
    });
 
// Client sending message to server
client.send("Hello", 0, 7,
    broadcast_address, "localhost");


Output: 

UDP String: Hello

Example 2: In this example, we will see the use of the socket.setMulticastLoopback() method

Filename: index.js

Javascript




// Node.js program to demonstrate the
// socket.setMulticastLoopback() method
 
// Importing dgram module
const dgram = require('dgram');
 
// Creating and initializing client
// and server socket
let client = dgram.createSocket("udp4");
let server = dgram.createSocket("udp4");
 
// Catching the message event
server.on("message", function (msg) {
 
    // Displaying the client message
    process.stdout.write("UDP String: " + msg + "\n");
 
    // Exiting process
    process.exit();
});
 
// Catching the listening event
server.on('listening', () => {
    const address = server.address();
    console.log(`server listening
        ${address.address}:${address.port}`);
});
 
// Binding server with port address
server.bind(1234, () => {
 
    // Enable the IP_MULTICAST_LOOP socket option
    // by using the setMulticastLoopback() method
    server.setMulticastLoopback(true);
});
 
// Client sending message to server
client.send("Hello", 0, 7, 1234, "localhost");


Output:

server listening 0.0.0.0:1234
UDP String: Hello

Run the index.js file using the following command:

node index.js

Reference: https://nodejs.org/dist/latest-v12.x/docs/api/dgram.html#dgram_socket_setmulticastloopback_flag



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads