Можливо, з якихось причин, вам може захотітися використовувати ваш наявний 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="UBxxxxxxxxxxxxxxxxxxxxxxxx" ;Скрипт, який використовується для рестарту isc-dhcpd. У загальних випадках можна не чіпати. RC_DHCPD=/usr/local/etc/rc.d/isc-dhcpd
Вносимо відповідні правки до /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.