Книга: Сетевые средства Linux

Использование клиента DHCP

Использование клиента DHCP

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

На заметку

Если вы хотите, чтобы ваш компьютер действовал как сервер DHCP, т. е. предоставлял IP-адреса другим системам, вам надо внимательно прочитать главу 5. Серверу DHCP должен быть присвоен статический IP-адрес.

Большинство дистрибутивных пакетов Linux позволяет включать поддержку DHCP в процессе инсталляции системы, в частности, при настройке сетевых средств. Если соответствующая опция отсутствует или если вы хотите изменить конфигурацию системы после ее инсталляции, проще всего сделать это, используя специальный инструмент с графическим пользовательским интерфейсом. К таким инструментальным средствам относятся Linuxconf (Red Hat или Mandrake), COAS (Caldera), YaST и YaST2 (SuSE). На рис. 2.1 показано окно YaST2 с установленной опцией Automatic address setup (via DHCP). В результате установки данной опции система настраивается для получения IP-адресов посредством DHCP.


Рис. 2.1. Специальные инструменты с графическим пользовательским интерфейсом упрощают использование клиента DHCP

К сожалению, при настройке средств DHCP иногда возникают проблемы; некоторые из них описаны ниже.

• Несовместимый клиент DHCP. В системе Linux применяются четыре клиента DHCP: pump, dhclient, dhcpxd и dhcpcd (обратите внимание на различия между именами последних двух клиентов и именем сервера DHCP dhcpd). В большинстве случаев все четыре клиентские программы работают корректно, но в некоторых сетях могут использоваться серверы DHCP, несовместимые с некоторыми клиентами DHCP, применяемыми в системе Linux. Если возникнет подобная ситуация, вам придется заменить клиент-программу DHCP на другую.

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

• Использование нескольких сетевых карт. Если в вашем компьютере установлены две или больше сетевых карт (NIC — network interface card), может возникнуть необходимость использовать клиент DHCP для получения IP-адресов лишь для некоторых из этих карт. Возможно, вы захотите, чтобы для каких-либо карт часть информации (например, адрес шлюза) не принималась во внимание. В этом случае вам также придется отредактировать сценарий запуска DHCP, либо написать собственный сценарий, который изменял бы автоматически выбранную конфигурацию.

В табл. 2.1 для наиболее популярных дистрибутивных пакетов Linux представлены клиент DHCP, используемый по умолчанию, альтернативный клиент DHCP, расположение сценария запуска, а также расположение основных конфигурационных файлов DHCP. (Инструмент ifup для Debian, в отличие от одноименных файлов, используемых другими системами, представляет собой программу, в которой реализованы средства настройки клиента DHCP. Управлять работой программы ifup можно, изменяя содержимое конфигурационного файла /etc/network/interfaces.) Если клиент DHCP, с которым вы предпочитаете работать, отсутствует в дистрибутивном пакете, вы все равно можете установить и использовать его. Возможно, вам придется внести некоторые изменения в сценарий запуска, расположение которого приведено в табл. 2.1, или самостоятельно реализовать процедуру запуска клиента DHCP.

Если вы считаете, что источником проблем являются опции клиента DHCP, несовместимые с присутствующим в сети сервером DHCP, то для решения этих проблем вам надо отредактировать сценарий запуска. Найдите строку, отвечающую за запуск клиент- программы, и проанализируйте передаваемые ей опции. В этом вам помогут страницы справочной информации, посвященные клиенту DHCP. Удаляя или добавляя опции, постарайтесь добиться желаемого поведения программы. Например, некоторые серверы DHCP требуют, чтобы клиент передавал имя узла; если вы используете программу dhcpcd, вам придется добавить опцию -h имя_узла. Часто в сценариях используются данные из конфигурационного файла (их расположение также приведено в табл. 2.1), однако чаще всего эти файлы сообщают системе, следует ли использовать статические IP-адреса или надо воспользоваться DHCP.

Таблица 2.1. Информация о клиентах DHCP для наиболее популярных дистрибутивных пакетов Linux

Версия Linux Клиент DHCP no умолчанию Альтернативный клиент DHCP Сценарий запуска клиента DHCP Дополнительные конфигурационные файлы
Caldera OpenLinux Server 3.1 dhclient Отсутствует /etc/sysconfig/network-scripts/ifup-dhcp /etc/sysconfig/network, /etc/sysconfig/network-scripts/ifcfg-eth0, /etc/dhcp/dhclient.conf
Debian GNU/Linux 2.2 pump dhcpcd /sbin/ifup (двоичный файл) /etc/network/interfaces
Linux Mandrake 8.1 dhcpcd dhclient, dhcpxd /sbin/ifup /etc/sysconfig/network, /etc/sysconfig/network-scripts/ifcfg-eth0
Red Hat Linux 7.2 pump dhcpcd /sbin/ifup /etc/sysconfig/network, /etc/sysconfig/network-scripts/ifcfg-eth0
Slackware Linux 8.0 dhcpcd Отсутствует /etc/rc.d/rc.inet1 Отсутствуют
SuSE Linux 7.3 dhcpcd dhclient /etc/init.d/dhclient /etc/rc.config
TurboLinux 7 dhclient Отсутствует /sbin/ifup /etc/sysconfig/network, /etc/sysconfig/network-scripts/ifcfg-eth0

Оглавление книги


Генерация: 1.273. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз