Differences between revisions 8 and 9
Revision 8 as of 2008-07-13 22:36:43
Size: 7903
Comment:
Revision 9 as of 2008-07-13 23:07:18
Size: 8375
Comment:
Deletions are marked like this. Additions are marked like this.
Line 19: Line 19:
В этом режиме клиенту выдается адрес из указанного администратором диапазона. По истечении определенного времени --- срока аренды (''leasing''), клиент обязан снова запросить настройки у сервера, причем новые настройки могут не совпадать с предыдущими. Сервер считает свободными те IP-адреса диапазона, для которых истек срок аренды. Алгоритм выбора сервером IP-адреса обычно следующий: по первому запросу выдается последний адрес диапазона, по второму -- предпоследний, и т. д. Клиенту, запрашивающему адрес не в первый раз, выдается, если возможно, тот же адрес, что у него был. У такого алгоритма есть хорошее свойство -- если появляется новый клиент, то ему, по возможности, выдается ранее не использовавшийся адрес. В этом режиме клиенту выдается адрес из указанного администратором диапазона. По истечении определенного времени --- срока аренды (''leasing''), клиент обязан снова запросить настройки у сервера, причем новые настройки могут не совпадать с предыдущими. Сервер считает свободными те IP-адреса диапазона, для которых истек срок аренды. Алгоритм выбора сервером IP-адреса обычно следующий: по первому запросу выдается последний адрес диапазона, по второму -- предпоследний, и т. д. Клиенту, запрашивающему адрес не в первый раз, выдается, если возможно, тот же адрес, что у него был, поскольку сервер хранит MAC-адреса клиентов. У такого алгоритма есть хорошее свойство --- если появляется новый клиент, то ему, по возможности, выдается ранее не использовавшийся адрес.
Line 21: Line 21:
Итак, рассмотрим настройку динамического распределения IP-адресов с помошью службы DHCP.

Скопируем
файл /etc/dhcpd.conf.sample в /etc/dhcpd.conf и отредактируем его. Файл /etc/dhcpd.conf.sample в ALTLinux создается автоматически, если отсутствует правильный конфигурационный файл для DHCP.   В результате файл /etc/dhcpd.conf должен выглядеть так:
Итак, рассмотрим настройку динамического распределения IP-адресов с помощью службы DHCP. Возьмем имеющийся файл с примером настройки и скопируем его для упрощения создания конфигурации. Файл /etc/dhcpd.conf.sample в ALTLinux создается автоматически, если отсутствует правильный конфигурационный файл для DHCP.
{{{
# cd
/etc/dhcp/
# cp
dhcpd.conf.sample dhcpd.conf
# # Воспользуйтесь любым текстовым редактором
# mcedit dhcpd.conf
}}}
 
В результате редактирования файл /etc/dhcpd.conf
должен выглядеть так:
Line 44: Line 48:
  Кроме того, в dhcpd.conf необходимо перечислить все сети, в которые есть доступ с данного компьютера. В нашем случае достаточно добавить строку
Line 47: Line 49:
Кроме того, в dhcpd.conf необходимо перечислить все сети, которые непосредственно подсоединены к данному компьютеру. В нашем случае достаточно добавить строку с информацией о существовании внешней сети 10.0.2.0/24
Line 48: Line 51:
subnet 10.0.0.0 netmask 255.0.0.0 {} subnet 10.0.2.0 netmask 255.255.255.0 {}
Line 53: Line 56:
# services dhcpd start # services dhcpd restart

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

Для начала следует напомнить, что из себя представляет служба DHCP. Предположим, что в процессе подготовки класса уже настроены маршрутизация и трансляция сетевых адресов. Теперь возникает необходимость настроить рабочие машины класса для работы в локальной сети и доступа в Интернет. Есть два пути:

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

Работает служба DHCP на нескольких уровнях стека TCP/IP, и, вообще говоря, ее возможности шире чем просто выдача IP-адреса, адреса маршрутизатора по умолчанию и адресов DNS --- например с помощью DHCP можно организовать загрузку бездискового клиента по сети или автоматическое определение параметров прокси-сервера клиентами.

Для начала установим на маршрутизаторе класса dhcp-сервер.

# apt-get install dhcp-server

