Поделиться через


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 (адрес класса C с маской сети 255.255.255.0— сетевой частью является первые три октета, а часть узла — последним октетом), адресом направленной широковещательной передачи будет 192.168.1.255.

Установка этого свойства в сокете TCP не будет иметь никакого влияния.

Применяется к