DHCP / DHCP6

Dan Lukes dan at obluda.cz
Tue May 5 14:35:51 CEST 2015


> mam trochu obsahlejsi dotaz, tykajici se DHCP/DHCP6 a isc-dhcpd-server
> balicku.
> V soucasnosti pouzivam tento balicek pro pridelovani IPv4 adres a chci
> zacit zkouset pridelovani IPv6, kde bych si chtel overit nektere
> chovani. Vetsina provideru na IPv6 stale neni pripravena, takze
> potrebuji vyresit i dalsi, souvisejici otazky, to je:
> - - filtrovani IPv6
> - - preklad IPv6-IPv4 a obracene
> - - spravou adresaci v lokalni siti (fe80::?)


No, IPv6 je presne pripad pro vyrok:

V kazdem problemu se skryva rada podproblemu, z nichz nektere jsou vetsi 
nez puvodni problem.

Jeden z nich je, ze u IPv6 neprideluje vsechny sitove parametry DHCP. 
Cast ze sitove konfigurace se ke klientovi dostane pres Router 
Advertising protokol.

Druha takova je, ze u pridelovani IPv6 adres se nepouziva MAC, ale 
takzvane DUID. To by sice mela byt persistentvi identifikace, ale presto 
je to jen softwarove cislo. Takze preinstalujes OS - a pocitac muze mit 
jine DUID. Horsi varianta je - naklonujes system na jiny pocitac - a 
DUID tam muze byt stejne. O moznostu dual-bootu, kdy kazdy z 
nainstalovanych systemu ma jine DUID a to je navic ruzne od DUID, ktere 
pouzilo PXE pri diskless-bootu ani nemluvim.

Ja jsem si nakonec isc-dhcp upravil tak, ze DUID ignoruje a pro 
pridelovani pouziva MAC ...

Mam DHCPv42, netusim, jestli to ve 43 nahodou uz nevyresili sami.

Treti takova je, ze existuji dva zpusoby pridelovani adres, statefull a 
stateless. DHCP spada do te prvni kategorie. Je si treba dat pozor na 
moznost, ze klient zkusi stateless a pri trose smuly si prideli adresu 
aniz by DHCP obtezoval.

Ctvrta je, ze Windows, kdyz jim neposkytnes IPv6 konektivitu ty, si ji 
zaridi jinak a bez tebe. Je treba tedy byt opatrny pokud bys chtel mit 
lokalni sit, kde budes IPv6 konektivitu poskytovat jen nekomu. Ve 
skutecnosti ji budou mit vsichni, ale komunikace mezi nekterymi z nich 
muze tect pres vnejsi svet (nebo taky mistne pres link-local adresy, to 
uz zalezi na tom kdo komunikuje).

Pata je, ze neni az tak neobvykle, ze ti nekdo do site pripoji pocitac 
nakonfigurovany jako router, kterej ti bude do site plivat vlastni RTADV 
avizujici stateless konfiguraci a nepatricny prefix. O moznosti, ze by 
na nem mohl bezet taky DHCPv6 server nemluvim, to tak obvykle neni.

> Pouzitelne IPv6 site by mely byt patrne z nasledujicich rozsahu, ale
> zatim se v tom stale snazim zorientovat:
> fe80::
> fc00::
> 2000::

fc00 je obsolete, a nikdy se poradne pouzivat nezacalo, uz bych s tim v 
nove siti nezacinal (bez velmi dobryho duvodu) a z venku by ti nic 
takovyho prijit nemelo.

fe80 jsou link lokal adresy, to je taky feature na kterou si clovek musi 
zvyknout a ma to svy hacky.

Celkove je ten seznam dost neuplny. Bezne se budes potkavat s adresami 
2001, 2002 a vyskytnou se i dalsi. Pro ucely tehle debaty ale asi neni 
potreba mit kompletni seznam pouzivanych adres ;-)

> Doporucil by mi nekdo rozumne reseni i pro IPv6

O tom jake reseni je nejvhodnejsi pro IPv6 muze vypuknout sverepa hadka. 
Misto toho ti reknu jak to mam ja (tam, kde IPv6 je).

Ke kazde IPv4 siti mam IPv6 sit s takovou maskou aby pocet hostu byl 
stejny. Kazda adresa IPv4 ma tak sve prime a pevne dane alter-ego v IPv6 
prostoru.

Existuji i jine metody, urcite kouzlo ma vytvaret site o pevne velikosti 
/96 a v takove siti mapovat 1:1 IPv4 adresy, ale tentokrat vsech 32bitu, 
do IPv6 prostoru. Pekny je to proto, ze FreeBSD dovoluje psat IPv6 
adresy v hybridni podobe a pak ma pocitac s IPv4 adresou 195.100.5.103 
odpovidajici IPv6 adresu treba 2001:123:beda:cafe::195.100.5.103. Coz se 
dobre pise i pamatuje.

Naopak bych se vyhnul na prvni pohled velmi lakave moznosti delat 
lokalni site o velikosti 64bitu. Prave pro tuto velikost je definovane 
stateless pridelovani a je tu tudiz nejvetsi riziko, ze si klienti 
prideli adresu bez tebe.

Hacek je, ze dhclient nastavi na interface masku /64 bez ohledu na to, 
jakou skutecnou delku prefixu sit pozaduje. Takze na FreeBSD abys masku 
konfiguroval staticky. Windows s tim problem nemaj, co pouzivaji Linuxy 
netusim, ale mam pocit, ze tam s tim taky byla alespon na nekterych potiz.

> authoritative;

Nez se vubec dostaneme k DHCP je treba zacit rtadvd.conf:

> vlanXXX:\
>   :raflags="moh":\
>   :addr="2001:xxxx:xxxx:xxxx::":\
>   :prefixlen#117:\
>   :pinfoflags="l":\
>   :vltime#86400:\
>   :pltime#11400:

Pricemz nejdulezitejsi jsou tam ty 'raflags' a 'pinfoflags', ktere se 
potencialnim klientum snazi vysvetlit, ze v teto siti se pro pridelovani 
IPv6 pouziva DHCP a na nejake vlastni stateless prideleni maji rovnou 
zapomenout.

No a ted to DHCP. Tam je to naopak jednoduchy. neni tam nic moc, co by 
na DHCPv6 bylo potreba udelat jinak, nez jak to mas na DHCPv4. Akorat 
misto 'subnet' mam 'subnet6'. A pochopitelne sestkovy adresy misto 
ctyrkovejch (where applicable).

A mozna jedna vec, ktera ti, nejsem si jisty, mozna trochu unikla.

DHCPv6 nevznika tak, ze to konfiguraku od DHCPv4 neco dopisu. DHCPv6 je, 
mluvim ted o isc-dhcp, samostatne bezici daemon se samostatnym konfigurakem.


Dan



More information about the Users-l mailing list