IPv6 IPXE chainloading

V našem skladu často testujeme i starší vyřazené servery před jejich dalším bazarovým prodejem. Jedná se vždy již o finální konfigurace, takže v nich již nejsou upravené síťové karty, které jsme popisovali dříve.

Pro takové případy potřebujeme ale stále plnohodnotný PXE boot, na který jsme zvyklí ze všech našich datacenter a který obsahuje utility na testování - memtest, cpuburn, atd.

Technické řešení

Jako obvykle jsme šli nejjednodušší možnou cestou. Ve skladu máme jednu vyhrazenou VLAN, do které je připojen virtuální server s minimem paměti a 1vCPU. Na serveru běží ISC DHCPv4 server. Pro adresaci používáme neroutovaný interní rozsah 192.168.1.0/24. Tento rozsah slouží jen a pouze ke komunikaci mezi bootovaným serverem a pxe (tftp) serverem.

Bootovací proces

Legacy PXE boot si řekne o IPv4 adresu a další bootovací parametry běžným způsobem. DHCPv4 vrátí pouze IP adresu, masku, adresu serveru, ze kterého má bootovat, a bootovací soubor. Informace jako je brána nebo DNS server nepotřebuje.

Server si pak jen stáhne ipxe image ze sítě, kterým pokračuje v bootovacím procesu pomocí IPv6.

Break the loop

Zde je ale potřeba dát si pozor, aby IPv4 adresy již DHCPv4 server nepřiřazoval v žádné další fázi. Pokud bychom odpověděli i na požadavek, který zašle iPXE, tak bychom vytvořili nekonečný cyklus. A samozřejmě také nechceme mít dostávat IPv4 adresy při instalaci systému, live cd, atd., kde už použijeme čistě IPv6.

ISC DHCP konfigurace

default-lease-time 600;
max-lease-time 7200;

ddns-update-style none;

authoritative;

class "pxe" {
    match if substring(option vendor-class-identifier, 0, 9) = "PXEClient";
}

class "ipxe" {
    match if option user-class = "iPXE";
}

subnet 192.168.1.0 netmask 255.255.255.0 {

  pool {
    range 192.168.1.10 192.168.1.254;

    allow members of "pxe";
    deny members of "ipxe";

    filename "undionly.kpxe";
    next-server 192.168.1.1;
  }
}

Závěr

V současné době toto řešení používáme s legacy pxe bootem. Popravdě jsme jej nezkoušeli s IPv4 UEFI bootem, takže pravděpodobně bude potřeba ještě trochu vylepšit.

Stále ale máme v produkci několik desítek serverů s procesory E5-2600v2, u kterých s obměnou nepospícháme, protože na dané použítí mají stále dostatečný výkon a upgrade by nepřinesl žádný užitek.

Touto cestou se dá jednoduše jít naproti IPv6 only síti i v prostředích, která mají kvůli použití staršího hardware omezené možnosti.