Вспомогательный адрес UDP

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

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

Пример использования

[править | править код]

Интернет-протокол требует, чтобы каждому сетевому интерфейсу был назначен хотя бы один уникальный IP-адрес. Группы машин с одинаковыми адресами считаются частью одной логической подсети. Одним из способов назначения IP-адресов является DHCP, при котором адреса обычно выдаются DHCP-сервером, работающим на одном или нескольких хостах. Если один из этих компьютеров находится в той же подсети, что и его клиенты, сервер DHCP может отвечать на их широковещательные запросы DHCP и выдавать адрес. Но серверы DHCP могут быть размещены в другой подсети, и по умолчанию большинство маршрутизаторов не передают широковещательные сообщения узлам за пределами их собственной подсети.

Для решения этой проблемы в конфигурации маршрутизатора устанавливается вспомогательный адрес UDP для пересылки трафика широковещательной сети за пределы локальной подсети. Если клиент DHCP за пределами подсети сервера DHCP передает запрос адреса, именно помощник пересылает сообщение на сервер DHCP. Затем сервер выбирает адрес и отправляет клиенту однонаправленное сообщение, используя помощника для отправки сообщения обратно в подсеть клиента. Адрес резервируется на ограниченное время, пока DHCP-сервер ожидает ответа. Если клиент отвечает другим широковещательным сообщением, DHCP-сервер распространяет адрес. Вспомогательные адреса также можно использовать для пересылки другого UDP-трафика (например, BOOTP).

Реализация

[править | править код]

Первая реализация этого протокола была представлена Cisco в версии 10 их программного обеспечения маршрутизатора.[1] Это реализовано с помощью команд настройки маршрутизатора ip helper-address и ip forward-protocol.

ip helper-address

Чтобы включить пересылку широковещательных сообщений по протоколу пользовательских дейтаграмм (UDP), включая BOOTP, полученных на интерфейсе, используйте команду ip helper-address в режиме настройки интерфейса. Чтобы отключить пересылку широковещательных пакетов на конкретные адреса, используйте форму no этой команды.

  • Описание синтаксиса:
ip helper-address [vrf name | global] address [redundancy vrg-name]
no ip helper-address [vrf name | global] address [redundancy vrg-name]
vrf name
(Необязательно) Включает экземпляр маршрутизации и пересылки VPN (VRF) и имя VRF.
global
(Необязательно) Настраивает глобальную таблицу маршрутизации.
address
Широковещательная рассылка или адрес хоста, который будет использоваться при пересылке UDP-рассылок. Может быть больше одного вспомогательного адреса на интерфейс.
redundancy vrg-name
(Необязательно) Определяет имя группы VRG.

Особые условия

[править | править код]

Использование вспомогательных адресов UDP может вызвать проблемы с некоторыми конфигурациями сети на базе Windows. Для более подробной информации смотрите Microsoft.[2]

Согласно Microsoft, эти проблемы обусловлены тем, что порты 137,138 пересылаются по умолчанию на маршрутизаторах Cisco. Поскольку эти порты используются NetBIOS для определения конфигурации сети, добавленные широковещательные сообщения могут запутать систему.

  1. Cisco IOS IP and IP Routing Command Reference, Release 12.1 - IP Addressing Commands - Cisco Systems. Дата обращения: 15 января 2020. Архивировано из оригинала 2 февраля 2009 года.
  2. UDP broadcast forwarding by Cisco's IP Helper. Дата обращения: 15 января 2020. Архивировано 9 февраля 2014 года.