Прошивку сразу поставил последнюю 4.35.B017. Из настроек сделал только следующее - создал MntVLAN+IP, клиентский стандартно на аплинке тэгом, абонентские антэгом и собственно функционал топика, остальное - дефолтные настройки.
Код:
enable dhcp_local_relay
config dhcp_local_relay option_82 remote_id default
config dhcp_local_relay option_82 circuit_id default
config dhcp_local_relay vlan Clients state enable
config dhcp_local_relay option_82 ports 1-24 policy replace
config dhcp_local_relay option_82 ports 25-28 policy keep
config address_binding dhcp_snoop max_entry ports 1-24 limit 1
config address_binding ip_mac ports 1-24 protocol ipv4
config address_binding ip_mac ports 1-24 ip_inspection enable
config address_binding ip_mac ports 1-24 arp_inspection strict
config address_binding ip_mac ports 1-24 allow_zeroip enable
enable address_binding dhcp_snoop
Итак, ситуация: клиент получает белый адрес, создается связка IP-MAC-Port, всё хорошо. Теперь мне надо отключить абонента (скажем, по балансу) путём выдачи ему другого адреса (фейкового), а делается это так - на сервере DHCP удаляется лиза и делается ресет порта (disable/enable). После реконнекта клиент шлет как обычно Request с прошлым адресом, на что получает Nack, далее по полной программе Discover и т.д. получает фейковый адрес.
Но вот ведь незадача. При отключении (во время реконнекта) порта связка IMPB переходит в состояние Inactive, при обратном включении переходит в Active, хотя на Request клиент получил Nack и ему далее выдался другой(!!!) IP. Казус - связка со старым адресом активировалась, а с новым не создалась, т.к.
max_entry ports 1-24 limit 1.
Ставлю на порту limit 2 - появляется новая связка с новым IP и старым маком, т.к. клиент тот же. Старая связка также переходит в состояние Active при реконнекте (время не обновилось, т.к. Ack не получен). Она похоже сразу при Request активируется не дожидаясь Ack ? Итого имеем 2 активные связки для одного мака.
Пробовал на старой прошиве 4.31.B008 - там ситуация чуть-чуть лучше - старая связка оставалась в состоянии Inactive, новая не создавалась при limit 1 и создавалась при limit 2.
По идее, при получении Nack связка на порту для пары IP-MAC, для которой получен отказ должна удаляться, чего не происходит и потому имеем такую ситуацию.
Пока будет идти переписка, может тогда сразу кто подскажет MIB для сбороса привязок IMPB (для моделей 3200 revA,B,C и 3028) чтобы использовать как временное решение .