ISC DHCP — DHCP-сервер.

Установка, настройка, эксплуатация.

Модератор: ROOT

ISC DHCP — DHCP-сервер.

Сообщение ROOT » 07 май 2024, 13:09

Оглавление


Темы
 Протокол DHCP 
 ISC DHCP — один из самых популярных DHCP-серверов 
 Отказоустойчивость DHCP 
 Что такое опция 82 DHCP? 
 Выдача IP-адресов определённому диапазону MAC-адресов 
Дополнительные материалы
BIND — DNS-сервер
DIG — Диагностика DNS-серверов
Dnsmasq — DNS, DHCP, TFTP-сервер


 Протокол DHCP 
DHCP (Dynamic Host Configuration Protocol) — это сетевой протокол, позволяющий автоматически настраивать IP-адреса компьютеров и других устройств в компьютерной сети. DHCP упрощает процесс настройки и управления сетевыми устройствами, позволяя им автоматически получать необходимые сетевые параметры. Используемые поты — 67,68/UDP.
Основное назначение DHCP — облегчить администрирование сети и предотвратить конфликты IP-адресов. При подключении устройства к сети, оно отправляет запрос на DHCP сервер, который выделяет уникальный IP-адрес и другие настройки из доступного пула адресов.
  • Запросы клиента и ответы сервера DHCP делятся на несколько этапов:
  • Discovery (Обнаружение 67/UDP) — клиент отправляет широковещательный DHCP запрос для поиска DHCP сервера.
  • Offer (Предложение 68/UDP) — сервер отвечает клиенту предложением IP-адреса и других настроек.
  • Request (Запрос 67/UDP) — клиент принимает предложение и отправляет запрос на подтверждение.
  • Acknowledgement (Подтверждение 68/UDP) — сервер подтверждает выбор клиента и устанавливает соединение согласно полученным настройкам.
Протокол DHCP значительно упрощает жизнь сетевым администраторам, обеспечивая быстрое назначение IP-адресов устройствам и легкую конфигурацию в сети.
 ISC DHCP — один из самых популярных DHCP-серверов 
Серверы DHCP являются одним из важнейших элементов сетевой инфраструктуры любого размера,и их правильное функционирование-залог стабильной работы сети. В этой статье показано, как настроить такой сервер на базе ISC DHCP на платформе Linux. ISC DHCP - один из самых популярных пакетов DHCP-серверов для Linux и Unix-подобных систем, простой в настройке и ресурсоэффективный.
Рассмотрим некоторые параметры для не сложной конфигурации сервера DHCP
Код: выделить все
# Общие параметры для всех поддерживаемых сетей...
# Объявляем общую зону и указываем сервера DNS
option domain-name "company.org";
option domain-name-servers ns1.company.org, ns2.company.org;
# Указывем дефолтное и максимальное время аренды
default-lease-time  86400; # СУТКИ
max-lease-time 259200; #3 ДНЯ

# Используйте эту опцию для включения/отключения динамического обновления dns в глобальном масштабе.
#ddns-update-style none;

# Если этот DHCP-сервер является официальным DHCP-сервером локальной сети, директиву authoritative не комментировать.
authoritative;

# Используйте эту опцию для измениения уровня журналирования
log-facility local7;

# В этой подсети не будет предоставляться никаких услуг, но ее объявление помогает DHCP-серверу понять топологию сети.
subnet 10.152.187.0 netmask 255.255.255.0 {
}

# Это очень базовое объявление подсети.

subnet 10.254.239.0 netmask 255.255.255.224 {
  range 10.254.239.10 10.254.239.20;
  option routers rtr-239-0-1.company.org, rtr-239-0-2.company.org;
}

# Конфигурация для внутренней подсети.
subnet 10.5.5.0 netmask 255.255.255.224 {
  range 10.5.5.26 10.5.5.30;
  option domain-name-servers ns1.internal.company.org;
  option domain-name "internal.company.org";
  option routers 10.5.5.1;
  option broadcast-address 10.5.5.31;
  default-lease-time 600;
  max-lease-time 7200;
}

# Хосты, требующие специальных параметров конфигурации, могут быть перечислены в директиве host.
# Если адрес не указан, он будет выделен динамически (если это возможно), но информация о конкретном хосте все равно будет
# получена из объявления хоста. Для хостов также можно указать фиксированные IP-адреса. Эти адреса также не должны быть
# указаны как доступные для динамического назначения. Хосты, для которых указаны фиксированные IP-адреса, могут загружаться
# с помощью BOOTP или DHCP. Хосты, для которых не указан фиксированный адрес, могут загружаться только с помощью DHCP,
# если в подсети, к которой подключен BOOTP-клиент, нет диапазона адресов с установленным флагом dynamic-bootp.
host passacaglia {
  hardware ethernet 0:0:c0:5d:bd:95;
  filename "vmunix.passacaglia";
  server-name "toccata.company.com";
  fixed-address passacaglia.company.com;
}

# Вы можете объявить класс клиентов и затем распределить адреса на его основе. В примере ниже показан случай, когда все
# клиенты определенного класса получают адреса в подсети 10.17.224/24, а все остальные клиенты получают адреса в подсети 10.0.29/24.

class "foo" {
  match if substring (option vendor-class-identifier, 0, 4) = "SUNW";
}

shared-network 224-29 {
  subnet 10.17.224.0 netmask 255.255.255.0 {
    option routers rtr-224.company.org;
  }
  subnet 10.0.29.0 netmask 255.255.255.0 {
    option routers rtr-29.company.org;
  }
  pool {
    allow members of "foo";
    range 10.17.224.10 10.17.224.250;
  }
  pool {
    deny members of "foo";
    range 10.0.29.10 10.0.29.230;
  }
}



 Отказоустойчивость DHCP 
Один из способов обеспечить отказоустойчивость — создать структуру, состоящую из двух серверов. В нормальном режиме эти два сервера выполняют балансировку нагрузки, а если один из них становится недоступным, все клиентские запросы обслуживаются на другом сервере.
Отказоустойчивость DHCP на базе ISC DHCP (Internet Systems Consortium Dynamic Host Configuration Protocol) можно обеспечить с помощью настройки нескольких DHCP серверов, работающих в режиме группы с характеристиками failover. Это позволяет обеспечить непрерывность обслуживания клиентов в случае отказа одного из серверов.

Пример конфигурации для настройки отказоустойчивого DHCP на базе ISC DHCP:
Установить ISC DHCP на двух серверах (назовем их dhcp-server1 и dhcp-server2).
Код: выделить все
dnf install dhcp-server

Настройка DHCP серверов:

На dhcp-server1 правим конфигурацию /etc/dhcp/dhcpd.conf:
Код: выделить все
failover peer "dhcp-failover" {
  primary;
  address 192.168.1.1;
  port 520;
  peer address 192.168.1.2;
  peer port 520;
  max-response-delay 30;
  max-unacked-updates 10;
  load balance max seconds 3;
  mclt 1800;
  split 128;
}

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.10 192.168.1.100;
  option routers 192.168.1.1;
}

pool {
  failover peer "dhcp-failover";
  deny dynamic bootp clients;
}

На dhcp-server2 правим конфигурацию /etc/dhcp/dhcpd.conf:
Код: выделить все
failover peer "dhcp-failover" {
  secondary;
  address 192.168.1.2;
  port 520;
  peer address 192.168.1.1;
  peer port 520;
  max-response-delay 30;
  max-unacked-updates 10;
  mclt 1800;
  split 128;
}

subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.10 192.168.1.100;
  option routers 192.168.1.1;
}

pool {
  failover peer "dhcp-failover";
  deny dynamic bootp clients;
}

Перезапустите оба DHCP сервера для применения изменений конфигурации.
Теперь при такой настройке, если один из серверов (dhcp-server1 или dhcp-server2) выйдет из строя, другой сервер автоматически продолжит обслуживание DHCP клиентов без прерывания.


 Что такое опция 82 DHCP? 
