다음을 통해 공유


Socket.MulticastLoopback 속성

정의

나가는 멀티캐스트 패킷을 보내는 애플리케이션에 전달할지 여부를 지정하는 값을 가져오거나 설정합니다.

public:
 property bool MulticastLoopback { bool get(); void set(bool value); };
public bool MulticastLoopback { get; set; }
member this.MulticastLoopback : bool with get, set
Public Property MulticastLoopback As Boolean

속성 값

Socket이 나가는 멀티캐스트 패킷을 받으면 true이고, 그렇지 않으면 false입니다.

예외

소켓에 액세스하는 동안 오류가 발생했습니다.

Socket이 닫혔습니다.

Socket 은 또는 InterNetworkV6 패밀리에 InterNetwork 없습니다.

예제

다음 코드 예제에서는 MulticastLoopback 속성입니다.

static void ConfigureUdpSocket(Socket^ udpSocket)
{

    // Set the Don't Fragment flag.
    udpSocket->DontFragment = true;
     
    // Enable broadcast.
    udpSocket->EnableBroadcast = true;
     
    // Disable multicast loopback.
    udpSocket->MulticastLoopback = false;
    Console::WriteLine("Udp Socket configured:");
    Console::WriteLine("  DontFragment {0}", 
        udpSocket->DontFragment);
    Console::WriteLine("  EnableBroadcast {0}", 
        udpSocket->EnableBroadcast);
    Console::WriteLine("  MulticastLoopback {0}", 
        udpSocket->MulticastLoopback);
}
static void ConfigureUdpSocket(Socket udpSocket)
{
    // set the Don't Fragment flag.
    udpSocket.DontFragment = true;
    // Enable broadcast.
    udpSocket.EnableBroadcast = true;

    // Disable multicast loopback.
    udpSocket.MulticastLoopback = false;

    Console.WriteLine("Udp Socket configured:");
    Console.WriteLine($"  DontFragment {udpSocket.DontFragment}");
    Console.WriteLine($"  EnableBroadcast {udpSocket.EnableBroadcast}");
    Console.WriteLine($"  MulticastLoopback {udpSocket.MulticastLoopback}");
}

설명

멀티캐스트는 인터넷에서 다 대 다 통신을 위한 확장 가능한 방법입니다. 프로세스는 멀티캐스트 주소를 구독합니다. 그러면 구독된 프로세스에서 보낸 모든 패킷은 멀티캐스트 주소를 구독하는 다른 모든 프로세스에서 수신됩니다.

TCP(Transmission Control Protocol) 소켓에서 이 속성을 설정해도 아무런 효과가 없습니다.

적용 대상