ABillS+FreeRADIUS+Accel-PPP выдают только один DNS

Однажды после установки ABillS + FreeRADIUS2 + Accel-PPP(ipoe) заметил что по DHCP клиенты получают только один DNS сервер.
Access-Accept от FreeRADIUS был такой:

Sending Access-Accept of id 1 to 127.0.0.1 port 57481
        Session-Timeout = 604800
        PPPD-Downstream-Speed-Limit = 51200
        Framed-IP-Netmask += 255.255.255.0
        Framed-IP-Netmask += 255.255.255.0
        Acct-Interim-Interval = 600
        DHCP-Domain-Name-Server += 8.8.8.8
        DHCP-Domain-Name-Server += 8.8.4.4
        PPPD-Upstream-Speed-Limit = 51200
        Framed-IP-Address = 172.20.20.20
Finished request 40.

Клиенты получали только второй DNS (8.8.4.4), в ABillS, в «Настройка>Сервер доступа>IP POOLs» было указано два DNS — 8.8.8.8,8.8.4.4.

Так как разработчик ABillS не знал в чем причина, то я прописал DNS в конфигурации /etc/accel-ppp.conf:

[dns]
dns1=8.8.8.8
dns2=8.8.4.4

И так как DNS из Access-Accept от FreeRADIUS имеет больше приоритет чем те что в конфигурации Accel-PPP, то я убрал их из всех IP POOLs SQL запросом:

update ippools SET dns='';

Если что, их-можно указать во всех IP POOLs так:

update ippools SET dns='8.8.8.8,8.8.4.4';

После этого в Access-Accept от FreeRADIUS не передавались DNS:

DHCP-Domain-Name-Server += 0.0.0.0
DHCP-Domain-Name-Server += 0.0.0.0

И Accel-PPP начал выдавать те что указаны в его конфигурации.

Замечу что когда DNS выдавались из IP POOLs биллинга, то в логах Accel-PPP при DHCPv4 Ack они отображались как:

<DNS 8.8.8.8> <DNS 8.8.4.4>

А когда начали выдаваться те что указаны в конфигурации Accel-PPP, то:

<DNS 8.8.8.8,8.8.4.4>

UPD: В новых версиях Accel-ppp эта проблема решена, можно передавать несколько DNS хоть так, хоть так.

Оставьте комментарий

Добавить комментарий