Есть проблема, не могу решить, возможно кто-то уже столкнулся и есть ответы.
DES3526, fw 5.01-b60, 6.00-b23, 6.00-b26
настроено 2 VLAN - клиенты в дефолтном, управление отдельно. В управляющей сети поднят ISC DHCP сервер. Включены dhcp snooping (создает связки), dhcp relay (релеит запросы в управляющую сеть), dhcp local relay (давит лишние броадкасты).
Все вроде бы ничего на первый взгляд. При включении клиента идет запрос, получение, создается связка, все ОК. Если клиент по истечении lease time запросил продление адреса, оно проходит, время аренды в таблице обновляется. Далее приключения. Посылаем комп клиента в сон, потом будим. Проснувшийся комп запрашивает адрес, получает его, а в таблице коммутатора lease time не обновляется! Легко повторяется в linux: даем команду dhclient3 eth0. Все отлично, адрес получен, на коммутаторе не обновилось! Таймер продолжает тикать. Получается рассинхронизация времени аренды, которое имеет клиент и времени, которое в коммутаторе. И так как у клиента оно больше, то по истечении оного на коммутаторе адрес благополучно попадает в блок. Включение/выключение dhcp local relay дела никак не меняет, разве что при включенной опции широковещательные запросы не дублируются в сеть.
Разбор wireshark ом, клиент linux. (с виндой могу потом попробовать, но думаю, что все будет точно так же, симптомы абсолютно идентичные)
Правильный случай:
REQUEST от адреса клиента на адрес сервера. Коммутатор подхватывает, ретранслирует и отвечает сам. Все ОК. lease time свежее.
Неправильный случай:
REQUEST от адреса 0.0.0.0 на 255.255.255.255. Отвечает коммутатор. Клиенту адрес продляется, а на коммутаторе время прежнее.
Что не так? Подскажите
|