Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »


4.1. Общие сведения об опции 82

Опция 82 протокола DHCP используется для того, чтобы проинформировать DHCP-сервер о том, от какого DHCP-ретранслятора и через какой его порт был получен запрос. Коммутатор с функцией DHCP-relay или DHCP-snooping добавляет опцию в DHCP-запросы от клиента и передает их серверу. DHCP-сервер, в свою очередь, предоставляет IP-адрес и другую конфигурационную информацию в соответствии с преднастроенными политиками на основании информации, полученной в заголовке опции 82. Коммутатор снимет заголовок опции с принятого от DHCP-сервера сообщения и передаст сообщение клиенту в соответствии с информацией о физическом интерфейсе, указанной в опции. Применение опции 82 прозрачно для клиента.

Сообщение DHCP может включать множество полей различных опций, опция 82 - одна из них. Она должна располагаться после других опций, но до опции 255.

Рисунок 42.1 - формат опции 82


Заголовок опции 82 может содержать несколько суб-опций. RFC3046 описывает 2 суб-опции Circuit-ID и Remote-ID.

4.2. Настройка добавления опции 82

  1. Включить добавление опции 82 DHCP relay;

  2. Включить добавление опции 82 DHCP snooping;

  3. Настроить атрибуты опции 82 DHCP relay на интерфейсе;

  4. Включить опцию 82 для DHCP сервера;

  5. Настроить формат опции 82 для DHCP Relay;

  6. Настроить разделитель;

  7. Настроить метод создания опции 82;

  8. Команды для диагностики опции 82;



  1. Включить добавление опции 82 DHCP relay:

Команда

Описание

ip dhcp relay information option

no ip dhcp relay information option

!  В режиме глобальной конфигурации

Включить опцию 82 для добавления DHCP relay

Выключить добавление опции 82 DHCP relay;


2. Включить добавление опции 82 DHCP snooping;

Команда

Описание

ip dhcp snooping information enable

no ip dhcp snooping information enable

!  В режиме глобальной конфигурации

Включить опцию 82 для добавления DHCP snooping

Выключить добавление опции 82 DHCP snooping;


3. Настроить атрибуты опции 82;

Команда

Описание

ip dhcp relay information policy {drop | keep | replace}


no ip dhcp relay information policy

!  В режиме конфигурирования интерфейса VLAN

Настроить режим политики при получении DHCP запроса, который уже содержит опцию 82: drop - запрос будет отброшен; keep - запрос будет передан без обработки; replace - поле опции 82 будет добавлено заново, после чего запросу будет передан серверу.

Восстановить значение по-умолчанию (replace)


ip dhcp snooping information option allow-untrusted [replace]

no ip dhcp snooping information option allow-untrusted

!  В режиме глобальной конфигурации

Разрешить передачу DHCP-запросов c добавленной опцией 82, полученные с недоверенных портов, replace - поле опции 82 будет добавлено заново, после чего запросу будет передан серверу.

Отбрасывать DHCP-запросы c добавленной опцией 82, полученные с недоверенных портов (по-умолчанию)

ip dhcp {snooping | relay} information option subscriber-id { standard | <circuit-id>}




no ip dhcp {snooping | relay} information option subscriber-id

!  В режиме конфигурирования интерфейса

Задать контекст <circuit-id> не длиннее 64 символов, передаваемый в качестве суб-опции Circuit-ID, добавляемой в DHCP-запросы, полученные с интерфейса. Возможно указать следующие ключи:

%h: hostname; %v: vlan-id; %M: local MAC в верхнем регистре; %m: local MAC, в нижнем регистре; %R: client MAC,в верхнем регистре; %r: client MAC , в нижнем регистре; %s: slotID; %p: portID; %i: client ip address

standard - стандартное имя VLAN и интерфейса (порта), например ”Vlan2+Ethernet1/0/12”.

Вернуть значение по-умолчанию (standard)

ip dhcp {snooping | relay} information option subscriber-id format {hex | acsii}

!  В режиме конфигурирования интерфейса

Задать формат опции 82, суб-опции Circuit-ID, добавляемой агентом DHCP-relay


4. Включить опцию 82 для DHCP сервера;

Команда

Описание

ip dhcp server relay information enable

no ip dhcp server relay information enable

!  В режиме глобальной конфигурации

Идентифицировать сервером коммутатора опцию 82.

Игнорировать сервером коммутатора опцию 82.


5. Настроить формат опции 82 для DHCP Relay;

Команда

Описание

ip dhcp {snooping | relay} information option subscriber-id format {hex | acsii | vs-hp}

!  В режиме глобальной конфигурации

Задать формат опции 82, суб-опции Circuit-ID

ip dhcp {snooping | relay} information option remote-id format {default | vs-hp}

!  В режиме глобальной конфигурации

Задать формат опции 82, суб-опции Remote-ID


6. Настроить разделитель;

Команда

Описание

ip dhcp {snooping | relay} information option delimiter [colon | dot | slash | space]

no ip dhcp {snooping | relay} information option delimiter

!  В режиме глобальной конфигурации

Задать разделитель каждого параметра суб-опций опции 82.

Восстановить значение по-умолчанию (slash)


7. Настроить метод создания опции 82;

Команда

Описание

ip dhcp {snooping|relay} information option self-defined remote-id {hostname | mac | string WORD}

no ip dhcp {snooping | relay} information option self-defined remote-id

!  В режиме глобальной конфигурации

Задать метод создания суб-опции Remote-ID опции 82


Восстановить значение по-умолчанию (mac)

ip dhcp {snooping | relay} information option self-defined remote-id format [ascii | hex]

!  В режиме глобальной конфигурации

Задать формат заданной пользователем суб-опции Remote-ID опции 82

ip dhcp {snooping | relay} information option self-defined subscriber-id {vlan | port | id (switch-id (mac | hostname)| remote-mac)| string WORD }

no ip dhcp {snooping | relay} information option self-defined subscriber-id

!  В режиме глобальной конфигурации

Задать метод создания суб-опции Circuit-ID опции 82


Восстановить значение по-умолчанию (vlan port)

ip dhcp {snooping | relay} information option self-defined subscriber-id format [ascii | hex]

!  В режиме глобальной конфигурации

Задать формат заданной пользователем суб-опции Circuit-ID опции 82


8. Команды для диагностики опции 82;

Команда

Описание

show ip dhcp relay information option

!  В привилегированном режиме

Отобразить информацию состоянии опции 82

debug ip dhcp {snooping | relay} packet

!  В привилегированном режиме

Отобразить информацию о пакетах, обработанных агентом DHCP relay или DHCP snooping.

4.3.Пример конфигурации опции 82

4.3.1. Пример конфигурации опции 82 для DHCP relay


Рисунок 42.2 - конфигурации опции 82 для DHCP relay


В приведенном на рисунке 42.2 примере коммутаторы уровня 2 Switch1 и Switch2 подключены к коммутатору 3-го уровня Switch3, который будет передавать сообщения от DHCP-клиента DHCP-серверу и обратно как агент DHCP relay. Если DHCP опция 82 отключена, DHCP-сервер не может распознать, к сети какого коммутатора, Switch1 или Switch2, подключен DHCP-клиент. В этом случае ПК, подключенные Switch1 и Switch2, получат адреса из общего пула DHCP-сервера. Если же DHCP опция 82 включена, Switch3 будет добавлять информацию о портах и VLAN в запрос от DHCP-клиента. Таким образом, DHCP-сервер сможет выделить адрес из двух разных подсетей, чтобы упростить управление.

Конфигурация коммутатора Switch3(MAC address is f8:f0:82:75:33:01):

Switch3(Config)#service dhcp
Switch3(Config)#ip dhcp relay information option
Switch3(Config)#ip forward-protocol udp bootps
Switch3(Config)#interface vlan 3
Switch3(Config-if-vlan3)#ip address 192.168.10.222 255.255.255.0
Switch3(Config-if-vlan2)#ip address 192.168.102.2 255.255.255.0
Switch3(Config-if-vlan2)#ip helper 192.168.10.88

