Socket.EnableBroadcast プロパティ

定義

がブロードキャスト パケットを Boolean 送信できるかどうかを指定する値を Socket 取得または設定します。

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

プロパティ値

true がブロードキャスト パケットの Socket 送信を許可する場合は 。それ以外の場合 falseは 。 既定では、 falseです。

例外

このオプションは、データグラム ソケットに対してだけ有効です。

Socket が閉じられました。

次のコード例では、 プロパティの使用方法を EnableBroadcast 示します。

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}");
}

注釈

ブロードキャストは特定のサブネットに制限されており、ユーザー データグラム プロトコル (UDP) を使用する必要があります。インターネット プロトコル バージョン 4 の場合は、パケットを 255.255.255.255.255 に送信することで、ローカル サブネットにブロードキャストできます。または、インターネット プロトコル (IP) アドレスのネットワーク部分であるダイレクト ブロードキャスト アドレスを使用し、ホスト部分にすべてのビットを設定できます。 たとえば、IP アドレスが 192.168.1.40 (ネットマスクが 255.255.255.0 のクラス C アドレス) の場合、ネットワーク部分は最初の 3 オクテット、ホスト部分は最後のオクテット)、ダイレクトブロードキャスト アドレスは 192.168.1.255 です。

伝送制御プロトコル (TCP) ソケットでこのプロパティを設定しても、効果はありません。

適用対象