ipoe mode L3 не пропускает dhcp

IPoE related questions
Post Reply
TeCHNoiD
Posts: 10
Joined: 24 Nov 2016, 00:35

ipoe mode L3 не пропускает dhcp

Post by TeCHNoiD »

Собственно, сабж. На одном и том же сервере крутится accel (последний из git) и freeradius в качестве dhcp сервера.
Аксель настроен на работу в режиме Mode=L3+NAT и в целом все работает, но...
Опишу ситуацию:
клиент посылает dhcp-discovery->request с 0.0.0.0. получает от радиуса ip. далее аксель видит пакеты с этого ip и поднимает сессию. трафик идет, все ок.
потом у клиента заканчивается время лизы, он шлет dhcp-request для продления на локальный ip сервера юникастом (на тот, что DHCP-DHCP-Server-Identifier) или на броадкаст, но со своего ip-адреса при поднятой сессии, destination не принципиален) и вот тут начинается магия - пакет просто не долетает до радиуса (ни юникастом, ни броадкастом). то есть я его вижу в dhcpdump, но ответа на него нет. (радиус запущен в режиме дебага radiusd -X, там проблем точно нет)
если прибить аксель, или не давать ему поднимать сессию, то запросы естественно пролетают и все в ажуре.
при этом тот же самый локальный ip адрес сервера при поднятой сессии пингуется и отвечает на http запросы нормально, то есть с доступностью проблем нет.
дальше после 3х-4х запросов клиент думает что аренда истекла, сбрасывает ip, ждет 5 секунд, затем отправляет уже новый запрос с 0.0.0.0 на броадкаст, пакет пролетает, клиент снова получает свой адрес от радиуса и траф опять ходит. далее все по кругу.

я предполагал что при mode=L3 аксель не должен вмешиваться в dhcp по идее, или я не прав? или это фишка NAT'a 1:1?

пока решение вижу таким - тупо разнести dhcp-сервер и аксель на разные сервера. но все таки хотелось бы услышать мнение автора, или свежий коммит ;)
Post Reply