Утилита конфигурирования хоста TCP/IP
dhcp.client [-abdmnr] [-h имя_хоста] [-I число] [-i интерфейс] [-P порт] [-p порт] [-s хост] [-T секуны] [-t число] [-u] &
5
. Значение 0
отключает зондирование ARP.en0
, en1
). Значение по умолчанию – первый из обнаруженных интерфейсов.5
)67
).68
).3
.ЗОСРВ «Нейтрино»
aarch64, arm, armv7, e2k, mips, ppc, x86
Эту утилиту может выполнить только пользователь root. |
Утилита dhcp.client получает параметры конфигурации TCP/IP от сервера DHCP (Dynamic Host Configuration Protocol, протокол динамического конфигурирования хоста) в динамическом режиме и выполняет автоматическое конфигурирование хоста TCP/IP. Благодаря этому не требуется указывать IP-адрес и другие параметры конфигурации, а также запускать утилиты конфигурирования.
Для этой утилиты в правах доступа пользователя необходимо установить бит setuid ("set user ID", установить идентификатор пользователя). В случае использования утилит mkefs, mketfs или mkifs на хосте Windows для включения этой утилиты в образ необходимо задать атрибут perms для явного определения полномочий, а также атрибуты uid и gid для корректной настройки принадлежности. |
При прекращении работы утилита dhcp.client возвращает серверу адрес DHCP, предоставленный этим сервером. Если работа клиента прекращается по сигналу SIGPWR
, то возврат адреса не производится; аренда этого адреса завершается по таймауту или продолжается после перезапуска клиента (в зависимости от политик сервера).
Минимальный набор команд для выполнения в ЗОСРВ «Нейтрино»:
io-pkt-v4 -dne2000 -ptcpip if_up -p enx dhcp.client & if_up enx
или:
io-pkt-v4 -dne2000 -ptcpip dhcp.client -Ix -u
Если утилита dhcp.client должна назначать IP-адрес в качестве псевдонима (а не заменять текущий назначенный IP-адрес), необходимо указать опцию -a. Эта опция удобна для присвоения одному интерфейсу нескольких IP-адресов. В частности, опцию -a следует указать в том случае, если на одном и том же интерфейсе необходимо использовать утилиту dhcp.client и утилиту AutoIP.
По умолчанию утилита dhcp.client выполняет поиск не сконфигурированного интерфейса для применения соответствующей службы. В случае применения AutoIP все интерфейсы будут заведомо сконфигурированными, поэтому работа утилиты dhcp.client завершится. В случае, если утилита dhcp.client применяется к интерфейсу, уже имеющему IP-адрес, следует указать опцию -i (в сочетании с опцией -a); тогда этому интерфейсу одновременно будут присвоены IP-адреса DHCP и AutoIP.
Данная утилита получает от сервера DHCP и применяет следующую информацию:
/etc/dhcp/dhcp-up
Если этот файл существует, он запускается после установления соединения с сервером DHCP и применения вышеописанных конфигурационных опций. Этот файл может представлять собой двоичную программу или сценарий, и должен быть исполняемым (см. chmod). Если файл является сценарием, то в его первой строке должен быть указан интерпретатор команд. Пример.
#!/bin/sh
Переменные окружения, содержащие полученную от сервера конфигурацию, передаются этому файлу. При запуске этого файла им наследуется не вся среда. Например, переменная среды PATH
оказывается недоступной. Для определения доступных переменных можно создать сценарий dhcp-up, например, следующего вида:
#!/bin/sh env > /tmp/config
Переменные окружения:
INTERFACE
=en0). IPADDRESS
=10.0.0.1). NETMASK
=255.0.0.0). HOSTNAME
=node1). BROADCAST
=10.255.255.255). GATEWAY
=10.0.0.2). SERVER
=10.0.0.3). NAMESERVER1
=10.0.0.4). LEASEOBTAINED
="Mon Oct 30 16:46:10 2000"). LEASEEXPIRES
="Mon Oct 31 16:46:10 2000"). /etc/resolv.conf
или в CS_DOMAIN
(конфигурационная строка). FILENAME
), это значение будет получено от сервера. Ниже перечислены опции, которые доступны для использования, но не применяются процессом dhcp.client:
FILENAME
=/bootimg). Любые другие опции определяются как переменные окружения OPTION
x, где x – номер параметра. Если опция известна, утилита dhcp.client пытается привести ее в читабельный вид. Если опция неизвестна, утилита dhcp.client отображает ее по октетам в шестнадцатеричном виде (например, OPTION
200= F1 AA 56 42).
В настоящее время утилите dhcp.client известны опции от 1 до 61.
/etc/dhcp/dhcp-options
В этом файле определяются опции DHCP, которые требуется получать от сервера DHCP. Этот файл необходим только в том случае, если в файл /etc/dhcp/dhcp-up
добавляется пользовательская опция DHCP. Если в сценарий dhcp-up добавляется код обработки какой-либо опции, этот параметр необходимо также добавить в файл /etc/dhcp/dhcp-options
. Опции, перечисленные в файле dhcp-options, передаются серверу в дополнение к следующим:
Пример файла dhcp-options:
200 150 # Комментарий 90
Каждая опция указывается в отдельной строке в порядке приоритета. Комментарии также должны располагаться в отдельных строках; максимальная длина комментария равна 80 символам.
Для работы утилиты dhcp.client требуется разделяемая библиотека libsocket.so.
Ошибки, возникающие в процессе конфигурирования, сохраняются в системном журнале.
Базовые подсистемы ЗОСРВ «Нейтрино»
dhcp.client, dhcpd, dhcpd.leases, /etc/dhcpd.conf, io-pkt-*, lsm-autoip.so, netmanager, phlip, syslogd
Основано на RFC 2131
Предыдущий раздел: Утилиты