10. Служба dhcprelay

Служба dhcprelay ПАК “Фортикс” является ретранслятором DHCP-сообщений.

Настройка службы dhcprelay осуществляется на следующем уровне конфигурации:

[edit service dhcprelay]

Служба работает в режиме IPv4, IPv6 или в обоих одновременно.

10.1. Служба dhcprelay в режиме IPv4

Служба считается настроенной и включённой по настройке enable, в случае если выполнена команда:

# set listen ipv4 server

10.1.1. Основные настройки

Для определения интерфейса, на котором ожидаются запросы DHCP-клиентов или DHCP-агентов, применяется команда:

# set listen ipv4 from interface <interface-name>

где <interface-name> – имя существующего интерфейса.

Для определения интерфейса, на котором ожидаются ответы DHCP-серверов или DHCP-агентов, применяется команда:

# set listen ipv4 to interface <interface-name>

где <interface-name> – имя существующего интерфейса.

По умолчанию – все широковещательные интерфейсы.

Для определения IP-адреса сервера DHCP применяется команда:

# set ipv4 server <address>

где <address> – IPv4-адрес в формате A.B.C.D.

10.1.2. Дополнительные настройки

Для добавления к DHCP-запросу идентификатора службы, состоящего из Circuit ID (имя аппаратного порта получения запроса) и Remote ID (MAC-адрес интерфейса получения запроса), применяется команда:

# set ipv4 send-relay-options

Данная настройка является DHCP Опцией 82 (настройка протокола DHCP, применимая для информирования DHCP-сервера о DHCP-ретрансляторе и номере порта, через которые был получен запрос; применяется при решении задач привязки IP-адреса к порту коммутатора и для защиты от атак с использованием протокола DHCP).

Для отбрасывания ответов DHCP-серверов, содержащих чужую Опцию 82 (идентификаторы в Опции 82, несоответствующие идентификаторам службы) применяется команда:

# set ipv4 drop-alien-replies

Для настройки максимального числа узлов, через которые может пройти DHCP-пакет до отбрасывания службой, применяется команда:

# set ipv4 max-hops <max-hops>

где <max-hops> – число от 0 до 255, по умолчанию – 10.

Для настройки максимального размера DHCP-пакета (вместе с Опцией 82), который служба может ретранслировать, применяется команда:

# set ipv4 max-packet-size <max-packet-size>

где <max-packet-size> – число байт, по умолчанию – 576.

Для определения действий по отношению к входящим DHCP-пакетам, которые уже содержат Опцию 82 (т.е. пришли от других relay-агентов), применяется команда:

# set ipv4 alien-opts append|replace|forward|discard

где

  • append – добавить свои идентификаторы к Опции 82;

  • replace – заменить своими идентификаторами уже имеющиеся в Опции 82 (по умолчанию);

  • forward – отправить Опцию 82 без изменений;

  • discard – отбросить чужую Опцию 82.

10.2. Служба dhcprelay в режиме IPv6

Служба считается настроенной и включённой по настройке enable, в случае если выполнены команды:

# set listen ipv6 from interface

и

# set listen ipv6 to interface

10.2.1. Основные настройки

Для определения интерфейса (и его адреса), на котором служба ожидает запросы клиентов или других ретрансляторов DHCPv6, применяется команда:

# set listen ipv6 from interface <interface-name> [ip <address>]

где

  • <interface-name> – имя существующего интерфейса;

  • <address> – IPv6-адрес в формате A:B:..:H.

Если IP-адрес в команде не задан, используется первый найденный не Link-local адрес интерфейса.

Для определения интерфейса (и его адреса), на который служба перенаправляет запросы клиентов или других ретрансляторов DHCPv6, применяется команда:

# set listen ipv6 to interface <interface-name> [ip <address>]

где

  • <interface-name> – имя существующего интерфейса;

  • <address> – IPv6-адрес в формате A:B:..:H.

Если IP-адрес в команде не задан, используется адрес FF02::1:2 (All_DHCP_Relay_Agents_and_Servers).

10.2.2. Дополнительные настройки

Для отправки DHCPv6-опции Interface-Id (идентификация интерфейса) применяется команда:

# set send-iface-id

Настройка по данной команде применяется также при наличии нескольких интерфейсов, на которых было получено сообщение от клиента.

Для определения максимального числа узлов, через которые может пройти DHCPv6-пакет до отбрасывания службой, применяется команда:

# set max-hops <max-hops-number>

где <max-hops-number> – число от 0 до 255, по умолчанию – 10.

10.3. Примеры

В данном подразделе приведён пример настройки сети, указанной на рис. 10.1.

Интерфейсы en0,en1 - обслуживают клиентскую сеть.

Интерфейсы en2,en3 - обслуживают сеть сервера.

Пример настройки dhcprelay

Рис. 10.1 Пример настройки dhcprelay

Минимальная настройка службы dhcp-relay на узле “DHCP-ретранслятор”:

# [edit service dhcp-relay]
# set ipv4 server 10.0.0.1
# set listen ipv4 from interface en1
# set listen ipv4 to interface en2
# set enable

Минимальная настройка службы dhcp на узле “DHCP-сервер”:

# [edit service dhcp]
# set listen ipv4 address 10.0.0.1
# set ipv4 shnet relay
# set ipv4 subnet 10.0.0.0/24 shnet relay
# set ipv4 subnet 192.168.0.0/24 shnet relay range 192.168.0.10 to 192.168.0.100
# set enable
# [edit]
# set router unicast ipv4 to 192.168.0.0/24 via gw 10.0.0.2

Последней командой задаётся маршрут в клиентскую сеть через узел DHCP-ретранслятора.