Remote DHCP

Возможно по каким-то причинам, вам может захотеться использовать ваш существующий NAS на базе rscriptd в роли удаленного DHCP сервера. Возможно вам также захочется обойтись без громоздких тоннельных конструкций и прочих релеящих решений. На этот случай в Ubilling 1.0.2 появилась штатная механика для репликации конфигурации ISC-DHCPD с биллингового сервера. Например, в каких-то таких ситуациях, когда это вот все не L2 connected.

Базовая настройка

Скачиваем дистрибутив Ubilling и распаковываем Remote DHCP клиент в нужное нам место:

# cd /tmp/
# fetch http://snaps.ubilling.net.ua/ub_current.tgz
# tar zxvf ub_current.tgz
# cp -R docs/remotedhcp /usr/local/etc/
# ln -fs /usr/local/etc/remotedhcp/multinet /usr/local/etc/multinet

Редактируем в соответствии с нашими реалиями конфиг /usr/local/etc/remotedhcp/config.ini

;Ссылка на наш работающий Ubilling откуда мы будем реплицировать конфигурацию DHCP
UBILLING_URL="http://ourisp.com/billing/"
; Его серийник полностью.
UBILLING_SERIAL="UBxxxxxxxxxxxxxxxx"
;Скрипт используемый для рестарта isc-dhcpd. В общих случаях можно не трогать.
RC_DHCPD=/usr/local/etc/rc.d/isc-dhcpd

Далее устанавливаем собственно сервер isc-dhcpd на наш уже работающий (мы надеемся на это) NAS rscriptd.

# pkg install -y isc-dhcp44-server

И вносим соответствующие правки в /etc/rc.conf

dhcpd_enable="YES"
dhcpd_flags="-q"
dhcpd_conf="/usr/local/etc/multinet/dhcpd.conf"
dhcpd_ifaces="igb0"

Опционально можете пройтись еще по вот этой статье.

А что делать с биллингом?

Почти ничего. На биллинговом сервере включаем соответствующую опцию alter.ini:

REMOTEDHCP_ENABLED=1

Как это работает?

Просто добавляете в crontab -e что-то типа этого и радуетесь жизни.

*/5 * * * *     /usr/local/bin/php /usr/local/etc/remotedhcp/remotedhcp.php

Собственно убедиться, что все работает как ожидалось вы можете просто посмотрев глазами на то, реплицируются ли файлы конфигурации на вашем NAS-е:

# ls /usr/local/etc/multinet/

А также посмотрев глазками на то как запущен и запущен ли вообще ваш dhcpd.

remotedhcp.txt · Последние изменения: 2019/10/07 20:01 — nightfly
 
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki