Перейти к публикации
iT4iT.CLUB
Maerhekil

Отказоустойчивоcть динамической настройки узлов с распределением нагрузки

Рекомендованные сообщения

Распространённая проблемка, когда при падении сервера на котором развёрнут 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, там ничего не меняется.

В принципе всё готово. Запускаем, и радуемся жизни. Но радость была недолгой ибо неудобно после каждой правки перезапускать два сервака ручками, мы сразу захотели автоматизацию. Но это уже совсем другая история.

Надеюсь ничего не упустил, у меня бывает. Если это так, пишите.

Удачи.

 

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: Maerhekil
      В прошлый раз мы совершили начальную настройку, в принципе всё что написано не претендует на исключительность и наверняка в каком-нибудь частном случае могут быть разные нюансы. Но, на то он и форум чтоб спросить и получить ответ, не так ли?Эта часть будет короткой ибо DHCP для внутренней сети настраивается очень легко и приятно на этом устройстве.
      Итак наше устройство является центральным маршрутизатором для нашей сети, ещё не полноценным но мы идём к этому, для этого следующим шагом поднимем на нём сервер динамической настройки узла.
      Поехали.
      Исключаем, на всякий случай несколько сетевых адресов из пула:
      home-cisco#conf t home-cisco(config)#ip dhcp excluded-address 192.168.1.1 192.168.1.10 home-cisco(config)#  
      И поднимаем свой пул адресов
      home-cisco(config)#ip dhcp pool LAN home-cisco(dhcp-config)#network 192.168.1.0 255.255.255.0 home-cisco(dhcp-config)#default-router 192.168.1.1 home-cisco(dhcp-config)#dns-server 8.8.8.8 home-cisco(dhcp-config)#end home-cisco#wr Building configuration... [OK] home-cisco#  
      Вот в принципе и всё, адресочки начнут выдаваться в диапазоне параметра network исключая первые десять адресов. Шлюз будет присваиваться исходя из параметра default-router, а DNS сервер исходя из параметра dns-server. Ваш Кэп.
      Мы закончили настройку простейшего DHCP на cisco.
  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×