Успешно сдайте бесплатный сертификационный экзамен в Академии "Инфинет" и получите статус сертифицированного инженера Инфинет.
Содержание
Описание
Данная команда задаёт командный язык DHCP-сервера. Команды конфигурации или просмотра текущего состояния сервера вводятся с консоли или Telnet-клиента ОС WANFlex. Префикс команд управления сервером DHCP в командном интерпретаторе "dhcpd". В синтаксисе перечислен полный список команд без префикса.
ВНИМАНИЕ
Сервер DHCP не может быть запущен одновременно с DHCP-ретранслятором, если в конфигурации устройства присутствует команда "dhcpr start", настройка запуска сервера применена не будет.
ВНИМАНИЕ
Команды не чувствительны к регистру букв и допускают произвольное сокращение вплоть до одной буквы, если команда в целом не может быть воспринята DHCP-сервером неоднозначно.
Например, команда "dhcpd show scope *" может быть сокращена до "dhcpd s s *", а команда "dhcpd show config" до "dhcpd sh c". Команды, использующиеся для изменения конфигурации DHCP-сервера, а также его запуска или остановки, требуют, чтобы администратор имел в данной системе права "super-user". Другие команды сервер DHCP будет выполнять для любого пользователя.
В приведенном списке команд их параметры условно изображены в скобках "<>". Если значение какого-либо параметра содержит пробелы, то это значение должно указываться в кавычках.
Синтаксис:
add dscope <SCOPE_NAME> <INTERFACE|*> <START_IP> <END_IP> add scope <SCOPE_NAME> <INTERFACE|*> <START_IP> <END_IP> add virtual interface <VIFNAME> <GATEWAY> <GWIFNAME|*> clear delete option <OPTION_NAME> delete scope <SCOPE_NAME> delete useroption <NAME> delete virtual interface <VIFNAME> help options interface <INTERFACE> delete option <OPTION_NAME> interface <INTERFACE> option <OPTION_NAME> <OPTION_VALUE> interface <INTERFACE> reservation <CLIENT_ID> delete option <OPTION_NAME> interface <INTERFACE> reservation <CLIENT_ID> option <OPTION_NAME> <OPTION_VALUE> interface <INTERFACE|*> show boundhistory interface <INTERFACE|*> show client <CLIENT_ID|*> lock interface <INTERFACE> notrace option <OPTION_NAME> <OPTION_VALUE> scope <SCOPE_NAME> add classid <CLIENT_CLASS_ID> scope <SCOPE_NAME> add exclude <START_IP> <END_IP> scope <SCOPE_NAME> add reservation <CLIENT_ID> <CLIENT_IP> scope <SCOPE_NAME> delete classid <CLIENT_CLASS_ID> scope <SCOPE_NAME> delete exclude <START_IP> scope <SCOPE_NAME> delete option <OPTION_NAME> scope <SCOPE_NAME> delete reservation <CLIENT_ID> scope <SCOPE_NAME> interface <INTERFACE|*> scope <SCOPE_NAME> option <OPTION_NAME> <OPTION_VALUE> scope <SCOPE_NAME> reservation <CLIENT_ID> delete option <OPTION_NAME> scope <SCOPE_NAME> reservation <CLIENT_ID> option <OPTION_NAME> <OPTION_VALUE> scope <SCOPE_NAME> set range <START_IP> <END_IP> scope <SCOPE_NAME|*> show declinehistory show config show interface <INTERFACE|*> show options show scope <NAME|*> show unleases <SUBSTR|*> show version show xml start stop trace unlock interface <INTERFACE> useroption <NAME> code <CODE> type <TYPE> virtual interface <VIFNAME> add subnet <IP_ADDRESS> <SUBNET_MASK> virtual interface <VIFNAME> change <GATEWAY> <GWIFNAME|*> virtual interface <VIFNAME> delete subnet <IP_ADDRESS> <SUBNET_MASK>
ПРЕДОСТЕРЕЖЕНИЕ
DHCP выполняет команды только после своего запуска.
dhcpd start
Клиенты DHCP-сервера (CLIENT)
Протокол DHCP используется для динамической настройки основных параметров подключения хостов (рабочих станций и серверов) к сети TCP/IP. Протокол DHCP использует в качестве транспортного протокол UDP. Хост, запрашивающий данные о конфигурации своего подключения к сети (IP-адрес, маску подсети, основной шлюз и др.), называется клиентом DHCP. Основным параметром конфигурации для клиента является IP-адрес. После старта, клиент рассылает по сети специальные DHCP-запросы о предоставлении ему в аренду IP-адреса и получения прочих параметров сетевой конфигурации. Для своей идентификации клиент в этих запросах может указывать идентификатор клиента. В общем случае, идентификатор клиента – это двоичный набор байтов, уникальный в пределах физического сегмента сети, к которой этот клиент подключен. Если клиент не сообщает свой идентификатор, то за его идентификатор сервер примет физический адрес (MAC) сетевого интерфейса клиента. Таким образом в DHCP-сервере клиент идентифицируется своим идентификатором клиента и сетевым интерфейсом, с которого сервер принимает запросы от данного клиента (интерфейс клиента). Идентификатор клиента (параметр "<CLIENT_ID>" в командах) представляется в виде "ID:<идентификатор>|01:<МАС адрес сетевого адаптера клиента>", как показано на примере ниже.
ID:01:00:04:35:22:88:1D
В своих запросах серверу клиент может сообщать свой класс (идентификатор класса). Идентификатор класса – это строка символов, которая определяет какое-либо свойство клиента, общее для некоторого множества однотипных. Это может быть, например, название операционной системы клиента или краткое название продукта. Например, клиенты DHCP, работающие под управлением ОС Windows XP, передают в качестве класса клиента “MSFT 5.0”, а IP телефоны Infinet Wireless – “IW_IP_PHONE”. Класс клиента может быть использован администратором сервера для автоматической группировки клиентов в необходимые пулы адресов для удобства назначения специфических параметров (options) конфигурации. Пул (scope) - это диапазон IP-адресов, в пределах которого сервер имеет право выделять IP-адреса клиентам. Пулы хранятся в конфигурационной базе данных сервера и идентифицируются в ней своим именем, определенным администратором сервера при создании этого пула.
Параметры
Параметр | Описание |
---|---|
Пулы адресов (scope) | |
add scope <SCOPE_NAME> <INTERFACE|*> <START_IP> <END_IP> | Команда с данным параметром позволяет создать пул адресов. Даже если по каким-либо причинам пул не может быть подключен, он не уничтожается.
|
scope <SCOPE_NAME> set range <START_IP> <END_IP> | Позволяет изменить диапазон адресов ранее созданного пула.
ПРЕДОСТЕРЕЖЕНИЕ При выполнении команды ранее созданные в пуле исключения и зарезервированные IP-адреса, которые перестают удовлетворять устанавливаемому диапазону, будут удалены из пула автоматически. |
scope <SCOPE_NAME> interface <INTERFACE|*> | Применяется, чтобы изменить разрешенный для подключения пула интерфейс.
|
scope <SCOPE_NAME> add classid <CLIENT_CLASS_ID> | Пулы адресов имеют фильтр классов клиентов. Если клиент в запросе сообщает свой класс, то сервер может выделить IP-адрес для этого клиента только из пулов, подключенных к интерфейсу клиента, у которых в фильтре классов имеется сообщаемый класс. Фильтр представляет собой список идентификаторов классов клиентов, для которых разрешено выделять из этого пула адреса в аренду. Чтобы сформировать у пула фильтр классов, необходимо добавить в список классов пула один или несколько идентификаторов классов клиентов (client vendor class id), которым он будет вправе выдавать IP-адреса из своего диапазона в аренду. Данный параметр используется для добавления нужного класса.
|
scope <SCOPE_NAME> delete classid <CLIENT_CLASS_ID> | Параметр для удаления класса из фильтра пула. |
scope <SCOPE_NAME> add exclude <START_IP> <END_IP> | Позволяет вносить исключения (exclude) в пул адресов. Исключения – это диапазоны адресов, принадлежащие пулу, но запрещенные для выдачи в аренду клиентам.
|
scope <SCOPE_NAME> delete exclude <START_IP> | Позволяет удалить внесенные ранее исключения. |
scope <SCOPE_NAME> add reservation <CLIENT_ID> <CLIENT_IP> | Позволяет создавать резервирования в пуле адресов. Главная цель резервирования в пуле – зафиксировать IP-адрес, выделяемый для определенного клиента из данного пула. Зарезервированный адрес может занимать IP-адреса из диапазонов исключений пулов, и не подчиняется правилу фильтра классов клиентов.
|
scope <SCOPE_NAME> delete reservation <CLIENT_ID> | Параметр позволяет удалить резервирование из пула. Если к моменту удаления клиент уже получил данный IP-адрес, то после удаления сервер оставит этот адрес в аренде у данного клиента, если тот не нарушает других правил пула (исключений и фильтра классов). В противном случае сервер аннулирует аренду. |
scope <SCOPE_NAME> option <OPTION_NAME> <OPTION_VALUE> | Позволяет добавить набор опций для конкретного пула.
|
scope <SCOPE_NAME> delete option <OPTION_NAME> | Параметр позволяет удалить опции для пула. |
scope <SCOPE_NAME> reservation <CLIENT_ID> option <OPTION_NAME> <OPTION_VALUE> | Позволяет добавить набор опций для резервированных IP-адресов в пуле.
|
scope <SCOPE_NAME> reservation <CLIENT_ID> delete option <OPTION_NAME> | Параметр позволяет удалить опции для резервированного адреса пула. |
show scope <NAME|*> | Вывести распечатку состояния пула. В подазделе "Время аренды (Address Time)" указана расшифровка значений IP-адресов для данной опции.
|
scope <SCOPE_NAME|*> show declinehistory | Отображает историю отказов клиентов получить предложенный ему IP-адрес. Когда на предложенный адрес клиент отвечает серверу DHCP отказом, сервер вносит информацию об этом в "declinehistory", чтобы исключить повторное предложение IP-адреса этому клиенту. |
delete scope <SCOPE_NAME> | Позволяет удалить пул адресов. |
Сетевые интерфейсы (interface) | |
show interface <INTERFACE|*> | Применяется для просмотра информации об интерфейсах. Сервер при старте самостоятельно определяет набор сетевых интерфейсов, пригодных для обслуживания клиентов DHCP. Пригодным считается интерфейс, подключенный к сети множественного доступа, поддерживающие широковещательную передачу broadcast (BMA), в том числе и виртуальный (VLAN). В базе данных сервера интерфейс идентифицируется своим именем, которое было присвоено интерфейсу при регистрации.
|
lock interface <INTERFACE> | Параметр позволяет запретить серверу DHCP использовать тот или иной интерфейс. |
unlock interface <INTERFACE> | Отменяет запрет серверу DHCP использовать тот или иной интерфейс. |
interface <INTERFACE> option <OPTION_NAME> <OPTION_VALUE> | Позволяет назначить набор опций для конкретного интерфейса.
|
interface <INTERFACE> delete option <OPTION_NAME> | Позволяет отменить назначение опций для интерфейса. |
interface <INTERFACE> reservation <CLIENT_ID> option <OPTION_NAME> <OPTION_VALUE> | Позволяет добавить опции для резерва на интерфейсе. Резерв на интерфейсе предназначен для определения специфического набора конфигурационных параметров, которые будут применены выбранному клиенту, вне зависимости от того, в каком из пулов данного интерфейса этот клиент получит аренду. Резерв интерфейса отличается от резервирования адреса в пуле двумя основными свойствами: во-первых, не определяет фиксированное значение IP-адреса для клиента, во-вторых, позволяет изменить класс клиента (если определить для резерва интерфейса опцию "Class Id", то при поступлении запросов от клиента этого интерфейса, его класс будет изменен на значение этой опции). Создание резервов интерфейсов не противоречит резервированию адресов пула для того же клиента.
|
interface <INTERFACE> reservation <CLIENT_ID> delete option <OPTION_NAME> | Позволяет удалить опции для резерва интерфейса. ВНИМАНИЕ Если после удаления опций для резерва на интерфейсе окажется, что набор опций пуст, то сам резервирование будет уничтожено автоматически. |
interface <INTERFACE|*> show client <CLIENT_ID|*> | Позволяет посмотреть список опций, запрошенный клиентом и выданный ему сервером. Наборы опций в списке условно обозначаются символами:
Если запрашиваемая клиентом опция не определена ни в одном из наборов сервера, то в списке она показывается со значением "<not supplied>". Кроме того, опции, которые были запрошены клиентом и выданы сервером в обязательном порядке, но не определены ни в одном из наборов (например, "Subnet Mask"), обозначаются DF.
|
interface <INTERFACE|*> show boundhistory | Позволяет просматривать базу данных интерфейса по параметрам аннулированной аренды IP-адресов.
|
Виртуальные интерфейсы (virtual interface) | |
add virtual interface <VIFNAME> <GATEWAY> <GWIFNAME|*> | Используется для создания виртуального интерфейса. Если клиент DHCP физически подключен к другой сети, для выделения ему IP-адреса, необходимо, что бы маршрутизатор, логически соединяющий сеть клиента с сетью DHCP-сервера, обладал специальной программной компонентой – DHCP Relay Agent (DRA). DRA производит ретрансляцию DHCP-пакетов (включая и широковещательные) от клиентов DHCP серверу DHCP и обратно. При этом обмен пакетами DHCP между DRA и DHCP-сервером происходит только адресно (unicast). Из этого следует, что DRA и сервер DHCP должны знать IP-адреса друг друга еще на этапе своей конфигурации. Для этой цели в DHCP-сервере существуют виртуальные интерфейсы. В сущности виртуальный интерфейс в сервере DHCP – это некий физический сетевой интерфейс, но находящийся у DRA. Так как набор подсетей этих интерфейсов DHCP-серверу неизвестен, то при конфигурации виртуальных интерфейсов необходимо указать эти подсети.
|
virtual interface <VIFNAME> change <GATEWAY> <GWIFNAME|*> | Используется для изменений виртуального интерфейса.
|
virtual interface <VIFNAME> add subnet <IP_ADDRESS> <SUBNET_MASK > | Позволяет сконфигурировать набор подсетей виртуального интерфейса для применения к нему тех же правил работы, что и с обычным сетевым интерфейсом.
|
virtual interface <VIFNAME> delete subnet <IP_ADDRESS> <SUBNET_MASK> | Позволяет удалить подсеть из набора виртуального интерфейса. Если удалить подсеть, к которой был подключен пул, то этот пул немедленно отключился и будет оставаться неподключенным до тех пор, пока не будет сконфигурирована подходящая для него подсеть у нужного виртуального интерфейса. |
delete virtual interface <VIFNAME> | Позволяет удалить виртуальный интерфейс, подсети так же будут удалены, пулы отключены. |
Общие параметры | |
help options | Показывает список всех опций, которые DHCP-демон может включать в сообщения для клиентов. |
show version | Выводит актуальную версию сервера DHCP. |
show xml | Отображает конфигурацию DHCP-сервера в формате XML. |
trace/notrace | Включает/отключает отладочную трассировку работы протокола. |
useroption <NAME> code <CODE> type <TYPE> | Позволяет создать пользовательскую опцию, отправляемую в сообщениях клиентам.
|
delete useroption <NAME> | Параметр используется для удаления пользовательской опции. |
option <OPTION_NAME> <OPTION_VALUE> | Позволяет добавить опции для всего сервера. |
delete option <OPTION_NAME> | Удаляет опции для всего сервера. |
show unleases <SUBSTR|*> | Просмотр содержимого списка клиентов, которым серверу DHCP не удалось выдать IP-адрес в аренду. Записи в этом списке хранятся в течение 15 минут, если клиент не повторяет попыток получить аренду.
|
stop | Останавливает сервер, в случае необходимости очистить конфигурацию. |
clear | Позволяет полностью очистить конфигурацию сервера после его остановки. |
Конфигурационные параметры (options)
Конфигурационные параметры (options) – это параметры, которые клиенты могут запрашивать у сервера для более точной настройки хоста. К таким параметрам относятся, например, "Address Time" (время аренды), "Router" (шлюзы по умолчанию), "NTP Servers" и т.п. Значения этих параметров сервер передает клиентам только, если клиент включил этот параметр в список запрашиваемых и только если серверу известно значение этого параметра. Набор и значения параметров (options) определяется при конфигурировании DHCP-сервера. Наборы опций могут быть определены для:
- Зарезервированного адреса в пуле. Значения опций из этого набора будут передаваться клиенту с указанным адресом.
- Резерва интерфейса. Передаются, если значение запрошенной опции отсутствовало в наборах заразервированных адресов пула.
- Пула. Значения опций из этого набора будут применены к клиенту, получившему в аренду IP-адрес из этого пула, если запрашиваемая клиентом опция отсутствует в наборе зарезервированного адреса или резерва интерфейса для этого клиента, или клиент не имеет резервирования или резерва на интерфейсе.
- Интерфейса. Передаются клиентам, получившим IP-адреса в аренду в одном из пулов, подключившихся к данному интерфейсу, если значения запрашиваемой опции отсутствует в наборе зарезервированного адреса, в самом пуле и резерве интерфейса.
- Всего сервера. Передаются клиентам, получившем IP-адреса в аренду на данном сервере, если значение запрашиваемой опции отсутствовало во всех выше перечисленных наборах. По сути, это значения опций по умолчанию.
Если значение какой-либо из запрошенных опций отсутствует во всех наборах, то клиенту не передается никакого значения этой опции. Исключение составляют две опции:
- "Address Time" – значение передается всегда, без запроса клиента. Если значение этой опции не определено ни в одном из наборов, то клиенту передается значение 120 (аренда адреса = 2 минуты).
- "Subnet Mask" – значение передается всегда, без запроса клиента. Значение этой опции определяется сервером автоматически и её запрещено определять в наборах опций при конфигурации. Значение маски подсети для клиента всегда передается равное маске подсети интерфейса, к которой подключился пул, аренду IP-адреса из которого получил клиент.
Сводную таблицу конфигурационных опций протокола DHCP можно получить по адресу: http://www.iana.org/assignments/bootp-dhcp-parameters
Для определения набора опций у сервера DHCP существует ряд команд для каждого из них (см. подраздел выше). У этих команд есть параметры, формат ввода которых одинаков для всех этих команд:
- "OPTION_NAME" - название опции (см. сводную таблицу). При указании названия опции, если в названии присутствуют пробелы, то их следует при вводе заменить на знак "подчеркивание" ( _ ). Название опции не чувстивительно к регистру символов.
- "OPTION_VALUE" – значение опции. Формат ввода значения опции зависит от ее предназначения и разделяется DHCP-сервером на три категории (формата):
- Символьная. Строка символов, как, например, для опции "Bootfile-Name". Если значение этой опции содержит пробелы, то при вводе значение опции следует заключить в кавычки.
- Двоичная. Одно или несколько десятичных чисел. Если по смыслу опции необходимо задать несколько чисел, то при вводе их необходимо разделить запятыми. Пример таких опций: "Address Time", "Time Offset".
- IP-адрес. Одно или несколько значений, задаваемых в виде IP-адреса. Примером такой опции может служить "Router" (шлюз по умолчанию). Если значение такой опции должно состоять из нескольких IP-адресов, то при вводе следует разделить их запятыми.
ВНИМАНИЕ
Не все опции могут быть включены во все наборы. Кроме "Subnet Mask", о которой говорилось ранее, в допустимом наборе есть опции, которые можно задавать только для определенных случаев. Если для указанного набора данная опция неприменима, сервер сообщит о недопустимости применения данной опции для данного набора.
ERR: This option cannot contain in the given division
Кроме того, существует ряд служебных опций, которые включены в сводную таблицу, но на самом деле не являются конфигурационными параметрами, а выполняют служебную роль. Список служебных опций DHCP-сервера:
- Subnet Mask.
- Address Request.
- Overload.
- DHCP Msg Type.
- DHCP Server Id.
- Parameter List.
- DHCP Message.
- DHCP Max Msg Size.
- Client Id.
При попытке добавить одну из этих опций для любого набора, сервер сообщит об ошибке.
ERR: This option cannot contain in the given division
Время аренды (Address Time)
Любая аренда IP-адреса выдается клиентам на время, определенное опцией "Address Time". Если клиент, которому данная аренда была предоставлена, не подтвердит продление аренды за время "Address Time", сервер аннулирует данную аренду. Значение этого времени может быть установлено и самим клиентом, но не более максимального значения. За максимальное значение этого времени принимается то, которое установлено в опции "Address Time" одного из наборов, к которому относится данный клиент. Если у сервера не определена такая опция ни в одном из наборов, то значение максимального времени принимается равным 120 секундам. В случае, если клиент не запрашивает какого-либо значения этого параметра, то сервер выдает аренду на максимальное время, определяемое так, как было описано выше.
Клиент, получивший аренду, периодически подтверждает ее. Периодичность обычно равна половине "Address Time". В ответ на подтверждение продления аренды клиентом, сервер подтверждает для клиента конфигурационные параметры аренды (option). Таким образом, если в течение срока аренды в конфигурации сервера поменялись состав или значения опций, к которому относится данный клиент, то клиент об этом «узнает» только в моменты подтверждений продления аренды.
Если по истечении времени аренды клиент ни разу не подтвердил ее, пул аннулирует эту аренду. Если этот клиент не имел зарезервированного адреса в пуле, то пул, отметит IP-адрес этой аренды как "условно свободный". При выводе состояний пулов (dhcpd show scope *) это состояние обозначается как "<OBIND>". При наличии свободных адресов, пул не будет предоставлять "<OBIND>" адреса для новых клиентов. Если в течение одних суток с момента аннулирования аренды, данный клиент вновь запросит аренду, то сервер предоставит ему тот же самый IP-адрес, что и был у него во время не продленной им аренды.
Одновременно пул записывает параметры аннулированной аренды в специальную базу данных своего интерфейса (boundhistory).
Информация об аннулированных арендах хранится в этой базе данных 24 часа и выводится в порядке времени хранения записей в ней. По истечении 24 часов запись автоматически уничтожается, а связанный с ним адрес из соответствующего пула переводится в состояние обычного свободного адреса.
Сервер будет повторно использовать условно свободные адреса для других клиентов, если у всех пулов, которые подходят этим клиентам, закончились свободные адреса. При этом сервер в первую очередь будет использовать самые "старые" записи в "boundhistory" интерфейса клиента. Сервер также аннулирует аренду клиента по запросу самим клиентом завершения им использования данного адреса.
Примеры
В данном примере успешно создан пул с именем "MSOFT" с разрешенным интерфейсом "eth0". После создания пул автоматически подключился к интерфейсу "eth0" к подсети 192.168.177.12. dhcpd add scope MSOFT eth0 192.168.177.20 192.168.177.22 [eth0] <192.168.177.12> (MSOFT): 192.168.177.20-192.168.177.22 Scope attached OK |
Создан пул под названием "new" с разрешением подключаться к любому интерфейсу. Пул был успешно создан, но не смог подобрать интерфейса для подключения, т.к. ни один из интерфейсов не имеет подсети, в которую бы полностью помещался диапазон адресов этого пула. dhcpd add scope new * 10.12.12.30 10.12.12.50 WRN: Scope created, but not attached. |
Данная команда резервирует IP-адрес таким образом, что если на интерфейс, к которому подключен пул "PHONES", поступит запрос DHCP от клиента ID:01:00:04:35:00:22:23, то сервер обязательно выдаст ему IP-адрес 9.1.1.170. При этом резервируемый IP-адрес обязан быть из диапазона пула, но на него не действует правило исключений пула. Т.е. даже если бы у пула было задано исключение (например: "dhcpd scope PHONES add exclude 9.1.1.165 9.1.1.175"), к которому принадлежит зарезервированный адрес, сервер все равно создаст такое резервирование. dhcpd scope PHONES add reservation ID:01:00:04:35:00:22:23 9.1.1.170 OK Если при попытке зарезервировать IP-адрес обнаружится, что для клиента уже существует резервирование в каком-либо другом пуле, подключенном к данному интерфейсу, то сервер не создаст резервирования и сообщит об ошибке. dhcpd scope other add reservation ID:01:00:04:35:00:22:23 192.168.177.10 [eth0] <192.168.177.12> (OTHER): 192.168.177.10-192.168.177.19 Reservation for "ID:01:00:04:35:00:22:23" already exists in scope PHONES with IP=9.1.1.170 ERR: Reservation's IP is out of scope's range |
Ситуация ниже показывает, что после удаления резервирования, сервер аннулировал аренду клиентом "ID:01:00:05:90:02:1F:C8" IP-адреса "9.1.1.200" в пуле "PHONES", т.к. класс клиента не удовлетворяет фильтру классов пула "PHONES". Спустя некоторое время этот клиент получил в аренду другой адрес из пула "OTHER". dhcpd scope phones delete reservation ID:01:00:05:90:02:1F:C8 OK dhcpd show scope * >SCOPES: (MSOFT) 192.168.177.20 - 192.168.177.22 [eth0] ATTACHED [eth0] <192.168.177.12>/255.255.255.0 <CLIENT CLASS IDs>: "IW_BRI_GATEWAY" "MSFT 5.0" <CLIENT> ID:01:00:C0:DF:10:AF:69 "MSFT 5.0" 'wad ' 192.168.177.20 <BOUND> since 01/01/2003 01:01:08 <FREE RANGE> 192.168.177.21 - 192.168.177.22 =2 (NEW) 10.12.12.30 - 10.12.12.50 [*] (OTHER) 192.168.177.10 - 192.168.177.19 [eth0] ATTACHED [eth0] <192.168.177.12>/255.255.255.0 <CLIENT> ID:01:00:05:90:02:1F:C8 "" ' ' 192.168.177.10 <BOUND> since 01/01/2003 01:16:36 <FREE RANGE> 192.168.177.11 - 192.168.177.11 =1 <FREE RANGE> 192.168.177.13 - 192.168.177.19 =7 (PHONES) 9.1.1.151 - 9.1.1.200 [*] ATTACHED [eth0] <9.1.1.100>/255.255.255.0 <CLIENT CLASS IDs>: "IW_IP_PHONE" <CLIENT> ID:01:00:04:35:00:22:24 "IW_IP_PHONE" 'Stas ' 9.1.1.151 <BOUND> since 01/01/2003 01:01:47 <FREE RANGE> 9.1.1.152 - 9.1.1.169 =18 <RESERV> ID:01:00:04:35:00:22:23 "IW_IP_PHONE" 'Andrew ' 9.1.1.170 <BOUND> since 01/01/2003 01:01:37 <FREE RANGE> 9.1.1.171 - 9.1.1.200 =30 <OPTION> Router 9.1.1.3 <OPTION> H323_GK_ADDRESS 195.38.45.84 OK Рассмотрим другую ситуацию, где для клиента "ID:01:00:04:35:00:22:23" удаление связанного с ним резервирования не привело к аннулированию аренды занимаемого им IP-адреса "9.1.1.170", так как этот клиент удовлетворяет всем правилам пула. dhcpd scope phones delete reservation ID:01:00:04:35:00:22:23 OK dhcpd show scope phones >SCOPES: (PHONES) 9.1.1.151 - 9.1.1.200 [*] ATTACHED [eth0] <9.1.1.100>/255.255.255.0 <CLIENT CLASS IDs>: "IW_IP_PHONE" <CLIENT> ID:01:00:04:35:00:22:24 "IW_IP_PHONE" 'Stas ' 9.1.1.151 <BOUND> since 01/01/2003 01:01:47 <FREE RANGE> 9.1.1.152 - 9.1.1.169 =18 <CLIENT> ID:01:00:04:35:00:22:23 "IW_IP_PHONE" 'Andrew ' 9.1.1.170 <BOUND> since 01/01/2003 01:01:37 <FREE RANGE> 9.1.1.171 - 9.1.1.200 =30 <OPTION> Router 9.1.1.3 <OPTION> H323_GK_ADDRESS 195.38.45.84 OK |
Рассмотрим пример: требуется заблокировать использование интерфейса "eth0" DHCP-сервером. После применения команды "dhcpd show interface *" становится видно, что к интерфейсу "eth0" подключились три пула: "phones", "other" и "msoft". При этом "phones" подключился к подсети "9.1.1.100/255.255.255.0", а остальные к "192.168.177.12/255.255.255.0". dhcpd show interface * >INTERFACES [eth0] UP <SUBNET> 9.1.1.100/255.255.255.0 <SCOPE> (PHONES) 9.1.1.151 - 9.1.1.200 <SUBNET> 192.168.177.12/255.255.255.0 <SCOPE> (OTHER) 192.168.177.10 - 192.168.177.19 <SCOPE> (MSOFT) 192.168.177.20 - 192.168.177.22 OK Блокируем использование интерфейса "eth0" DHCP-сервером. dhcpd lock interface eth0 [eth0] <9.1.1.100> (PHONES): 9.1.1.151-9.1.1.200 Scope detached [eth0] <192.168.177.12> (OTHER): 192.168.177.10-192.168.177.19 Scope detached [eth0] <192.168.177.12> (MSOFT): 192.168.177.20-192.168.177.22 Scope detached OK После блокировки вновь посмотрим состояние интерфейсов сервера DHCP. Видно, что теперь интерфейс "eth0" заблокирован, при этом от него отключились все пулы. dhcpd show interface * >INTERFACES [eth0] UP LOCKED <SUBNET> 9.1.1.100/255.255.255.0 <SUBNET> 192.168.177.12/255.255.255.0 OK |
Создим пул адресов, из которых DHCP-сервер будет выделять IP-адреса в аренду клиентам, прямой доступ к которым имеет данный DRA. dhcpd add scope VIRTUAL_TEST vvv1 192.168.188.20 192.168.188.50 dhcpd show interface vvv1 >VIRTUAL INTERFACES [vvv1] 192.168.177.81:* UP <SUBNET> 192.168.188.1/255.255.255.0 <SCOPE> (VIRTUAL_TEST) 192.168.188.20 - 192.168.188.50 dhcpd show scope virtual_test >SCOPES: (VIRTUAL_TEST) 192.168.188.20 - 192.168.188.50 [vvv1] ATTACHED [vvv1] <192.168.188.1>/255.255.255.0 <FREE RANGE> 192.168.188.20 - 192.168.188.50 =31 |
Ниже приведён пример списка опций, запрошенных клиентом. dhcpd interface * show client * >INTERFACES CLIENTS --------- [eth0] --------- (IPHONES) <CLIENT> ID:01:00:04:35:00:22:24 "IW_IP_PHONE" 'Unknown node' 192.168.0.101 <BOUND> since 25/04/2005 11:32:57 SUPPLIED OPTIONS: #1 . . . . . DF Subnet Mask 255.255.255.0 #2 . . . . . . Time Offset <not supplied> #3 . . S . . . Router 192.168.0.1 #7 . . . . . . Log Server <not supplied> #42 . . S . . . NTP Servers 192.168.0.1 #230 . . S . . . H323 GK ADDRESS 192.168.0.1 #231 . IR . . . . H323 LOGIN ALIAS IWPhone/V. Pupkin/101 #232 . . . . . . H323 GK ID <not supplied> |