В типичном приложении широковещательной рассылки создается неподключенный сокет UDP, для него запрашивается широковещательный адрес, а затем вызывается функция send () с этим сокетом для инициализации широковещательной рассылки.
Модуль IO::Interface
В настоящем разделе рассматривается модуль IO::Interface, который после загрузки добавляет к классу IO::Socket несколько методов, позволяющих получить информацию о сетевых интерфейсах хоста. Методы, добавляемые этим модулем к классу IO::Socket, перечислены ниже.
@interface_names = $socket->if_list
Возвращает список имен интерфейсов в виде массива строк. Будут возвращены только те интерфейсы, для которых загржены драйверы.
$flags = $socket->if_flags($interface_name)
Возвращает флажки интерфейса, указанного параметром $interface_name. Флажки представляют собой двоичную маску различных атрибутов, которые, кроме всего прочего, указывают, активен ли интерфейс и способен ли он выполнять широковещательную рассылку. Наиболее широко применяемые флажки перечислены в таблице далее.
$addr = $socket->if_addr ($interface_name)
Возвращает (одиночный) IP-адрес для указанного интерфейса в виде четырех чисел, разделенных точками.
Возвращает широковещательный адрес указанного интерфейса в виде четырех чисел, разделенных точками. Для интерфейсов, которые не могут выполнять широковещательную рассылку, возвращает значение undef.
$netmask = $socket->if_netmask ($interface_name)
Возвращает маску сети для указанного интерфейса.
2015-06-11 11:24:57
это интересно Коррупционные схемы проникают во все сферы нашей жизнедеятельности и отравляют нашу жизнь. Неисключением является и сегмент ИТ-отрасли, где из-за резкого снижения рентабельности проектов и в следствии того трудностей развития бизнеса все чаще используются незаконные схемы денежных оборотов. К примеру, Тимидея Групп в январе 2015 г. подала на банкротство для избежания выплаты налогов.