Протокол обнаружения маршрутизаторов (Router Discovery Protocol) уведомляет узлы о маршрутизаторах, доступных в сети. Он является альтернативой статическим маршрутам, протоколам маршрутизации и перенаправлениям ICMP для узлов, которым просто требуется знать адрес маршрутизатора, используемого по умолчанию.
Протокол RDP реализован в виде сервера, работающего на маршрутизаторе, и клиента, работающего на узле. Работу серверной (маршрутизатор) и клиентской (узел) программы обеспечивает gated. Сначала рассмотрим оператор настройки сервера:
routerdiscovery server yes | no | on | off [{ traceoptions trace_options ; interface interface_list [minadvinterval time] [maxadvinterval time] [lifetime time] ; address interface_list [advertise | ignore] [broadcast | multicast] [ineligible | preference preference] ; } ] ;
Оператор routerdiscovery поддерживает трассировку - как для клиента, так и для сервера. Флаг трассировки state может быть использован для отележивания переходов состояний конечного автомата. Отслеживание пакетов обнаружения маршрутизаторов включается посредством оператора ICMP. Предложение interface определяет физические интерфейсы и параметры их работы. Только физические интерфейсы могут фигурировать в предложении interface. Адреса указываются в адресных предложениях, описанных ниже. Параметры interface:
maxadvinterval time - Указывает максимальный интервал времени для передачи уведомлений о маршрутизаторах. Не должен быть меньше 4 секунд и больше 30:00 минут. По умолчанию равен 10:00 минутам (600 секундам).
minadvinterval time - Указывает минимальный интервал времени для передачи уведомлений о маршрутизаторах. Не должен быть меньше 3 секунд и больше maxadvinterval. По умолчанию - 0,75 значения maxadvinterval.
lifetime time - Указывает срок действия адресов, полученных клиентами в уведомлении о маршрутизаторах. Должен быть больше maxadvinterval и не больше, чем 2:30:00 (два часа тридцать минут). По умолчанию 3 интервала maxadvinterval.
Предложение address определяет используемые IP-адреса и их параметры. Параметры предложения address:
advertise | ignore - advertise указывает, что адрес следует включать в уведомления о маршрутизаторах (поведение по умолчанию), ignore указывает, что адрес распространять не следует.
broadcast | multicast - broadcast указывает, что адрес следует включать в широковещательные уведомления о маршрутизаторах, поскольку некоторые системы сети не поддерживают многоадресную передачу. Таково поведение по умолчанию, если маршрутизатор не поддерживает многоадресную передачу.
multicast указывает, что адрес следует включать только в многоадресные уведомления. Если система не поддерживает многоадресную передачу, адрес не распространяется.
ineligible | preference preference - Задает значение приоритета для адреса, используемое для выбора маршрутизатора по умолчанию, preference - 32-разрядное знаковое целое. Чем выше значение, тем более предпочтительным является адрес. Обратите внимание: это не значение приоритета gated, это значение, распространяемое протоколом обнаружения маршрутизаторов.
Ключевое слово ineligible назначает шестнадцатеричное значение приоритета 80000000, что означает, что адрес не может использоваться в качестве адреса маршрутизатора по умолчанию. Узлы используют такие запрещенные адреса для проверки ICMP-перенаправлений.
Чтобы оператор routerdiscovery заработал, узлы должны иметь клиентскую часть routerdiscovery. Клиентская часть также реализуется gated и настраивается оператором routerdiscovery client.