Назад | Перейти на главную страницу

как dhcpd обрабатывает статические IP-адреса по сравнению с резервированием DHCP

У нас есть сервер RHEL 6.7 для DHCP. Мне нужно прояснить, как dhcpd обрабатывает сетевую адресацию, когда кому-то нужен постоянный IP-адрес. Вот пример конфигурации с одного из наших серверов. Насколько я понимаю, их можно получить двумя способами. Резервирование DHCP и настоящий статический IP-адрес, выходящий за рамки DHCP.

subnet 192.168.100.0 netmask 255.255.255.0 {
  option domain-name "domain.net";
  option broadcast-address 192.168.100.255;
  option routers 192.168.100.1;

  # Define the scopes for this DHCP pool

  pool {
   range 192.168.100.2 192.168.100.200;
   # static reserve = 192.168.100.201 - 192.168.100.254
  }
  host static-custid {
   hardware ethernet 00:01:02:03:04:05;
   fixed-address 192.168.100.150;
  }
  host static-custid {
   hardware ethernet 00:01:02:03:04:05;
   fixed address 192.168.100.201;
  }
}

Итак, как вы можете видеть, у нас есть один статический резерв вне области DHCP и один внутри. Насколько я понимаю, dhcpd знает только о том, что находится внутри объявленного пула, поскольку клиент будет использовать протокол DHCP. Но хоть убей, я не могу заставить здесь кого-нибудь объяснить мне, почему мы объявляем статические резервы для IP-адресов, не определенных в пуле. Возможно ли, что dhcpd узнает о статическом резерве за пределами пула и присвоит ему 192.168.100.201, когда увидит этот MAC-адрес И клиент использует DHCP? Я не думаю, что это так, потому что всех этих статических резервов, выходящих за пределы пула, нет в файле dhcpd.leases.

Статические IP-адреса обычно находятся за пределами диапазона пула, поскольку вы не хотите, чтобы статические IP-адреса назначались другим хостам. Пока статические IP-адреса находятся в локальном диапазоне IP-адресов (или ретранслируются) на сервер DCHP, они могут обслуживаться.

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

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

Некоторое программное обеспечение DHCP-сервера работает иначе, когда дело касается резервирования:

  • некоторые требуют, чтобы все зарезервированные адреса находились за пределами динамического диапазона, но в пределах подсети.
  • некоторые требуют, чтобы все зарезервированные адреса находились в пределах динамического диапазона, и тогда он знает, что не следует использовать их при динамическом распределении других хостов.
  • некоторые позволяют зарезервированному адресу находиться внутри или вне динамического диапазона.

Читая страницы руководства для наиболее распространенного Linux DHCPd кажется, что он позволяет применять любую из вышеперечисленных политик за счет использования комбинаций опций пула:

  • разрешить известных клиентов;
  • отказать известным клиентам;
  • разрешить неизвестных клиентов;
  • отказать неизвестным клиентам;

Определение известного клиента - это тот, у которого есть запись хоста где-то в файле conf. Так что, если вы не разрешаете «известных клиентов»; в пуле нельзя выделить фиксированный адрес внутри диапазона, который используется пулом.

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

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