Чтение онлайн

ЖАНРЫ

Сетевые средства Linux

Смит Родерик В.

Шрифт:

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

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

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

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

На заметку

Компьютер с несколькими сетевыми интерфейсами может выполнять роль клиента DHCP в одной сети и выступать в качестве сервера DHCP в другой.

Работа сети во многом зависит от надежности сервера DHCP. В случае неисправности сервера DHCP клиент не сможет вести переговоры о выделении IP-адреса, следовательно, не получит адрес при загрузке. Поэтому, занимаясь администрированием сети, необходимо предусмотреть резервный сервер DHCP. Этот сервер должен быть неактивен, но готов начать работу в любой момент, когда основной сервер DHCP выйдет из строя. По возможности надо обеспечить копирование файла основного сервера, содержащего информацию о выделенных адресах (файла аренды), на резервный сервер. Это нужно для того, чтобы резервный сервер не пытался выделить IP-адрес, который основной сервер уже присвоил другому компьютеру. Организовать периодическое копирование файла с данными о выделенных адресах можно с помощью инструмента

cron
. Следует заметить, что резервный сервер DHCP переводит существенную часть ресурсов небольшой сети в категорию накладных расходов. Работоспособность сети в случае выхода сервера DHCP из строя можно повысить, увеличивая время аренды. В этом случае работающие клиенты реже пытаются обращаться к неработающему серверу DHCP.

Сервер DHCP обязательно входит в состав дистрибутивного пакета Linux, чего нельзя сказать об остальных системах. Поэтому при формировании сети имеет смысл планировать установку сервера DHCP на компьютере под управлением Linux. В небольшой сети можно использовать широкополосный маршрутизатор — устройство, которое позволяет подключать офисную или домашнюю сеть к Internet посредством кабельного или DSL-соединения. Такое устройство обычно содержит сервер DHCP. Сервер на широкополосном маршрутизаторе легче настраивать, чем сервер DHCP в системе Linux, однако он обеспечивает меньшую степень гибкости. Например, сервер DHCP широкополосного маршрутизатора, как правило, нельзя настроить так, чтобы конкретному клиенту выделялся один и тот же IP-адрес.

Для запуска сервера DHCP обычно используется сценарий SysV. Благодаря этому время отклика становится минимальным, а сервер получает возможность хранить важные конфигурационные данные в памяти. (Вопросы запуска серверов рассматривались в главе 5.)

Настройка ядра и сетевых интерфейсов

Для того чтобы иметь возможность использовать сервер DHCP, надо правильно выбрать конфигурацию ядра системы, а также настроить сетевые средства. В частности, вам необходимо установить опции ядра Packet Socket и Socket Filtering. (Версия 1 dhcpd не требует Socket Filtering; эта опция нужна для новых версий программы.) Вопросы установки конфигурации ядра подробно рассматривались в главе

Некоторые клиенты DHCP требуют, чтобы сервер передавал ответы на запросы по адресу 255.255.255.255. Однако по умолчанию система Linux заменяет этот адрес на широковещательный адрес локальной сети (например, 192.168.1.255). Если при работе некоторых клиентов DHCP возникает проблема (обычно это проявляется в системе Windows), ее можно устранить, включив в таблицу маршрутизации компьютера, на котором расположен сервер DHCP, специальный маршрут. Для этого используется

следующая команда:

# route add -host 255.255.255.255 dev eth0

Имя

eth0
следует заменить на имя сетевого интерфейса, используемого для подключения к вашей локальной сети. Подобную команду можно включить в сценарий запуска. Чтобы проверить установленный маршрут, надо ввести в командной строке команду
route -n
. В результате ее выполнения будут выведены все записи, содержащиеся в таблице маршрутизации. Если маршрут 255.255.255.255 содержится в таблице, он должен находиться в начале списка.

Конфигурационные файлы DHCP

Большинство дистрибутивных пакетов Linux содержит сервер DHCP, разработанный Internet Software Consortium (

http://www.isc.org/products/DHCP/
). Internet Software Consortium (ISC) в конце 2000 г. выпустил версию 3.0 DHCP, но в начале 2002 г. многие версии Linux все еще поставлялись со старой версией 2.0 сервера DHCP. Большинство параметров настройки, рассматриваемых в данном разделе, применимо к версиям 2.0 и 3.0, но версия 3.0 поддерживает некоторые новые возможности, например, средства интеграции с DNS-сервером, которые будут обсуждаться далее в этой главе.

Для настройки сервера DHCP используется конфигурационный файл

dhcpd.conf
, который обычно располагается в каталоге
/etc
или
/etc/dhdcp
. Подобно остальным конфигурационным файлам Linux,
dhcpd.conf
— это текстовый файл, для редактирования которого можно использовать обычный текстовый редактор. Кроме того, во время работы программа
dhcpd
создает собственный файл состояния
dhcp.leases
, который обычно помещается в каталог
/var/lib/dhcp
. В файле
dhcp.leases
содержится информация об аренде адресов. В системе DHCP распределением IP-адресов занимается сервер DHCP. Он сообщает клиенту DHCP, что тому на определенный период времени выделяется некоторый IP-адрес. Другими словами, адрес дается клиенту в аренду, а клиент должен вовремя продлевать ее. В файле
dhcp.leases
также содержатся сведения об Ethernet-адресах клиентов. Файл
dhcp.leases
не является конфигурационным файлом в полном смысле слова; его нельзя редактировать, но при возникновении проблем или в случае, если вам потребуется выяснить аппаратный адрес, или MAC-адрес, клиента, вы можете просмотреть содержимое
dhcp.leases
.

Строки файла

dhcpd.conf
, начинающиеся с символа
#
, содержат комментарии. Помимо комментариев, в этом файле находятся выражения, которые делятся на две категории.

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

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

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

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

dhcpd.conf
представляет собой декларацию, которая определяет конкретный компьютер и указывает, какой адрес должен выделяться ему.

host teela {

 hardware Ethernet 00:05:02:a7:76:da;

 fixed-address 192.168.1.2;

}

Поделиться с друзьями: