9.12. Функции и операторы сетевых адресов#
9.12. Функции и операторы сетевых адресов #
Сетевые адреса IP-сети, типы cidr и inet,
поддерживают обычные операторы сравнения, показанные в
Таблица 9.1
а также специализированные операторы и функции, показанные в
Таблица 9.39 и
Таблица 9.40.
Любое значение cidr может быть неявно приведено к типу inet; поэтому операторы и функции, показанные ниже для работы с типом inet, также работают с значениями типа cidr. (Если существуют отдельные функции для типов inet и cidr, это означает, что поведение должно быть разным для двух случаев). Также разрешено приведение значения типа inet к типу cidr. При этом все биты справа от маски сети автоматически обнуляются, чтобы создать допустимое значение типа cidr.
Таблица 9.39. Операторы IP-адресов
Оператор Описание Пример(ы) |
|---|
Сеть строго содержится в сети? Этот оператор, а также следующие четыре, проверяют включение подсети. Они рассматривают только сетевые части двух адресов (игнорируя любые биты справа от маски сети) и определяют, является ли одна сеть идентичной или подсетью другой.
|
Содержится ли подсеть в подсети или равна ей?
|
Содержит ли подсеть строго подсеть?
|
Содержит ли подсеть или равна подсети?
|
Содержит ли одна подсеть другую или они равны?
|
Вычисляет побитовое отрицание.
|
Вычисляет побитовое И.
|
Вычисляет побитовое ИЛИ.
|
Добавляет смещение к адресу.
|
Добавляет смещение к адресу.
|
Вычитает смещение из адреса.
|
Вычисляет разницу между двумя адресами.
|
Таблица 9.40. Функции IP-адреса
Функция Описание Пример(ы) |
|---|
|
Создает сокращенный формат отображения в виде текста.
(Результат такой же, как и функция вывода
|
Создает сокращенный формат отображения в виде текста. (Сокращение состоит в удалении октетов, содержащих только нули, справа от маски подсети; дополнительные примеры приведены в Таблица 8.22).
|
|
Вычисляет широковещательный адрес для сети адреса.
|
|
Возвращает семейство адреса:
|
|
Возвращает IP-адрес в виде текста, игнорируя маску подсети.
|
|
Вычисляет маску хоста для сети адреса.
|
Вычисляет наименьшую сеть, которая включает обе заданные сети.
|
Проверяет, принадлежат ли адреса к одной IP-семье.
|
|
Возвращает длину маски подсети в битах.
|
|
Вычисляет сетевую маску для сети адреса.
|
|
Возвращает сетевую часть адреса, обнуляя все, что находится справа от маски подсети.
(Это эквивалентно приведению значения к типу
|
Устанавливает длину маски подсети для значения
|
Устанавливает длину маски подсети для значения
|
|
Возвращает полный IP-адрес и длину маски подсети в виде текста.
(Это дает тот же результат, что и явное приведение к типу
|
Подсказка
Функции abbrev, host и text в основном предназначены для предоставления альтернативных форматов отображения IP-адресов.
Типы MAC-адресов, macaddr и macaddr8,
поддерживают обычные операторы сравнения, показанные в
Таблица 9.1
а также специализированные функции, показанные в
Таблица 9.41.
Кроме того, они поддерживают побитовые логические операторы
~, & и |
(НЕ, И и ИЛИ), как показано выше для IP-адресов.
Таблица 9.41. Функции MAC-адреса