Компьютерный сервис ЭКСПЕРТ

  • Увеличить размер шрифта
  • Размер шрифта по умолчанию
  • Уменьшить размер шрифта
Home Статьи Linux для новичков Настройка DHCP-сервера на Ubuntu

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

E-mail Печать PDF

В этой статье мы рассмотрим установку и начальную настройку DHCP сервера на Ubuntu. В моем случае установка будет производиться на дистрибутив Ubuntu 14.04.3 LTS, однако, подобным образом DHCP можно установить и настроить на любом дистрибутиве. В моем случае сервер существует достаточно давно и в качестве DNS/DHCP на нем был установлен dnsmasq, который не был настроен и никогда не работал. Поскольку на данный момент dnsmasq входит в число неподдерживаемых дистрибутивом пакетов, было принято решение избавиться от него и настроить все несколько иначе. Если у Вас на сервере нет установленного DHCP-сервера, первый шаг можно пропустить.

Удаление dnsmasq

Тут ничего сложного, просто пишем в консоль:

sudo apt-get remove dnsmasq

И дожидаемся его полного удаления. После этого в системе, вероятно, остались ненужные более пакеты, от которых зависел dnsmasq, следует удалить и их тоже:

sudo apt-get autoremove

После этого можно приступать к настройке DHCP сервера с нуля.

Установка DHCP сервера isc-dhcp-server

Как обычно, для начала следует обновить установленные в системе пакеты:

sudo apt-get update && sudo apt get upgrade -y

Теперь установим непосредственно сам DHCP сервер:

sudo apt-get install isc-dhcp-server

install dhcp server

Сервер должен сразу запуститься, но нам предстоит настроить его под свои нужды.

Открываем и редактируем файл /etc/default/isc-dgcp-server. В нем нужно указать сетевой интерфейс, который будет использоваться для раздачи IP-адресов. В моем случае один и тот же интерфейс смотрит как в локальную сеть, так на шлюз (который в той же локальной сети), поэтому я указываю его.

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

sudo nano /etc/default/isc-dhcp-server

Параметру INTERFACES присваиваем значение ethXN, где ethXN - адаптер для локальной сети. Получиться должно примерно следующее:

interfacesDHCP

Узнать, какой интерфейс в Вашем случае используется для локальной сети можно выполнив:

ifconfig

ifconfig

Теперь займемся редактированием основных настроек DHCP

Откроем для редактирования /etc/dhcp/dhcpd.conf:

sudo cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.dist && sudo nano -w /etc/dhcp/dhcpd.conf

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

default-lease-time;
max-lease-time;

Их можно либо удалить, либо построить вокруг них секцию для своей подсети. Если не уверены, как это сделать, то проще будет просто стереть их или закомментировать знаком #, а потом добавить на их место такое содержимое:

subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.200 192.168.0.250;
option domain-name "ordaupfin.local";
option domain-name-servers 192.168.0.231, 192.168.0.1;
option routers 192.168.0.231;
option broadcast-address 192.168.0.255;
default-lease-time 604800;
max-lease-time 604800; }

Рассмотрим эту секцию подробнее:

  • Задаем подсеть 192.168.0.0 с маской 255.255.255.0, Вы, естественно, адаптируете все это под свои нужды. Обратите внимание, что все нижеследующие опции включены в секцию этой подсети (заключены в фигурные скобки);
  • Range задает диапазон выдаваемых адресов. В моей сети большинство клиентов имеют статические адреса, поэтому я выделяю небольшой диапазон;
  • option domain-name добавляет имя домена к имени клиента, например подключенному клиенту HOME-PC будет присвоено имя HOME-PC.ordaupfin.local;
  • option domain-name-servers задает адреса DNS серверов, у меня в сети их 2, можно указать внешний DNS, например Google Public DNS A - 8.8.8.8;
  • option routers задает шлюз по-умолчанию;
  • option broadcast-address задает широковещательный адрес подсети;
  • default-lease-time и max-lease-time задают срок аренды по умолчанию и максимальный срок аренды IP-адреса в секундах соответственно. У меня это 7 дней.

Вот как это выглядит в nano:

dhcpdconf

Теперь перезапускаем DHCP сервер командой:

sudo service isc-dhcp-server restart

Если вы увидели в терминале сообщение:

isc-dhcp-server stop/waiting
isc-dhcp-server start/running, process 30456

Значит, все хорошо и компьютеры в сети могут получать адреса по DHCP. Если демон после правки конфигов не запускается, значит внимательно смотрим конфигурационные файлы на предмет ошибок/опечаток. В этом может помочь syslog, если посмотреть его сразу после неудачной попытки запуска:

tail -f /var/log/syslog

Листать лог вверх-вниз можно сочетанием клавиш Shift+PgUp/Shift+PgDwn, выход из просмотра Ctrl+C.

В моем случае все прошло удачно. При включении WiFi и подключении к сети успешно был получен IP адрес и все остальные настройки:

Screenshot 2016-01-22-12-12-57

Спасибо за внимание!

Если статья показалась полезной, поделитесь ей в соц сетях, кнопки которых расположены ниже

Предложения и обсуждения данной статьи ведется в комментариях

Комментарии к статье:

Обновлено 22.01.2016 12:17  

 

Голосования

Об этом сайте я узнал:
 

На сайте

Сейчас 11 гостей онлайн