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

Сколько адресов можно назначить одному сетевому интерфейсу через DHCP

Существуют ли какие-либо ограничения на количество адресов, которые можно назначить одному клиентскому DHCP-хосту с DHCP-сервера? Могу ли я назначить целую подсеть / 8 одному интерфейсу через DHCP?

Существуют ли какие-либо ограничения на количество адресов, которые можно назначить одному клиентскому DHCP-хосту с DHCP-сервера?

IPv6

Нет. DHCP-сервер IPv6 может объявлять любой размер префикса клиентам, которые запрашивают делегирование префикса.

IPv4

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

При этом у клиента вы можете запросить более одного IP-адреса с небольшой дополнительной конфигурацией, поскольку эталонный DHCP-клиент ISC поддерживает создание «псевдо» интерфейса, с помощью которого вы можете запросить один дополнительный адрес. для каждого создаваемого псевдоинтерфейса.

man dhclient.conf

pseudo "name" "real-name" { declarations ... }

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

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

  interface "ep0" {
        send dhcp-client-identifier "my-client-ep0";
   }
   pseudo "secondary" "ep0" {
        send dhcp-client-identifier "my-client-ep0-secondary";
        script "/etc/dhclient-secondary";
   }

Клиентский сценарий для псевдоинтерфейса не должен настраивать интерфейс вверх или вниз - по сути, все, что он должен обрабатывать, - это состояния, в которых аренда была получена или продлена, и состояния, в которых срок аренды истек. Видеть dhclient-script(8) Чтобы получить больше информации.