Личный кабинет    
Назад К началу Вперед Карта сайта Телефонные коды стран и городов Мира Анализатор тарифов Служб IP-Телефонии и Рейтинг

Разделы
Введение
Литература
Операторы
Оборудование
Анализатор
Сотрудничество
Печать карт
Новости
Опросник
Коды
Справка
Работа
Каталог
Хостинг
Личный кабинет

Реклама

Perl для IP-Телефонии (45 – Общая рассылка , часть 21)

предыдущая часть ««»» следующая часть

Теперь вызывается функция ioctl () с использованием функционального кода siocgifaddr, ей передается сокет и вновь созданная структуры ifreq. Если вызов функции ioctl () по каким-то причинам завершается неудачей, возвра­щается значение undef.

В ином случае функция ioctl () вернет затребованную информацию в структуре ifreq. Переменная $ifreq распаковывается с использованием формата ifreq_addr. Она возвращает имя интерфейса, обозначение его семейства адресов и сам адрес. Все прочие значения игнорируются, а адрес с помощью функции inet_ntoa () преобразуется в форму с четырьмя чиcлами, разделенными точками, и возвращается вызывающей процедуре.

Строки 46-77. Выборка широковещательного адреса, адреса назначения, аппаратного адреса и маски сети. Следующие несколько функций весьма похожи друг на друга, но они не запрашивают у операционной системы адрес интерфейса, а используют различные функциональные коды ioctl () для выборки широковещательного адреса, адреса назначения двухточечного соединения, аппаратного адреса и маски сети.

В некоторых из этих процедур выполняется небольшая дополнительная работа в целях исключения возможности возврата адреса 0.0.0.0; автор обнаружил это в некоторых системам Linux, опрашивая интерфейсы, которые не поддерживают определенный тип адресации (например, пытаясь получить широковещательный адрес для интерфейса петли обратной связи). Лучше вернуть значение undef, если адрес отсутствует, чем бессмысленное значение.

Строки 78-84. Возврат флажков интерфейса. Функция if_flags() инициализирует структуру ifreq, включая в нее имя требуемого интерфейса, а затем передает функции ioctl ()

с помощью функционального кода siocgifflags. В случае успешного выполнения результа, распаковывается с использованием формата ifreq_flags и флажки возвращаются вызы­вающей процедуре.

Строки 85-100. Выборка списка всех интерфейсов. Самой сложной является функция if_list (), которая возвращает список всех активных сетевых интерфейсов.

2015-07-05 12:44:01

это интересно
Каждый пользователь процессорных устройств рано или поздно сталкивался с играми. И с развитием планшетов и смартфонов, последнее время стали широко популярны игры мобильных приложений для Андроид. На сайте https://androidvip.net/games/ представлен богатый список игр разных направлений, установка которых не займет много времени.

предыдущая часть ««»» следующая часть


ДОКУМЕНТАЦИЯ VoIP


НОВОСТИ СВЯЗИ


РЕКОМЕНДУЕМ

 
[ стандарты | обзор | оборудование | анализатор | коды | новости | карта | партнерам | Мы ВКонтаке ]
Запрещается копировать материалы сайта без уведомления авторов.
С вопросами и предложениями обращайтесь со страницы контактов
Copyright c 1999-2024 IPTop.Net
 
IP-Телефония, Интернет Телефония, Компьютерная телефония