Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Данная команда задаёт командный язык DHCP-сервера. Команды конфигурации или просмотра текущего состояния сервера вводятся с консоли или Telnet-клиента ОС WANFlex. Префикс команд управления сервером DHCP в командном интерпретаторе "dhcpd". В синтаксисе перечислен полный список команд без префикса.

Note
titleВНИМАНИЕ

Сервер DHCP не может быть запущен одновременно с DHCP-ретранслятором, если в конфигурации устройства присутствует команда "dhcpr start", настройка запуска сервера применена не будет.

Note
titleВНИМАНИЕ

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

Например, команда "dhcpd show scope *" может быть сокращена до "dhcpd s s *", а команда "dhcpd show config" до "dhcpd sh c". Команды, использующиеся для изменения конфигурации DHCP-сервера, а также его запуска или остановки, требуют, чтобы администратор имел в данной системе права "super-user". Другие команды сервер DHCP будет выполнять для любого пользователя.

В приведенном списке команд их параметры условно изображены в скобках "<>". Если значение какого-либо параметра содержит пробелы, то это значение должно указываться в кавычках.

...

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

Примеры

В данном примере успешно создан пул с именем "MSOFT" с разрешенным интерфейсом "eth0". После создания пул автоматически подключился к интерфейсу "eth0" к подсети 192.168.177.12.

Code Block
languagetext
themeEmacs
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" с разрешением подключаться к любому интерфейсу. Пул был успешно создан, но не смог подобрать интерфейса для подключения, т.к. ни один из интерфейсов не имеет подсети, в которую бы полностью помещался диапазон адресов этого пула.

Code Block
languagetext
themeEmacs
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"), к которому принадлежит зарезервированный адрес, сервер все равно создаст такое резервирование.

Code Block
languagetext
themeEmacs
dhcpd scope PHONES add reservation ID:01:00:04:35:00:22:23 9.1.1.170
OK

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

Code Block
languagetext
themeEmacs
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".

Code Block
languagetext
themeEmacs
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", так как этот клиент удовлетворяет всем правилам пула.

Code Block
languagetext
themeEmacs
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". 

Code Block
languagetext
themeEmacs
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-сервером.

Code Block
languagetext
themeEmacs
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" заблокирован, при этом от него отключились все пулы.

Code Block
languagetext
themeEmacs
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. 

Code Block
languagetext
themeEmacs
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

Ниже приведён пример списка опций, запрошенных клиентом.

Code Block
languagetext
themeEmacs
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>