Как получить dhcp linux

Настройка DHCP-сервера в Linux

Протокол динамической конфигурации узлов (Dynamic Host Configuration Protocol, DHCP) — это сетевой протокол, используемый для автоматического получения узлами IP-адресов и сетевой конфигурации с сервера.

IP-адрес, выделенный DHCP-клиенту DHCP-сервером, находится в «аренде», время аренды может отличаться в зависимости от того, сколько времени клиенту требуется соединение или конфигурация DHCP.

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

  • После загрузки подключенный к сети клиент (на котором настроено использование DHCP) отправляет DHCP-серверу пакет DHCPDISCOVER.
  • Получив пакет запроса DHCPDISCOVER, DHCP-сервер отвечает пакетом DHCPOFFER.
  • Клиент принимает пакет DHCPOFFER и отправляет серверу пакет DHCPREQUEST, подтверждая готовность принять сетевую конфигурацию, предоставленную в пакете.
  • Получив от клиента пакет DHCPREQUEST, сервер отправляет пакет DHCPACK, который разрешает клиенту использование выделенного IP-адреса.

В данном руководстве мы рассмотрим настройку DHCP-сервера в Ubuntu/Debian Linux, но большенство настроек будет работать и в других дистрибутивах. Для получения административных привилегий все команды будут выполняться через sudo.

Шаг 1: Установка DHCP-сервера

1. Для установки пакета DCHP-сервера, ранее известного как dhcp3-server, нужно выполнить следующую команду:

2. После завершения установки отредактируйте файл /etc/default/isc-dhcp-server для определения интерфейсов, которые будет использовать DHCPD для обработки DHCP-запросов, при помощи опции INTERFACES.

Например, если вам нужно, чтобы демон DHCPD прослушивал eth0, задайте следующее значение:

Для этого сетевого интерфейса нужно настроить статический IP-адрес.

Шаг 2: Настройка DHCP-сервера

3. Основной файл конфигурации DHCP — /etc/dhcp/dhcpd.conf, в него нужно внести всю информацию, отправляемую клиентам.
В файле конфигурации DHCP есть два типа данных:

  • параметры – указывают, как выполнять задание (например, на какое время выделять адрес), выполнять ли его вообще (например, выделять ли адреса неизвестным клиентам) или какие параметры сетевой конфигурации отправлять DHCP-клиенту.
  • декларации – определяют топологию сети, описывают клиентов и предоставляемые им адреса, или применяют группу параметров к группе деклараций.

4. Для определения настроек DHCP-сервера откроем и отредактируем файл конфигурации:

Установите в начале файла следующие глобальные параметры, они будут действовать для всех указанных ниже деклараций (измените их в соответствии с вашими задачами). Это имя домена domain-name, имена DNS-серверов domain-name-servers, время аренды по умолчанию в секундах default-lease-time (если клиент не запросил его сам), максимальное время аренды в секундах max-lease-time и параметр authoritative, означающий «авторитетность» сервера в сегменте сети. Данный параметр нужен на тот случай, если клиент запросит неправильный IP-адрес — в этом случае сервер ответит ему отказом и предложит получить новый адрес.

Обратите внимание, что перед некоторыми параметрами указано слово option, а перед некоторыми — нет. Это слово задает параметры, которые передаются клиенту в сетевой конфигурации.

5. Теперь нужно указать подсеть, в нашем примере мы будем использовать DHCP в локальной сети 192.168.10.0/24.

Читайте также:  Free cleaner download windows

Здесь мы использовали следующие параметры:

routers — IP-адрес маршрутизатора по умолчанию
subnet-mask — маска подсети
domain-search — имя домена
domain-name-servers — имена DNS-серверов
range — диапазон IP-адресов, выделяемый клиентам (можно указывать несколько диапазонов, но обязательно указать хотя бы один)

Шаг 3: Настройка статических IP-адресов для машин клиентов

6. Для выделения конкретным клиентам фиксированного (статического) IP-адреса нужно добавить в файл конфигурации секции следующего вида, где явно указаны MAC-адрес и статически выделяемый IP-адрес:

7. Запустим службу DHCP и установим ее автоматический запуск при загрузке:

8. Далее нужно создать правило для службы DHCP в брандмауэре (Демон DHCPD прослушивает UDP-порт 67):

Шаг 4: Настройка машин клиентов

9. Теперь можно настроить клиентские компьютеры в сети для автоматического получения IP-адресов от DHCP-сервера.

Отредактируйте файл конфигурации интерфейса Ethernet на клиентской машине (обратите внимание на имя/номер интерфейса):

Укажите следующие опции:

Сохраните и закройте файл, а затем перезапустите сетевые службы или перезагрузите систему:

Если все настроено правильно, клиентская машина должна автоматически получать IP-адреса от DHCP-сервера.

Настройка DHCP-сервера завершена. Более подробную информацию о dhcpd и dhcpd.conf с описанием всех возможных опций можно получить в соответствующих man-страницах:

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

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

