UdpClient.JoinMulticastGroup Method (Int32, IPAddress)

 

Adds a UdpClient to a multicast group.

Namespace:   System.Net.Sockets
Assembly:  System (in System.dll)

public void JoinMulticastGroup(
	int ifindex,
	IPAddress multicastAddr
)

Parameters

ifindex
Type: System.Int32

The interface index associated with the local IP address on which to join the multicast group.

multicastAddr
Type: System.Net.IPAddress

The multicast IPAddress of the group you want to join.

Exception Condition
ObjectDisposedException

The underlying Socket has been closed.

SocketException

An error occurred when accessing the socket. See the Remarks section for more information.

Before joining a multicast group, be sure the socket is bound to the port or endpoint. You can do this by calling one of the constructors that accepts a port or an endpoint as parameter.

The infindex parameter is used to identify a hardware interface on the same link.

System_CAPS_noteNote

There are several multicast address ranges to choose from. Refer to the IETF RFC 2375.

System_CAPS_noteNote

You cannot call JoinMulticastGroup on a UdpClient constructed without a specific local port (that is, using the UdpClient.UdpClient() or UdpClient.UdpClient(AddressFamily) constructor).


// Instantiate IPv6MulticastOption using another 
// overloaded constructor.
IPv6MulticastOption ipv6MulticastOption2 = new IPv6MulticastOption(group, interfaceIndex);

// Store the IPAdress multicast options.
group =  ipv6MulticastOption2.Group;
interfaceIndex = ipv6MulticastOption2.InterfaceIndex;

// Display the IPv6MulticastOption2 properties.
Console.WriteLine("IPv6MulticastOption.Group: [" + group  + "]");
Console.WriteLine("IPv6MulticastOption.InterfaceIndex: [" + interfaceIndex + "]");

// Join the specified multicast group using one of the 
// JoinMulticastGroup overloaded methods.
clientOriginator.JoinMulticastGroup((int)interfaceIndex, group);

.NET Framework
Available since 1.1
Return to top
Show: