-
Similar Content
-
By Maerhekil
Распространённая проблемка, когда при падении сервера на котором развёрнут DHCP наступает неприятная ситуация в общении с пользователями. Довольно просто предотвратить данную ситуацию развёртыванием дублирующего DHCP на другом сервере в локальной сети. Что мы сейчас и проделаем, правда начнём просто с настройки, считая что у вас уже есть установленные два сервака на FreeBSD
Первичный сервер:
Для удобства дробим конфигурационный файл на несколько. У нас получается три файла с таким содержимым.
/usr/local/etc/dhcpd.conf :
option domain-name "mycompany.local"; option domain-name-servers 10.0.0.2, 10.0.0.3; option subnet-mask 255.255.255.0; default-lease-time 86400; max-lease-time 604800; ddns-update-style none; authoritative; subnet 10.0.0.0 netmask 255.255.255.0 { option routers 10.0.0.1; interface em0; pool { failover peer "mynetwork"; range 10.0.0.20 10.0.0.250; } } include "/usr/local/etc/dhcpd-primary"; include "/usr/local/etc/dhcpd-hold"; Что мы тут имеем в первом и так сказать главном файле конфигурации:
option domain-name "mycompany.local"; - Задаём доменное имя, которое клиенты будут использовать при запросах к DNS. Если имена разрешены.
option domain-name-servers 10.0.0.2, 10.0.0.3; - Собственно, адреса DNS серверов в сети.
option subnet-mask 255.255.255.0; - Сетевая маска локальной сети где будет находится DHCP сервер.
default-lease-time 86400; - Период времени по умолчанию в секундах, на который будет выданный адрес закреплён за устройством.
max-lease-time 604800; - Максимальный период времени в секундах, на который будет выданный адрес закреплён за устройством.
subnet 10.0.0.0 netmask 255.255.255.0 - Подсеть с её маской.
option routers 10.0.0.1; - Шлюз сети.
interface em0; - На каком интерфейсе слушать запросы и отвечать с которого.
Далее описание пула для выдачи адресов:
failover peer "mynetwork"; - название.
range 10.0.0.20 10.0.0.250; - диапазон адресов для выдачи клиентам.
Влючаем в конфиг другие файлы конфигурации:
include "/usr/local/etc/dhcpd-primary";
include "/usr/local/etc/dhcpd-hold";
Далее /usr/local/etc/dhcpd-primary :
failover peer "mynetwork" { primary; address 10.0.0.4; port 647; peer address 10.0.0.5; peer port 647; max-response-delay 60; max-unacked-updates 10; mclt 3600; split 128; load balance max seconds 3; } Это описание самой технологии failover, что мы имеем тут:
primary; - К какому серверу DHCP относится этот файл, грубо говоря :-) . В данном случае к первичному.
address 10.0.0.4; - Его адрес в сети
port 647; - Порт? :-)
peer address 10.0.0.5; - Адрес вторичного сервера в сети.
peer port 647; - Его порт.
max-response-delay 60; - Ожидание в секундах ответа первичным сервером от вторичного. По истечении считает его недоступным.
max-unacked-updates 10; - Непонятная хрень. Максимальное количество несанкционированных обновлений?
mclt 3600; - Время в секундах, по истечении которого продлевается или прекращается аренда без синхронизации.
split 128; - Нужно для балансировки.
load balance max seconds 3; - Время в секундах, по истечении балансировка прекращается.
Топаем дальше /usr/local/etc/dhcpd-hold . Это файл со статическими назначениями ip-адресов в соответствии с mac-адресами. Приведу только один пример:
host BLA-BLA { hardware ethernet FF:FF:FF:FF:FF:FF; fixed-address 10.0.0.81;} BLA-BLA - описание хоста
FF:FF:FF:FF:FF:FF - Mac-адрес сетевой карты
10.0.0.81 - Закреплённый ip-адрес
Ну в принципе с первичным сервером закончили.
Перейдём к вторичному.
/usr/local/etc/dhcpd.conf У нас немного меняются только две строчки:
include "/usr/local/etc/dhcpd-secondary"; include "/usr/local/etc/dhcpd-hold-nowrite"; Но это при условии, что у нас имя сетевого интерфейса такое-же, в данном случае em0 .
Далее /usr/local/etc/dhcpd-secondary
failover peer "mynetwork" { secondary; address 10.0.0.5; port 647; peer address 10.0.0.4; peer port 647; max-response-delay 60; max-unacked-updates 10; mclt 3600; load balance max seconds 3; } Ну и последний, создаём /usr/local/etc/dhcpd-hold-nowrite . Это тот-же dhcpd-hold, там ничего не меняется.
В принципе всё готово. Запускаем, и радуемся жизни. Но радость была недолгой ибо неудобно после каждой правки перезапускать два сервака ручками, мы сразу захотели автоматизацию. Но это уже совсем другая история.
Надеюсь ничего не упустил, у меня бывает. Если это так, пишите.
Удачи.
-
-
Recently Browsing 0 members
No registered users viewing this page.