Устанавливаем DHCP:

Производим настройку — прежде всего, указываем параметры сети с которой будет работать сервер

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

subnet 192.168.11.76 netmask 255.255.255.0 <
range 192.168.11.71 192.168.11.75;
option domain-name-servers 192.168.11.76;
option domain-name-servers «server-gu.ru»;
option routers 192.168.11.11;
option broadcast-address ;
default-lease-time 7200;
max-lease-time 7200;
>

range — дипазон из которого будут динамически выдаваться адреса. Два указанных адреса в диапазон также включаются.
option domain-name-servers, option domain-name-servers — здесь приводятся данные сервера DNS, сконфигурированного на данной машине в рамках одной из предыдущих статей.

При использовании нескольких option domain-name-servers IP-адреса разделяются запятой.

Далее необходимо раскомментировать строку #authoritative;

Сделать это нужно после того как другой DHCP сервер (на роутере) выключен. После перезапуска службы DHCP сервер сможет отвергать запросы на повторное получеине IP-адресов и предлагать свои если использовавшиеся ранее адреса для выдачи более недоступны.

Перезапуск службы в продакшн довольно безопасен поскольку уже выданные адреса выдут выданы вновь при истечении срока lease — информация о них записывается во временные файлы.

Проверяем выдался ли адрес на машине из локальной сети

В командной строке пишем:

Видим, что ПК использует адрес за пределами диапазона, предусмотренного конфигурацией DHCP сервера — следовательно, он был выдан ранее роутером

Настройка совместной работы DHCP и DNS

Цель — обеспечить корректную работу DNS при выдаче машине нового адреса посредством DHCP (обычно для серверов используются статические IP адреса, однако необходимость в подобных настройках возникнуть может).

Как мы добьемся поставленной цели:

  1. Сгенерируем ключ, который позволит BIND принимать изменения
  2. Обновим конфигурационные файлы BIND и DHCPd чтобы пакеты могли взаимодействовать с ключом
  3. Убедимся в том, что BIND в состоянии писать информацию в собственные файлы

Трудность, которая появляется при подобной конфигурации — содержимое файлов DNS зон менять «руками» становится невозможно.

Читайте также:  Обновление драйверов windows 10 топ

BIND предоставляет возможность произвести подобную настройку посредством утилиты RNDC

Ключ — «shared key» — доступен в файле /etc/bind/dndc.key, также мы можем создать свой ключ.

Предварительно смотрим помощь по утилите:

Ключ создан, идем в конфигурацию пакета и добавляем строку с include:

include «/etc/bind/dhcpd.key»
zone»server-gu.ru» <
type master;
file «/var/cache/bind/server-gu.ru.zone»;
allow-update < key «dhcp»; >;
>

Строкой, в которой указан путь к server-gu.ru.zone мы сменили расположение конфига поскольку в /etc/bind пользователь BIND писать информацию не может, а динамическое обновление файлов это подразумевает.

На каталог /var/cache/bind программный пакет, по умолчанию, имеет права r/w.

Те же две строки следует скорректировать/добавить для зоны обратного преобразования.

Перемещаем конфигурационный файл:

Проверяем наличие прав на запись и меняем пользователя на bind

В случае трудностей проверяем /var/log/deamon.log

Сервис перезапустился, проверяем

Поскольку DHCP также работает от имени одноименного пользователя — потребуется дополнительно разрешить получать доступ к ключу.

Настройка утилиты AppArmor для корректной работы DHCP

AppArmor — программное средство защиты файлов от изменения и доступа на уровне операционной системы.
Сейчас ограничимся тем, что убедимся, что пакет настроен для динамического обновления DHCP.

Необходимо добаввить в один из конфигурационных файлов строку с указанием на файл ключа:

Производим финальную настрйоку DHCP — редактируем строку с ddns-update-style и добавляем указание на файл ключа. Также добавляем поддерку ddns в настройки подсети.

ddns-update-style interim;
include «/etc/bind/dhcpd.key»

subnet 192.168.11.76 netmask 255.255.255.0 <
range 192.168.11.71 192.168.11.75;
option domain-name-servers 192.168.11.76;
option domain-name-servers «server-gu.ru»;
option routers 192.168.11.11;
option broadcast-address ;
default-lease-time 7200;
max-lease-time 7200;

ddns-domainname «server-gu.ru.»;
zone server-gu.ru. <
primary 192.168.11.76;
key «dhcpd»;
>
zone 11.168.192.in-addr.arpa. <
primary 192.168.11.76;
key «dhcpd»;
>
>

Чтобы проверить, что настроенная конфигурация работает корректно заставим другую машину (dncptest), находящуюся в сети, запросить и получить IP адрес — в это время на сервере будем отслеживать данные, которые записываются в логи

Запрашиваем новый адрес с dncptest и не видим в логе никакх ошибок, что говорит о том. что конфигурация корректна.

Проверяем DNS

Видим адрес из диапазона, предусмотренного range

Проверяем наличие временных файлов в которые пишутся данные об обновлении зон

Видим соответствие имени машины и А записи DNS

Команда удаляет временные файлы с расширением .jnl до нового динамического обновления

rndc freeze/thaw можно дополнять указанием конкретной зоны

Настройка DHCP сервера Linux на этом завершена. Читайте про конфигурацию DNS сервера на основе BIND9.

Источник

ИТ База знаний

Курс по Asterisk

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Настройка DHCP сервера на CentOS или Ubuntu

Раздаем IP — адреса на Linux

Привет! Сегодня мы хотим рассказать про то, как настроить DHCP-сервер и клиент в Linux CentOS и Linux Ubuntu. Поехали!

Мини — курс по виртуализации

Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена

Установка DHCP-сервера в CentOS и Ubuntu

Пакет DHCP-сервера доступен в официальных репозиториях основных дистрибутивов Linux, его установка довольно проста, просто выполните следующую команду:

Читайте также:  Расширение установочного файла windows

После завершения установки настройте интерфейс, на котором вы хотите, чтобы демон DHCP обслуживал запросы, в файле конфигурации /etc/default/isc-dhcp-server или /etc/sysconfig/dhcpd.

Например, если вы хотите, чтобы демон DHCPD прослушивал eth0, установите его с помощью следующей настройки.

Сохраните файл и выйдите.

Настройка DHCP-сервера в CentOS и Ubuntu

Основной файл конфигурации DHCP находится по адресу /etc/dhcp/dhcpd.conf, который должен содержать настройки того, что делать, где делать и все сетевые параметры, предоставляемые клиентам.

Этот файл в основном состоит из списка операторов, сгруппированных в две широкие категории:

  • Глобальные параметры: укажите, выполнять ли задачу, как выполнять задачу или какие параметры конфигурации сети предоставить DHCP-клиенту.
  • Объявления: определить топологию сети, указать состояние клиентов, предложить адреса для клиентов или применить группу параметров к группе объявлений.

Теперь откройте и отредактируйте файл конфигурации для настройки вашего DHCP-сервера.

Начните с определения глобальных параметров, которые являются общими для всех поддерживаемых сетей, в верхней части файла. Они будут применяться ко всем объявлениям:

Затем вам необходимо определить диапазон для внутренней подсети и дополнительные настройки:

  • subnet – сеть, в которой будут работать настройки;
  • option routers – шлюз по-умолчанию;
  • option subnet-mask – маска подсети;
  • range – диапазон IP-адресов;
  • option domain-name-servers – DNS-сервера;
  • option domain-name – суффикс доменного имени;
  • option broadcast-address — адрес сети для широковещательных запросов;
  • default-lease-time, max-lease-time — время и максимальное время в секундах, на которое DHCP-клиент получит адрес;

Обратите внимание, что хосты, которым требуются специальные параметры конфигурации, могут быть перечислены в инструкциях хоста в cправке.

Теперь, когда вы настроили демон DHCP-сервера, вам нужно запустить службу на некоторое время и включить ее автоматический запуск при следующей загрузке системы, а также проверить, работает ли она, используя следующие команды.

Затем разрешите выполнение запросов к демону DHCP в брандмауэре, который прослушивает порт 67/UDP, запустив его.

Настройка клиентов DHCP

Наконец, вам нужно проверить, нормально ли работает сервер DHCP. Войдите на несколько клиентских компьютеров в сети и настройте их на автоматическое получение IP-адресов с сервера.

Измените соответствующий файл конфигурации для интерфейса, на котором клиенты будут автоматически получать IP-адреса.

Настройка клиента DHCP на CentOS

В CentOS конфигурационные файлы интерфейса находились в /etc/sysconfig/network-scripts/.

Добавьте следующие параметры:

Сохраните файл и перезапустите сетевой сервис (или перезагрузите систему).

Настройка DHCP-клиента в Ubuntu

В Ubuntu 16.04 вы можете настроить интерфейс в файле конфигурации /etc/network/interfaces.

Добавьте эти строчки:

Сохраните файл и перезапустите сетевой сервис (или перезагрузите систему).

В Ubuntu 18.04 сетевое управление контролируется программой Netplan. Вам нужно отредактировать соответствующий файл, например, в каталоге /etc/netplan/

Затем включите dhcp4 под конкретным интерфейсом, например, под ethernet, ens0, и закомментируйте статические настройки, связанные с IP:

Сохраните изменения и выполните следующую команду, чтобы применить изменения.

Для получения дополнительной информации смотрите справочные страницы dhcpd и dhcpd.conf.

Готово! В этой статье мы рассмотрели, как настроить DHCP-сервер в дистрибутивах CentOS и Ubuntu Linux.

Онлайн курс по Linux

Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps

Источник

Оцените статью