PXE-сервер - ограничение широковещательного порта по запросу загрузочного клиента

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

Поэтому я настроил свой сетевой адаптер с двумя IP-адресами в другом диапазоне. 192.168.1.19 - это обычная сеть, которая вещает на / 24

Для загрузки PXE-сервера я пытаюсь используйте другой набор IP-адресов, чтобы отделить его от остальной конфигурации сети. Для этого у сервера есть второй IP 192.168.0.19, транслируемый на / 24 только для 2 диапазонов IP. (макс. 2 компьютера, использующих PXE-загрузку вместе)

# cat /etc/network/interfaces
iface enp5s0 inet static
address 192.168.1.19
netmask 255.255.255.0
gateway 192.168.1.1

iface enp5s0:1 inet static
address 192.168.0.19
netmask 255.255.255.0

Дело в том, что только компьютеры, запрашивающие загрузку, должны иметь один из этих 2 IP-адресов. Хотя он сдает его в аренду и не освобождает даже после перезагрузки. Мне нужно вручную перезагрузить сеть на клиенте. Даже в этом случае он иногда получает тот же IP-адрес. Он узкий, потому что мой маршрутизатор настроен на 192.168.1.1. Я предположил, что он должен отдавать приоритет тому же диапазону.

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

Возможно ли это вообще?

0
задан 16 July 2021 в 23:40

1 ответ

Я не думаю, что ваш план сработает так, как вы хотите. ОС, которая загружается с помощью PXE, обычно выполняет настройку собственной сети DHCP. Пакеты клиента DHCP из второй настройки сети, вероятно, не будут включать параметры PXE.

Тем не менее, определенно возможно обнаружение пакетов DHCP-клиента с опциями PXE. Это распространенный подход, поэтому параметры ответа PXE могут предоставляться динамически. Что можно сделать, зависит от используемой службы DHCP.

Это пример конфигурации для службы DHCP isc-dhcp-server . Это предложит клиентам PXE другой пул. Он не предлагает отдельные подсети, как вы хотите, но его можно адаптировать.

class "pxeclient" {
    match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
    filename "pxelinux.0";
}

subnet 192.168.1.0 netmask 255.255.255.0
{
    option routers 192.168.1.1;
    next-server 192.168.1.1;
    max-lease-time 3600;

    pool {
        range 192.168.1.100 192.168.1.109;
        allow members of "pxeclient";
        }

    pool {
        range 192.168.1.110 192.168.1.119;
        allow unknown-clients;
        }
}

Другой распространенной службой DHCP является dnsmasq . Это образец конфигурации, которая делает то же, что и выше.

log-dhcp
dhcp-option=3,192.168.1.1
dhcp-match=set:pxe,60,PXEClient
dhcp-boot=tag:pxe,pxelinux.0,server,192.168.1.1
dhcp-range=tag:pxe,192.168.1.100,192.168.1.109,255.255.255.0,1h
dhcp-range=tag:!pxe,192.168.1.110,192.168.1.119,255.255.255.0,1h

Среди других интересных тем -

  • Параметры ответа PXE на основе клиентской архитектуры PXE (например, BIOS против UEFI)
  • Служба proxyDHCP ( dnsmasq поддерживает эту функцию)

Полезные ссылки

1
ответ дан 28 July 2021 в 11:17

Другие вопросы по тегам:

Похожие вопросы: