Отладка opt82. Настройка DHCP клиента и диагностика dhcp_restart.bat

Skip to end of metadata
Go to start of metadata

Организация постоянных пакетов с запросом адреса

в Windows создать bat файл с содержимым

:label1
ping -n 60 127.0.0.1
ipconfig /release
ipconfig /renew
goto label1

В том случае если при использовании данного bat файла постоянно поступают сообщения типа:
DHCPDISCOVER ...
DHCPOFFER ...
DHCPDISCOVER ...
DHCPOFFER ...

Необходимо использовать следующий bat файл, где interface name это имя сетевого подключения
(Внимание данный файл необходимо запускать от имени Администратора)

:label1
ping -n 60 127.0.0.1
netsh interface set interface name="Подключение по локальной сети" admin=DISABLED
netsh interface set interface name="Подключение по локальной сети" admin=ENABLED
goto label1

Отладка

Шаг 1. Настраиваем релей на коммутаторе

Шаг 2. Временно для отладки, в менеджере тестовому абоненту ставим привязку по MAC. Галочку opt82 НЕ ставим. Эту опцию поставим после того как отладим прием opt82 опций от коммутатора.

Шаг 3. Пытаемся получить адрес тестовым абонентом по мак привязке.

Шаг 4. Смотрим запрос адреса в логе

tail -f /var/log/boot

Если видим

Aug 3 14:25:59 dhcpd: DHCPDISCOVER from 90:2b:34:14:75:48 via Leth1: network ISC: no free leases

Значит релей не настроен или настроен неверно.
При правильной настройке релея запрос будет приходить от ip адреса коммутатора(например 192.168.0.35):

Aug 3 14:25:59 dhcpd: DHCPDISCOVER from 90:2b:34:14:75:48 via 192.168.0.35: network ISC: no free leases

Примечание: Если в логе запросов нет, значит проблема сетевая, т.е. широковещательный сегмент не включает в себя вашего тестового абонента.

В этом случае анализируем пакеты на предмет использования релея на коммутаторе:

tcpdump -nvei any port 67 or port 68

Вывод вида:

tcpdump: WARNING: Promiscuous mode not supported on the "any" device
tcpdump: listening on any
12:47:02.633297 B 0:e:5e:a:ef:42 ip 394: 0.0.0.0.68 > 255.255.255.255.67: [no cksum]  xid:0xb2a4df25 [|bootp] (DF) (ttl 32, id 28219, len 378)
12:47:03.178477 B 90:2b:34:14:75:48 ip 344: 0.0.0.0.68 > 255.255.255.255.67:  xid:0x99b6d10d flags:0x8000 [|bootp] (ttl 128, id 14097, len 328)
12:47:06.178208 B 90:2b:34:14:75:48 ip 344: 0.0.0.0.68 > 255.255.255.255.67:  xid:0x99b6d10d secs:768 flags:0x8000 [|bootp] (ttl 128, id 14107, len 328)
12:47:15.178663 B 90:2b:34:14:75:48 ip 344: 0.0.0.0.68 > 255.255.255.255.67:  xid:0x99b6d10d secs:3072 flags:0x8000 [|bootp] (ttl 128, id 14127, len

Говорит о том, что адрес запрашивается без использования релея, броадкастом.
При верно настроенном релее пакеты будут приходить юникастовые от ip адреса коммутатора на ip адрес сервера.

Шаг 5. Далее вы можете попробовать самостоятельно определить параметры парсинга opt82.
В дистрибутив изначально внесено несколько разновидностей парсинга: D-link, SNR, Eltex, RAISECOM. Посмотреть их можно через менеджер в разделе Оборудование -> Типы коммутаторов.
Там же можно создать новый тип для вашего оборудования, который всегда будет в вашей БД.

При расшифровке поля OPT82 во время запроса адреса, в логе вы увидите следующее:

May  6 11:33:19 dhcpd: RAW:: Lease for 12.13.14.15 agent.circuit-id txt=GEPON xpon 2 243 0 4094 0
May  6 11:33:19 dhcpd:  agent.circuit-id bin8=71 69 80 79 78 45 75 65 84 45 84 69 76 69 67 79 77 45 56 88 32 120 112 111 110 32 50 32 50 52 51 32 48 32 52 48 57 52 32 48
May  6 11:33:19 dhcpd: PARS_DLINK:: Lease for 12.13.14.15 SWIP=12.13.14.8 VLAN=18245 PORT=20013
May  6 11:33:19 dhcpd: PARS_SNR2940:: Lease for 12.13.14.15 SWIP=12.13.14.8 VLAN=18245 PORT=19265
May  6 11:33:19 dhcpd: PARS_ELTEX_LTE2:: Lease for 12.13.14.15 SWIP=12.13.14.8 VLAN=8 PORT= xp
May  6 11:33:19 dhcpd: PARS_ELTEX_512:: Lease for 12.13.14.15 SWIP=12.13.14.8 VLAN=2 PORT=243
May  6 11:33:19 dhcpd: DHCPDISCOVER from a8:f9:4b:02:bf:46 via 12.13.14.8

Зная порт, свич и vlan тестовой машины можно определить какой тип парсера справился с расшифровкой поля opt82. После этого, если в в разных парсерах вы нашли верные значения порт, свич и vlan, вы можете создать свой тип коммутатора.

Примечание:  Нельзя заводить название коммутатора через символ "-". Такой символ мешает верной работе парсинга.

Если вам непонятен шаг 5 или требуется помощь переходите к шагу 6.

Шаг 6. При возникновении вопросов обратитесь в техническую поддержку для помощи в настройке разбора полей opt82.

Специалистам технической поддержки в заявке нужно будет сообщить:

- id абонента;

- vlan и порт в которые он включен на коммутаторе;

- В идеале сообщать точную модель и марку коммутатора а также версию прошивки.

Примечание: при настройке обратите внимание, чтоб пул адресов из которого вы отдаете адреса по dhcp не был зарезервирован для ручной раздачи.

Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.