Для сетевых инженеров, занимающихся сложными конфигурациями и вопросами безопасности, Опция 82 DHCP оказывается ценным инструментом. Давайте рассмотрим его назначение, функциональность и преимущества при развертывании сети.
Понимание DHCP и агентов ретрансляции
приходят агенты ретрансляции DHCP. Эти устройства-посредники пересылают DHCP-сообщения между клиентами и серверами, расположенными в разных подсетях.
Хотя агенты ретрансляции выполняют важную роль, в базовом протоколе DHCP отсутствует информация о физическом местоположении клиента в сети. Это может быть проблематично по нескольким причинам:
  • Безопасность: Злоумышленники могут подменять IP- или MAC-адреса, чтобы получить несанкционированный доступ к сети.
  • Политики назначения IP-адресов: В сетях часто применяются политики назначения IP-адресов в зависимости от местоположения (например, назначение определенных диапазонов устройствам в определенной VLAN).

Описание опции 82 DHCP
Опция 82 DHCP, также известная как "Опция информации агента ретрансляции", решает эти проблемы, предоставляя контекст для запросов DHCP. Когда клиент DHCP отправляет запрос через агента ретрансляции, агент вставляет опцию 82 в заголовок пакета. Эта опция содержит два подварианта:
  • Идентификатор цепи: Идентифицирует самого агента ретрансляции, обычно используя его MAC-адрес или IP-адрес.
  • Remote ID: определяет точку подключения клиента к сети. Это может быть номер порта коммутатора, идентификатор VLAN или другой идентификатор.
Преимущества использования Опция 82 DHCP
Здесь перечислены основные преимущества развертывания Опция 82 DHCP:
  • Повышение безопасности сети: Предоставляя дополнительный контекст для клиентских запросов, опция 82 помогает предотвратить попытки подмены и укрепляет общую безопасность сети.
  • Гибкие политики назначения IP-адресов: Сетевые инженеры получают детальный контроль над распределением IP-адресов в зависимости от местоположения клиента, что позволяет эффективно сегментировать сеть.
  • Улучшенный мониторинг и устранение неполадок в сети: Журналы DHCP становятся более информативными благодаря включению данных о местоположении клиента, что упрощает поиск и устранение неисправностей и управление сетью.
Заключение
Опция 82 DHCP действует как мост между агентами ретрансляции DHCP и серверами, предоставляя ценную информацию о местоположении клиента. Используя эту информацию, сетевые инженеры могут усилить безопасность сети, реализовать политику назначения IP-адресов и упростить задачи управления сетью. По мере роста сложности сети опция 82 DHCP становится ценным инструментом в арсенале сетевого инженера.


 Выдача IP-адресов ограниченному диапазону MAC-адресов 
Чтобы настроить ISC DHCP-сервер для выдачи IP-адресов ограниченному диапазону MAC-адресов, можно использовать директиву class для создания класса клиентов с определёнными MAC-адресами. Затем вы можете использовать директиву subnet для назначения IP-адресов из определённого диапазона. Вот пример конфигурации:
Код: выделить все
# Определяем класс для MAC-адресов, начинающихся с 08:00:27
class "special-clients" {
    match if substring(hardware, 1, 3) = 08:00:27;
}

# Настройка подсети
subnet 195.0.1.0 netmask 255.255.255.0 {
    # Диапазон IP-адресов по умолчанию (может быть пустым)
    range 195.0.1.10 195.0.1.20;
 # Настройка для класса "special-clients"
    pool {
        allow members of "special-clients";
        range 195.0.1.50 195.0.1.60;
    }
   
    option routers 195.0.1.254;
    option subnet-mask 255.255.255.0;
    option domain-name-servers 8.8.8.8, 8.8.4.4;
}


В этом примере:
  • Класс special-clients соответствует устройствам, у которых MAC-адрес начинается с 08:00:27.
  • Для устройств из этого класса выделяется диапазон IP-адресов от 195.0.1.50 до 195.0.1.60.
  • Остальные устройства могут получать IP-адреса из диапазона от 195.0.1.10 до 195.0.1.20.
Не забудьте перезапустить службу DHCP после внесения изменений в конфигурацию, чтобы они вступили в силу.
Администрирование Fedora Linux + настройка сети и прочая IT-Ботва


Для желающих поддержать
Карта SB: 5469 4009 6510 2267


Лучше ужасный конец, чем ужас без конца!
Аватар пользователя
ROOT
Администратор
 
Сообщений: 432
Зарегистрирован: 01 авг 2011, 09:36
Откуда: Моск. обл., г. Железнодорожный

Вернуться в Fedora

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron