- Настройка DHCP-сервера в Linux
- Как работает DHCP?
- Шаг 1: Установка DHCP-сервера
- Шаг 2: Настройка DHCP-сервера
- Шаг 3: Настройка статических IP-адресов для машин клиентов
- Шаг 4: Настройка машин клиентов
- Установка и настройка DNS + DHCP с динамическим обновлением зон в Ubuntu 16.04
- Apr 6, 2017 13:56 · 719 words · 4 minute read dns dhcp
- Развёртывание DNS/DDNS и DHCP сервера на ROSA Enterpise Linux Server за несколько минут
Настройка 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.
Здесь мы использовали следующие параметры:
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.
Источник
Установка и настройка DNS + DHCP с динамическим обновлением зон в Ubuntu 16.04
Apr 6, 2017 13:56 · 719 words · 4 minute read dns dhcp
Даже в небольших организациях для упрощения администрирования локальной сети необходимы один или несколько DNS (Domain Name System — система доменных имён) и DHCP (Dynamic Host Configuration Protocol — протокол динамической настройки узла) серверов.
Давайте рассмотрим процесс установки DNS и DHCP серверов, а также разберемся с настройкой динамического обновления DNS-зон в операционной системе Ubuntu 16.04!
Установка DNS-сервера выполняется командой:
DHCP-сервер устанавливаем следующим образом:
Редактируем конфигурационный файл /etc/bind/named.conf.options и приводим его к следующему виду:
Здесь важными являются директивы forwarders (вышестоящие DNS-сервера, на которые будет переадресован запрос при отсутствии информации о хосте на локальном сервере) и listen-on (с каких сетей или IP адресов локальный DNS-сервер будет обслуживать запросы).
Далее создадим файлы зон (прямого и обратного просмотра) и добавить их в конфигурацию DNS-сервера. По умолчанию предлагается создавать файлы зон в каталоге /etc/bind/zones/ , но в будущем это вызовет проблемы с их динамическим обновлением, поэтому мы будем создавать файлы зон в папке /var/lib/bind/ .
Исходные данные для создания зон:
- имя домена — lc ;
- имя DNS-сервера — ns.lc ;
- ip-адрес DNS-сервера — 192.168.0.218 .
Создаем файл зоны прямого просмотра:
Содержимое файла следующее:
Создаем файл зоны обратного просмотра:
Содержимое файла выглядит следующим образом:
Добавляем ссылки на только что созданные зоны в конфигурационный файл /etc/bind/named.conf.local :
Здесь именно благодаря строке allow-update < key rndc-key; >; будет возможно динамическое обновление зон.
Можно просмотреть содержимое файла rndc-key :
Теперь проверим правильность синтаксиса конфигурационных файлов DNS-сервера:
Если все выполнено правильно, то вывод этой команды должен быть пуст.
Перезапускаем DNS-сервер командой:
Далее приступаем к настройке DHCP-сервера, приводим конфигурационный файл /etc/dhcp/dhcpd.conf к следующему виду:
Для применения изменений перезапускаем службу DHCP:
Теперь, при появлении нового компьютера в локальной сети, DHCP-сервер выдаст ему свободный ip-адрес из определенного диапазона и обновит DNS-зоны (при этом в каталоге с зонами также будут созданы два файла с расширением .jnl ).
Если бы мы создавали файлы зон в каталоге по умолчанию ( /etc/bind/zones/ ), то столкнулись бы со следующими ошибками в логах:
На этом все, установка и настройка DNS и DHCP серверов с динамическим обновлением зон в Ubuntu 16.04 закончена.
Источник
Развёртывание DNS/DDNS и DHCP сервера на ROSA Enterpise Linux Server за несколько минут
В данной статье будет описано развёртывание стандартного сервера DNS и сервера DHCP в ЛВС вашей компании, а также сервера с поддержкой технологии динамического DNS. Обе этих темы будут последовательно рассмотрены в описываемом материале на примере ROSA Enterprise Linux Server (далее RELS) и инструментов с ним идущих. Это первая статья из серии, описывающей применение RELS в условиях реальных предприятий.
Для постоянно обитающей здесь публики не будет секретом, что рано или поздно системным администраторам с ростом инфраструктуры приходится сталкиваться с тем, что имеющимся хозяйством надо как-то управлять. Самое логичное решение — внедрение серверов DNS и DHCP внутри интрасети. Но тогда встаёт другой вопрос, как это можно поддерживать быстро и просто, без долгого и мучительного чтения документации по серверу BIND, dhcpd и траты времени на написание скриптов которые будут худо-бедно синхронизировать работу этих двух демонов? В идеале нам требуется настроить всё один раз и более не притрагиваться к этому. То есть, всё должно быть максимально автоматизировано.
В RELS для решения этой задачи имеется удобный и весьма простой инструмент для настройки серверов DHCP и DNS серверов, коим мы и воспользуемся.
В качестве бонуса, я расскажу и покажу как можно очень удобно организовать управление локальной сетью с помощью DHCP и DynamicDNS.
Разбегаемся!
Для развёртывания собственного сервера имён (named server) в локальной сети предприятия, нам потребуется уже упомянутый RELS, а также установленный и сконфигурированный ROSA Directory Server. Здесь нет смысла описывать установку всей системы «from scratch», так что сразу перейдём к фазе выбора пакетов опуская предшествующую ей процедуру размётки и выбора некоторых общих для ОС настроек.
Единственное замечание которое хотелось бы сделать, что при развёртывании сервера с самого начала, на этапе выбора пакетов для устанавливаемой системы необходимо выбрать два пункта: «Платформа сервера» и «ROSA Directory Server», как на иллюстрации ниже.
Далее, пропуская описание многим знакомого процесса установки системы и создания пользователей, мы перейдём непосредственно к настройке сервера DNS.
После установки ОС и первого входа из под обычного пользователя, нашему взору откроется рабочий стол с иконкой ROSA Server Setup.
Теперь сделаем небольшое отступление и оговорим параметры настройки:
- Сервер и компьютеры обслуживаемые сервером DNS у нас располагается в подсети 192.168.100.0/24, сам настраиваемый сервер имеет адрес 192.168.100.1;
- В качестве имени домена будет выбрано rosa.int;
- FQDN имя сервера будет полностью совпадать с именем домена;
- Имя основного сервера имён будет ns.rosa.int;
Перед настройкой сервера DNS необходимо проверить вывод команды hostname -f. Если вывод будет выдавать какую-либо ошибку вроде «hostname: Сбой поиска имени хоста» или что-либо ещё, не соответствующее заданному имени сервера, то необходимо открыть вашим любимым текстовым редактором файл /etc/hosts и добавить:
192.168.100.1 rosa rosa.int
Это связано с тем, что ROSA Directory Server при установке требует проверку на наличие FQDN-имени для того узла, на котором будет располагаться сервер DNS.
А теперь — взлетаем! Настройка сервера DNS.
Итак, приступаем непосредственно к процедуре развёртывания и настройки.
Щелкаем по значку ROSA Server Setup на рабочем столе, после чего будет запущен браузер Firefox с предупреждением о неверном сертификате. Добавляем наш сервер в исключения, после чего попадаем на страницу входа в веб-интерфейс, отвечающего за установку и начальное развёртывание необходимых компонентов требуемых для выполнения задачи.
После добавления сертификата в исключения, мы попадаем на страницу входа в консоль развёртывания компонентов, где после ввода логина и пароля пользователя root мы увидим два блока: «ROSA Directory Server» и «Службы и инструменты сервера».
Для установки и первичной настройки сервера DNS, нам нужно выбрать блок «ROSA Directory Server», который располагается слева. В появившемся списке компонентов сервера, требуется выбрать компонент «DNS сервер с RDS backend» в секции «Сетевые модули», затем нажать «Установить компоненты». Запустится мастер настройки в котором сначала будет проведена процедура проверки наличия необходимых пакетов и в случае их отсутствия они будут автоматически загружены из Интернета.
Для завершения процедуры, необходимо нажать на кнопку продолжения, после чего мы попадём на следующий этап мастера настройки. Здесь нам будет предложено задать FQDN-имя домена ROSA Directory Server и указать сеть которой будет позволено обслуживать рекурсивные запросы.
Обязательно нужно ввести пароль в поле «Пароль RDS». В дальнейшем он нам потребуется для того, чтобы мы могли войти в консоль администрирования ROSA Management Console, где будут произведены ряд завершающих настроек. По окончанию внесения необходимых данных следует нажать кнопку «Продолжить», после чего будет совершён переход на страницу входа консоли управления компонентами сервера.
Если по каким-то причинам это потребуется сделать позже, то продолжить настройку DNS можно из главного меню, раздел «Администрирование». Там есть значок ROSA Management Console. Пример заполнения формы на скриншоте ниже.
Если не успели забыть, в начале статьи я писал о том, что перед настройкой сервера необходимо внести небольшое исправление в файл /etc/hosts. Если у вас в процессе вылезла ошибка изображённая ниже, значит вы либо забыли это сделать, либо сделали это неправильно. Так что рекомендую в этом случае проверить содержимое /etc/hosts ещё раз.
Но вернёмся к дальнейшей настройке. После завершения установки вы будете переброшены на главную страницу входа в ROSA Magement Console автоматически.
Настройки зон и сервера имён будут заданы согласно тем параметрам, которые оговаривались в самом начале статьи. Следует помнить, что ваши настройки сети могут отличаться. Для настройки переходим в раздел «Сеть»>»Добавить зону DNS». Для этого нужно посмотреть в верхнюю часть экрана. Либо если взглянуть чуть ниже, то нужный пункт будет сразу перед глазами.
Задаются следующие параметры:
- FQDN-имя зоны DNS
- Описание
- Имя для первичного сервера DNS (в данном случае, текущего хоста)
- IP-адрес NS-сервера
- Сетевой адрес и маска подсети для обратной зоны.
Последний пункт также весьма нужен, если мы собираемся в дальнейшем создавать сервер DNS в связке с сервером DHCP.
После указания необходимых нам параметров, нажимаем «Создать». В случае успешной и корректной настройки будет выведено соответствующее сообщение, как на иллюстрации ниже.
Для проверки работы DNS теперь достаточно открыть ваш любимый эмулятор терминала либо cmd.exe, если вы используете Windows. Затем указать в настройках клиентской системы ваш только что настроенный сервер DNS и выполнить команду ping по имени сервера.
В редких случаях может возникнуть проблема, когда служба DNS не применяет настройки, для этого достаточно перейти в раздел «Управление службами сети» и перезапустить сервер DNS. На этом проблема будет исчерпана.
Небольшое кунг-фу. Настраиваем Dynamic DNS.
Но помимо создания обычного сервера DNS, ROSA Server позволяет развернуть сервер с поддержкой Dynamic DNS. Для тех, кто немного не в курсе, небольшая выдержка из Википедии:
Динамический DNS — технология, позволяющая информации на DNS-сервере обновляться в реальном времени, и (по желанию) в автоматическом режиме. Она применяется для назначения постоянного доменного имени устройству (компьютеру, сетевому накопителю) с динамическим IP-адресом. Это может быть IP-адрес, полученный по DHCP или по IPCP в PPP-соединениях (например, при удалённом доступе через модем). Другие машины в Интернете могут устанавливать соединение с этой машиной по доменному имени и даже не знать, что IP-адрес изменился.
Процедура настройки чуть отличается от описанного нами выше. Первое отличие будет на экране выбора компонентов. Для развёртывания сервера с поддержкой DDNS необходимо выбрать пункт «поддержка DDNS для BIND с LDAP backend» в секции «Сетевые модули».
Как и в прошлый раз, после выбора необходимого нажимаем «Установить компоненты», где наблюдаем уже знакомую нам процедуру скачивания пакетов. После завершения процедуры, как и в прошлый раз, будет запущена процедура предварительной настройки компонентов. Прошу обратить внимание на предупреждение, появляющееся в самом конце, после установки компонентов относящихся к серверу DHCP.
Мастер настройки сообщает нам, что потребуется провести дополнительную настройку. Для этого переходим в административную консоль ROSA Management Console и открываем панель настройки зоны DNS, как и раньше. Здесь нас ждёт ещё одно отличие:
В самом низу, если обратите внимание, появляется ещё один пункт «Создать связанную DHCP-подсеть», который, собственно, создаёт подсеть которая будет управляться по DHCP.
После нажатия кнопки «Создать» нужно будет внести небольшие изменения в настройках. Для этого переходим во вкладку «DHCP-подсети» и открываем редактирование уже имеющихся настроек.
В самом низу открывшейся формы ищем надпись «Динамические пулы для незарегистрированных DHCP-клиентов» и нажимаем чекбокс напротив надписи. Вводим необходимые нам значения. Я обычно резервирую несколько адресов из верхнего диапазона под служебные нужды (дополнительные серверы, маршрутизаторы, и тому подобное).
После чего нажимаем ещё ниже нажимаем на кнопку «Подтвердить».
Если этого не сделать, ни один клиент не сможет получить IP-адрес, а в /var/log/messages вы увидите сообщения такого рода:
Nov 20 17:19:25 rosa dhcpd: DHCPDISCOVER from 08:00:27:98:b0:cf via eth0: network 192.168.100.0/24: no free leases
Nov 20 17:19:34 rosa dhcpd: DHCPDISCOVER from 08:00:27:98:b0:cf via eth0: network 192.168.100.0/24: no free leases
Nov 20 17:19:50 rosa dhcpd: DHCPDISCOVER from 08:00:27:98:b0:cf via eth0: network 192.168.100.0/24: no free leases
Прочие настройки относящиеся к настройке срока аренды, TFTP и другие вещи, можете настроить на своё усмотрение. Для проверки корректной работоспособности, достаточно того, что уже есть.
На момент написания этой статьи в интерфейсе Management Console существовал небольшой баг. В случае добавления пустого пула адресов, он всё равно сохранял настройки, но после этого DHCP-сервер уже не перезапускался. Поэтому необходимо быть внимательным. Позднее планируется добавить проверку вводимых значений в форму.
Теперь, после настроек, заходим в раздел «Управление сетевыми службами» и перезапускам DHCP и DNS сервер.
Как обычно, проверяем работу DNS командой ping. Чтобы удостовериться, что DDNS работает как надо, я ввёл в сеть Windows-машину с именем termit. Поскольку DHCP настроен корректно, система тут же получила необходимые настройки. А теперь проверяем работу DDNS:
Источник