Существует несколько вариантов поведения сервера DHCP. Далее рассмотрим два наиболее распространенных.

Динамическое распределение IP-адресов

В этом режиме клиенту выдается адрес из указанного администратором диапазона. По истечении определенного времени --- срока аренды (leasing), клиент обязан снова запросить настройки у сервера, причем новые настройки могут не совпадать с предыдущими. Сервер считает свободными те IP-адреса диапазона, для которых истек срок аренды. Алгоритм выбора сервером IP-адреса обычно следующий: по первому запросу выдается последний адрес диапазона, по второму -- предпоследний, и т. д. Клиенту, запрашивающему адрес не в первый раз, выдается, если возможно, тот же адрес, что у него был, поскольку сервер хранит MAC-адреса клиентов. У такого алгоритма есть хорошее свойство --- если появляется новый клиент, то ему, по возможности, выдается ранее не использовавшийся адрес.

Итак, рассмотрим настройку динамического распределения IP-адресов с помощью службы DHCP. Возьмем имеющийся файл с примером настройки и скопируем его для упрощения создания конфигурации. Файл /etc/dhcpd.conf.sample в ALTLinux создается автоматически, если отсутствует правильный конфигурационный файл для DHCP.

# cd /etc/dhcp/
# cp dhcpd.conf.sample dhcpd.conf
# # Воспользуйтесь любым текстовым редактором
# mcedit dhcpd.conf

В результате редактирования файл /etc/dhcpd.conf должен выглядеть так:

# See dhcpd.conf(5) for further configuration

ddns-update-style none;

subnet 172.16.0.0 netmask 255.255.255.0 {
        option routers                  172.16.0.1;
        option subnet-mask              255.255.255.0;

        option domain-name              "demo.class.altlinux.ru";
        option domain-name-servers      10.0.2.3;

        range dynamic-bootp 172.16.0.10 172.16.0.90;
        default-lease-time 21600;
        max-lease-time 43200;

}

Кроме того, в dhcpd.conf необходимо перечислить все сети, которые непосредственно подсоединены к данному компьютеру. В нашем случае достаточно добавить строку с информацией о существовании внешней сети 10.0.2.0/24

subnet 10.0.2.0 netmask 255.255.255.0 {}

Осталось лишь запустить службу DHCP. Для этого на сервере необходимо выполнить:

# services dhcpd restart

На клиенте:

# dhcpcd eth0

Dynamic DNS update

Так как разработкой DHCP и bind занимаются одни и те же люди, между этими этими проектами существует тесная связь. Например, поддерживается автоматическое обновление имени и IP-адреса в DNS-зоне -- это и называется dynamic DNS update. В отдельных случаях подобное может быть удобно, но обычно рекомендуется отключить это функцию.

Распределение IP-адресов по MAC-адресам

Существует также возможность выдать определенный IP-адрес компьютеру с определенным MAC-адресом. Для этого достаточно прописать в dhcpd.conf, например:

host lite {
 fixed-address 172.16.0.98;
 hardware ethernet 08:00:27:b7:69:b9
}

И выполнить на соотвествующем клиенте:

# cd /etc/net/ifaces
# mkdir eth0
# cd eth0
# cat > options
DISABLED=no
BOOTPROTO=dhcp

Заметим, что выдаваемый таким образом IP-адрес должен лежать вне диапазона адресов распределяемых динамически.

Такой вариант удобен, если есть необходимость знать, какой адрес получит конкретный клиент. Подобная схема работоспособна, так как в большинстве случаев MAC-адреса уникальны. Узнать список MAC-адресов компьютеров сети можно либо посмотрев адреса вручную на каждом из клиентов, либо используя файл /var/lib/dhcp/dhcpd/state/dhcpd.leases, в котором записана информация, в том числе MAC-адреса, всех клиентов, которым когда либо выдавались в аренду IP-адреса.


Сведения о ресурсах

Готовность (%)

Продолжительность (ак. ч.)

Подготовка (календ. ч.)

Полный текст (раб. д.)

Предварительные знания

Level

Maintainer

Start date

End date

50

1

1

1

1

ConstantinYershow, Allena, VsevolodKrishchenko


PspoClasses/080708/04Dhcpd (last edited 2008-10-04 10:56:13 by VsevolodKrishchenko)