Neighbour discovery protocol Matúš Dúbrava 22. marca 2012 Obsah Q Prehľad NDP (Neighbour Discovery Protocol) 0 ICMP správy Q Získavanie L2 adries Q Detekcia duplicitných adries Q Detekcia nedosažiteľných susedov Q Autokonfigurácia o PV183 2/17 Prehľad NDP (Neighbour Discovery Protocol) • je súčasťou ICMPv6 (zasielanie ICMP správ) a využitie Neighour Discovery Protokolu • získavanie L2 (MAC) adries uzlu, keď poznáme jeho IP adresu (v IPv4 nám na to slúži ARP protokol) • detekcia dupicitných adries (DAD - Duplicate Address Detection) a udržovanie informácií o dosažiteľnosti susedných uzlov (NUD - Neighbour unreachability detection) • autokonfigurácia IPv6 adries (stavová/bezstavová) • zisťovanie sieťových prefixov a iných konfiguračných údajov ICMP spravy I • Neighbour Discovery Protokol sa sklada z piatich ICMP sprav • Neighbour Solicitation (NS) • Neighbour Advertisement (NA) • Router Solicitation (RS) • Router Advertisement (RA) • ICMP redirect PV183 4/17 ICMP správy II • Neighbour Solicitation (NS) • periodicky zasielaná uzlami v sieti • slúži pri detekciíduplicitných adries, získavaní L2 adries uzlov, zisťovaní dosažiteľnosti susedných uzlov • Neighbour Advertisement (NA) • je zasielanái uzlami v sieti, nie je zasielaná periodicky • je zasielaná, ako reakcia na dotaz (NS) • je zasielaná v momente, keď nejaký uzol zmení svoju L2 adresu (informuje ostatné uzly o tejto zmene) ■0 0.0 PV183 5/17 • Router Solicitation (RS) • je zasielaná ako dotaz na smerovač, nie je zasielaná periodicky • používa sa pri získavaní konfiguračných informácií, ktoré sú potrebné pri autokonfigurácií • Router Advertisement (RA) • priodicky zasielaná smerovačmi v sieti • obsahuje konfiguračné informácie • tiež je zasielaná ako odpoveď na dotaz (RS) ICMP správy IV 9 ICMP redirect • je zasielaná iba zariadeniami označenými ako gateway • informuje hosta o správnej, prípadne lepšej ceste, resp. informuje hosta o tom, aby si updatoval smerovacie informácie ■0 0.0 PV183 7/17 Získavanie L2 adries I a využíva Neighbour Solicitation a Neighbour Advertisement správy a ide o mechanizmus veľmi podobný ARP (používaný v IPv4) • princíp fungovania • definujeme spoločný mulicastový prefix (FF02:0:0:0:0:1:FF00::/104) • uzol vezme posledných 24 bitov z IP adresy zariadenia, ktorého L2 adresu hľadá a prireťazí ju k multicastovému prefixu • výsledkom je multicastová adresa, na ktorú je zaslaná správa Neighbour Solicitation (obsahuje IP a L2 adresu uzla, ktorý túto správu posiela) • uzle, ktoré sa nachádzajú v tejto multicastovej skupine, sú povinné počúvať tieto správy • v momente, keď uzol obdrží Neighbour Solicitation správu, odpovedá Neighbour Advertisement správou, kde uvádza všetky IP a L2 adresy, ktoré vlastní • vyhodnotíme odpovede a získali sme L2 adresu daného uzla o PV183 8/17 Získavanie L2 adries II • obsah odpovede Neighbour Advertisement • všetky IP a L2 adresy, ktoré daný uzol vlastní • atribúty • R (Router) - informuje o tom, že odosielatel je smerovač • S (Solicitated) - informuje o tom, či sa jedná o odpoveď na Neighbour Solicitation, alebo nie • O (Override) - informuje o tom, či má informácia v tejto správe nahradiť staré informácie, uložené v uzloch • v prípade, že uzol zmenil svoju L2 adresu, zasiela správu Neighbour Advertisement nevyžiadané na multicastovú adresu ■0 0.0 PV183 9/17 Detekcia duplicitných adries • používa sa pri autokonfigurácií • podobný princíp ako pri získavaní L2 adresy, ale Neighbour Solicitation posielame na svoju vlastnú adresu (resp. na multicastovú adresu, kde posledných 24 bitov je z našej adresy) • adresa odosielatela (naša) je nešpecifikovaná (napr. samé 0) a každý uzol s rovnakými 24 bitmi adresy pošle na multicastovú adresu odpoveď a tak sa prezradí • vyhodnotíme odpovede a zistíme, či daná adresa už existuje ■0 0.0 PV183 10/17 Detekcia nedosažiteľných susedov • každý uzol periodicky kontroluje dosažiteľnosť všetkých uzlov, s ktorými komunikuje a tieto informácie si ukladá • periodicky zasielame Neighbour Solicitation (v tomto prípade na konkrétnu unicastovú adresu daného uzla) • uzly sa nachádzajú v stavoch • incomplete - práve zisťujeme L2 adresu uzla a čakáme na odpoveď (už sme poslali Neighbour Solicitation) • reachable - daný uzol je dostupný • stale - uplynul reachable time od poslednej odpovede • delay - uplynul reachable time od poslednej odpovede, ale stále prebieha komunikácia na vyššej sieťovej úrovni • probe - práve zisťujeme dosažiteľnosť uzla • dosažiteľsnoť uzlov sa dá zistiť aj z komunikácie, ktorú riadia protokoly vyšších úrovní (napr. TCP) o PV183 11 /17 Autokonfigurácia I • IPv6 podporuje 2 typy autokonfigurácie r stavová autokonfigurácia - DHCPv6 (podobne ako DHCP v IPv4) • bezstavová autokonfigurácia - pomocou zasielania správ Router Solicitation a Router Advertisement (IPv4 nemá obdobu tejto autokonfigurácie) () PV183 12/17 Autokonfigurácia II • všetky smerovače si udržujú informácie o sieti, a tieto informácie periodicky zdelujú všetkým hostom v sieti prostredníctvom Router Advertisement správ • tieto správy sú zasielané v náhodných intervaloch (predchádza sa zahlteniu siete) • Router Advertisement správy obsahujú • L2 adresu rozhrania smerovača, cez ktorú bola Router Advertisement odoslaná • prefix siete • MTU (udáva max. veľkosť paketov) () PV183 13/17 Autokonfigurácia - postup • nový uzol sa pripojí do siete a vygeneruje si Link-Local adresu, ktorá má tvar • prefix FE80 (prvá časť) • za tento prefix sa pripojí 54 núl • a na konec 68 bitový identifikátor rozhrania, ktorý je vygenerovaný náhodne, alebo sa použije MAC adresa daného uzla a následne sa použije detekcia duplicitných adries, zistujeme, či nami zvolená adresa je unikátna v danej sieti (unikátnost' je do veľkej miery zaručená správnou voľbou posledných 68 bitov) a ak je nami zvolená adresa unikátna, potom si ju pridelíme ako Link-Local adresu a sme schopný komunikovať v rámci lokálnej siete (d'aľej nie, pretože Link-Local adresy sú neni smerované), v opačnom prípade opakujeme proces generovania adresy Autokonfigurácia IV - postup odchytíme Router Advertisement správu, kolujúcu sieťou, alebo priamo požiadame smerovač prostredníctvom Router Solicitation správy, aby nám zaslal konfiguračné údaje smerovač nám dá informácie o tom, ako pokračovať v autokonfigurácií, a to buď • zdelí informáciu, že sieť používa stavovú autokonfiguráciu a pošle nám IP adresu DHCP servru • zdelí dodatočné informácie na nastavenie globálnej Internetovej adresy ak už máme globálnu adresu, potom znova zisťujeme jej unikátnost' v sieti, a ak je unikátna tak končíme, inak opakujeme proces nastavenia globálnej adresy PV183 15/17 RFC zdroje • RFC4861 - Neighbor Discovery for IPv6 • RFC4443 - Internet Control Message Protocol (ICMPv6) • RFC3315 - Dynamic Host Configuration Protocol for IPv6 PV183 16/17 Ďakujem za pozornosť Otázky ?