DHCP-сервер быстро и просто

()

В то время как одни системные администраторы считают что все IP-адреса компьютерам в локальной сети надо присваивать статически, другие, наоборот, считают что в случае большого количества компьютеров гораздо удобнее использовать DHCP - Dynamic Host Configuration Protocol - протокол динамической конфигурации.

Ниже будет показано как установить и настроить простейший DHCP-сервер на базе Debian/Ubuntu.

Допустим, что у нас есть межсетевой экран с двумя интерфейсами: eth0 смотрит во внешний мир, а eth1 смотрит в локальную сеть и имеет адрес 192.168.2.1 в сети 192.168.2.0/24. Так же на этом межсетевом экране установлен DNS-сервер (для пользователей из локальной сети).

Приступаем к установке. Для начала установим сам сервер:

apt-get install dhcp3-server

Сразу оперделим интерфейс на котором он будет работать. Для этого нужно в файле /etc/default/dhcp3-server подправить параметр INTERFACES:

#INTERFACES=""
INTERFACES="eth1"

Далее открываем в редакторе файл /etc/dhcp3/dhcpd.conf и приступаем к настройке. Первым делом меняем параметры domain-name и domain-name-server:

#option domain-name "example.org";
#option domain-name-servers ns1.example.org, ns2.example.org;
option domain-name "ylsoftware.com";
option domain-name-servers 192.168.2.1;

Далее добавим в самый конец секцию для нашей сети:

subnet 192.168.2.0 netmask 255.255.255.0 {
    range 192.168.2.2 192.168.2.254;
    option domain-name-servers 192.168.2.1;
    option routers 192.168.2.1;
}

Здесь range - это диапазон из которого будут выдаваться IP-адреса, domain-name-server - это DNS-сервера. Вообще-то, если этот параметр не указан, то будет использован глобальный, но указать тут всё равно не помешает. routers - маршрут по умолчанию.

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

host first {
  hardware ethernet 00:E0:4C:B7:C2:59;
  fixed-address 192.168.2.3;
}

Для получения более подробной информации рекомендуется прочитать комментарии в конфиге. Пожалуй это сама подробная и удобная на данный момент документация.

После настройки перезапустим dhcp-сервер:

/etc/init.d/dhcp3-server restart

Приятной работы!

Ключевые слова: dhcp, dhcpd, linux.

Комментарии:

2008-06-10 20:19:53 (#)

есть еще 2 параметра:
default-lease-time 600;
max-lease-time 7200;
я так понял время жизни ip. полезно если ip раздается не на основе MAC адреса и компы постоянно включаются и выключаются.

MooSE 2008-06-10 21:07:16 (#)

ladm, ты прав как никогда:)

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

2008-06-10 23:08:34 (#)

А, еще такой вопрос:
> range 192.168.2.2 192.168.2.254;
и
> fixed-address 192.168.2.3;

получается что у тебя присваиваются ip автоматом с 2-го а 3-й зафиксирован за определенной машиной. что будет если сперва включить 2 машины, а потом first?
Просто у меня дома 2-м машинам ip раздаются на основе маков. а range у меня где-то с 10-го и все виртуальные машины получают 10-й 11-й и тд а а реальные 2-й, 3-й...

MooSE 2008-06-11 09:37:51 (#)

я пробовал - нормально всё проходит. он просто резервирует этот адрес и ждёт машину с подходящим маком.

Andrey2005 2009-03-14 15:26:31 (#)

настроил по этой статье, но получается странная вещь, если не включён комп с зарезервированным IP, и включается любой другой, то он может занят зарезервированный IP. Как это исправить ? Если же первым включается комп с зарезервированным IP, то всё ОК.

MooSE 2009-03-15 13:38:29 (#)

Так быть не должно. Но если всё-таки так получается - попробуй резервировать IP вне динамического диапазона.
Новый комментарий



© 2006-2016 Вадим Калинников aka MooSE