Пример конфигурации ISC DHCP Server для Linux:


ddns-update-style interim

ignore client-updates;

class "Switch3Vlan2Class1" {

match if option agent.circuit-id = "Vlan2+Ethernet1/0/2" and option agent.remote-id=f8:f0:82:75:33:01;

}

class "Switch3Vlan2Class2" {

match if option agent.circuit-id = "Vlan2+Ethernet1/0/3" and option agent.remote-id=f8:f0:82:75:33:01;

}

subnet 192.168.102.0 netmask 255.255.255.0 {

option routers 192.168.102.2;

option subnet-mask 255.255.255.0;

option domain-name "example.com.cn";

option domain-name-servers 192.168.10.3;

authoritative;

pool {

range 192.168.102.21 192.168.102.50;

default-lease-time 86400; #24 Hours

max-lease-time 172800; #48 Hours

allow members of "Switch3Vlan2Class1";

}

pool {

range 192.168.102.51 192.168.102.80;

default-lease-time 43200; #12 Hours

max-lease-time 86400; #24 Hours

allow members of "Switch3Vlan2Class2";

}

}



После описанных выше настроек DHCP-сервер будет выделять адреса из диапазона 192.168.102.21 ~ 192.168.102.50 для устройств, подключенных к коммутатоу Switch2, и из диапазона 192.168.102.51192.168.102.80 для устройств, подключенных к коммутатоу Switch1.

4.3.2. Пример конфигурации опции 82 для DHCP snooping

Рисунок 42.3 - настройка опции 82 для DHCP snooping


Как показано на рисунке 42.3, коммутатор уровня 2 Switch1 c включенным DHCP-snooping передает DHCP-запросы серверу и ответы от DHCP-сервера клиенту. После того, как на коммутаторе будет включена функция добавления опции 82 для DHCP snooping, Switch1 будет добавлять информацию о коммутаторе, интерфейсе и VLAN клиента в сообщения запроса.

Конфигурация коммутатора Switch1(MAC address is f8:f0:82:75:33:01):

Switch1(config)#ip dhcp snooping enable
Switch1(config)#ip dhcp snooping binding enable
Switch1(config)#ip dhcp snooping information enable
Switch1(Config-If-Ethernet1/0/12)#ip dhcp snooping trust

Пример конфигурации ISC DHCP Server для Linux:


ddns-update-style interim;

ignore client-updates;

class "Switch1Vlan1Class1" {

match if option agent.circuit-id = "Vlan1+Ethernet1/0/3" and option agent.remote-id=f8:f0:82:75:33:01;

}

subnet 192.168.102.0 netmask 255.255.255.0 {

option routers 192.168.102.2;

option subnet-mask 255.255.255.0;

option domain-name "example.com.cn";

option domain-name-servers 192.168.10.3;

authoritative;

pool {

range 192.168.102.51 192.168.102.80;

default-lease-time 43200; #12 Hours

max-lease-time 86400; #24 Hours

allow members of "Switch1Vlan1Class1";

}

}


После описанных выше настроек DHCP-сервер будет выделять адреса из диапазона 192.168.102.51192.168.102.80 для устройств, подключенных к коммутатоу Switch1.

4.4. Решение проблем с конфигурацией опции 82

  • Убедитесь, что DHCP-relay и/или DHCP-snooping настроен правильно;

  • Опция 82 требует взаимодействия DHCP relay и DHCP сервера для выделения IP-адресов. DHCP-сервер должен установить политику выделения адресов основываясь на сетевой топологии DHCP-relay. Если в сети больше одного ретранслятора, уделите внимание политике передачи DHCP-запросов;

  • При поиске неисправностей подробная информация о процессе работы функции опции 82 DHCP-relay и DHCP-сервера может быть получена с помощью команд «debug ip dhcp relay packet» и «debug ip dhcp server packet».

  • No labels