Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility oooooooo Závěrečné poznámky Protokol IPv6, část 2 □ >OQ,0 1/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility oooooooo Závěrečné poznámky -Oboah přodnáoky Průzkum okolí Objevování sousedů Detekce dosažitelnosti Objevování směrovačů Autokonfigurace Podpora mobility Domácí agent Komunikace přes domácího agenta Optimalizace cesty Závěrečné poznámky □ >OQ,0 2/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility oooooooo Závěrečné poznámky -Průzkum okolí- • angl. Neighborhood discovery (ND) • RFC 2461 • Překlady mezi L2 a L3 adresami, autokonfigurace, apod. • Ekvivalenty službám ARP, RARP, DHCP v IPv4. • Složky N D • Zjišťování L2 adres uzlů v lokální síti a udržování překladových tabulek • Kontrola dosažitelnosti sousedů. • Detekce duplicitních adres. • Hledání směrovačů. • Autokonfigurace - stavová a bezstavová 4 □ ► >0 °nO 3/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility oooooooo Závěrečné poznámky Typu ICMP pokotů pro ND • Neighbor solicitation (NS - výzva sousedovi) • Neighbor advertisment (NA - ohlášení souseda) • Router solicitation (RS - výzva směrovací) • Router advertisment (RA - ohlášení směrovače) • Redirect (přesměrování) VVX I V V V V VIN/X - N/V prípade, ze smerovac zna krasi cestu nez pres sebe. • Podobné přesměrování v IPv4. □ >OQ,0 4/35 Obsah přednášky Průzkum okolí Podpora mobility Závěrečné poznámky •ooooooooooooo oooooooo Hledání linkových adres z IPv6 adres (ND) Řešeno pomocí vysílání do multicastové skupiny. • Vyčleněn prefix FF02:0:0:0:0:1: FFOO: : /104. • Multicastová skupina pro danou IPv6 adresu: prefix + posledních 24 b z IPv6 adresy. Příklad 1 FF02:0:0:0:0 :1:FFOO: :/104 + 28BC:FA3D:21 :AA37:1: 66FE:9AA4:D678 = FF02:0:0:0:0 :1:FFA4: D678 J □ >OQ,0 5/35 Obsah přednášky Průzkum okolí •ooooooooooooo Podpora mobility oooooooo Závěrečné poznámky Hledání linkových adres z IPv6 adres (ND) • Řešeno pomocí vysílání do multicastové skupiny. • Vyčleněn prefix FF02:0:0:0:0:1: FFOO: : /104. • Multicastová skupina pro danou IPv6 adresu: prefix + posledních 24 b z IPv6 adresy. • Každý uzel musí poslouchat v multicastové skupině (skupinách) odpovídající jeho IPv6 adrese (adresám). • 24 bitů z IPv6 adresy zaručuje, že v dané skupině bude poslouchat velmi málo (typicky 0 nebo 1) uzel. □ >OQ,0 6/35 Obsah přednášky Průzkum okolí o«oooooooooooo Podpora mobility oooooooo Závěrečné poznámky • Hlodající ukonotruujo adrocu ckupiny z profijxu a IPv6 adresy a do ní pošle neighborhood solicitation. • Obsahuje hledanou adresu. • Vysílající připojí svoji L2 adresu. • Naslouchající s hledanou IPv6 adresou reaguje pomocí neighbor advertisment. • Obsahuje hledané IPv6 a L2 adresy. • Možné příznaky: • R (Router) ... odesílatel je směrovač, • S (Solicited) .. .ohlášení je vyžádanou reakcí (záznamy je možno aktualizovat bez vyžádání!), • O (Override) ... nová informace má přepsat eventuální staré záznamy (měl by být nastaven u nevyžádaných NA a vyžádaných NA, které nebyly poslány na anycastovou adresu). < □ ► >OQ.O 7/35 Obsah přednášky Průzkum okolí oo«ooooooooooo Podpora mobility oooooooo Závěrečné poznámky -Formáty peickotů NS a NA- • Neighbor Solicitation • IPv6 hlavička • Zdrojová adresa: IP adresa odesílajícího rozhraní (ev. nespecifická :: v případě hledání duplicit) • Cílová adresa: multicastová nebo unicastová adresa cíle • Max. počet hopů: 255 • Priorita: 15 • ICMP hlavička • Type: 135 • Code: 0 • Zdrojová L2 adresa odesílatele, je-li známa (pokud existuje, tak povinně v multicastových a doporučene v unicastových zprávách) □ >OQ,0 8/35 Obsah přednášky Průzkum okolí OOO0OOOOOOOOOO Podpora mobility oooooooo Závěrečné poznámky IPv6 hlavička • Zdrojová adresa: IP adresa odesílajícího rozhraní • Cílová adresa: jedna z následujících možností a) adresa uzlu, který zaslal NS zprávu b) mutlicastová adresa všech lokálních uzlů pro nespecifickou původní zdrojovou adresu a pro nevyžádané NA • Max. počet hopů: 255 • Priorita: 15 ICMP hlavička • Type: 136 • Code: 0 • Příznaky: R, S, O. • "Cílová adresa": u vyžádanách NA je to zdroj NS, u nevyžádaných adresa uzlu, jehož L2 adresa se změnila (nikdy ne multicastová adresa!) • Volby: pokud má uzel přidělenou L2 adresu, musí být zahrnuta □ >OQ,0 9/35 Obsah přednášky Průzkum okolí OOOO0OOOOOOOOO Podpora mobility oooooooo Závěrečné poznámky Detekce dosažitelnosti Možné stavy cache sousedů: Odstranit z cache Testovaná Nekompletní * Dosažitelná * Odložená Prošlá L2 adresa není známa. Spouští se proces hledání L2 adresy. Odesílání NS probíhá multicastem. □ -oo,r> 10/35 Obsah přednášky Průzkum okolí OOOO0OOOOOOOOO Podpora mobility oooooooo Závěrečné poznámky Detekce dosažitelnosti Možné stavy cache sousedů: Odstranit z cache Testovaná Nekompletní * Dosažitelná * Odložená Prošlá Soused žije, „normální" stav, t.j. záznam v cache není expirovaný. □ -0 0,0 11/35 Obsah přednášky Průzkum okolí 0000*000000000 Podpora mobility oooooooo Závěrečné poznámky Detekce dosažitelnosti Možné stavy cache sousedů: Odstranit z cache Testovaná Nekompletní * Dosažitelná * Odložená Prošlá Vypršela expirační doba záznamu v cache. Pokud se se sousedem nekomunikuje, nic se neděje. □ -0 0,0 12/35 Obsah přednášky Průzkum okolí OOOO0OOOOOOOOO Podpora mobility oooooooo Závěrečné poznámky Detekce dosažitelnosti Možné stavy cache sousedů: Odstranit z cache Testovaná Nekompletní * Dosažitelná * Odložená Prošlá Ceká se na potvrzení živosti vyšší komunikující vrstvou (např. TCP). Pokud není potvrzeno, přejde se na proaktivní testování. □ -0 0,0 13/35 Obsah přednášky Průzkum okolí OOOO0OOOOOOOOO Podpora mobility oooooooo Závěrečné poznámky Detekce dosažitelnosti Možné stavy cache sousedů: Odstranit z cache Testovaná Nekompletní * Dosažitelná * Odložená Prošlá Proaktivní testování dosažitelnosti pomocí NS odesílaných unicastem. Po neúspěšných opakováních je záznam vyřazen z cache. □ Q, O 14/35 Obsah přednášky Průzkum okolí OOOOO0OOOOOOOO Podpora mobility oooooooo Závěrečné poznámky Inverzní objevovaní oouoodů • angl. Inverse Neighbor Discovery (IND) • V situaci, kdy je známa L2 adresa a není známa IPv6 adresa. • Na výzvu (solicitation) reaguje uzel oznámením (advertisment), který obsahuje jednu či více jeho IPv6 adres. • Zasíláno unicastem. □ -OQ^O1 15/35 Obsah přednášky Průzkum okolí OOOOOO0OOOOOOO Podpora mobility oooooooo Závěrečné poznámky Objevování omorovačů • Založeno na výzvách a oznamech směrovačů (RS a R A) • Základní pilíř bezstavové autokonfigurace. • Výzva směrovací (RS) • Směrovače odpovídají oznamem (RA) • Ignorováno normálními uzly (ne-směrovači) • Podmínky přijetí směrovačem: • Maximální počet hopů = 255 • Korektní autentizace (má-li AH) a kontrolní součet • ICMP má délku > 8 a ICMP kód = 0 • Použité volby mají nenulovou délku □ -OQ^O1 16/35 Obsah přednášky Průzkum okolí ooooooo«oooooo Podpora mobility oooooooo Závěrečné poznámky • Struktura výzvy RS • Pole IPv6 hlavičky • Max. počet skoků je 255 • Priorita je 15 • Zdrojová adresa je buď unicastová nebo nespecifikovaná adresa • Cílová adresa je zpravidla multicastová adresa směrovačů • Pole ICMP hlavičky • Type 133 • Code 0 • Může obsahovat adresu odesílatele, je-li známa 17/35 Obsah přednášky Průzkum okolí oooooooo«ooooo Podpora mobility oooooooo Závěrečné poznámky Oznam směrovače (RA) • Posílány v náhodných intervalech každým V V I V/ V" ■ / \ / . X I "I smerovacem do primo pripojených síti nebo jako reakce na výzvu směrovací (RS). • Obsahuje specifické informace o směrovací, zejména • MTU, • prefixy, • L2 adresa rozhraní. • V případě, že se jedná o reakci na RS, RA obsahuje veškerou volitelnou informaci (zejména všechny validní prefixy). • Uzly si tyto informace cachují. □ -0 0,0 18/35 Obsah přednášky Průzkum okolí OOOOOOOOO0OOOO Podpora mobility oooooooo Závěrečné poznámky • Struktura oznamu RA • Pole IPv6 hlavičky • Max. počet hopů je 255 • Priorita 15 • Volitelně obsahuje také L2 adresu odesílajícího rozhraní. • Cílová adresa je buď multicast nebo unicast (podle toho, jestli se jedná o reakci na RS). □ -0 0,0 19/35 Obsah přednášky Průzkum okolí OOOOOOOOOO0OOO Podpora mobility oooooooo Závěrečné poznámky Struktura oznamu RA (pokračování) • Pole ICMP hlavičky • Type 134 • Code 0 • Příznaky M ... Managed address configuration (použití stavové konfigurace pro IP adresu) O ... Other stateful configuration (použití stavové konfigurace pro ostatní parametry) • Router lifetime ... udává, jak dlouho je ještě ochoten směrovač fungovat jako implicitní v sekundách, jinak 0. • Trvání dosažitelnosti a interval opakování. • Další volitelné informace důležité pro autokonfiguraci budou diskutovány dále. □ -0 0,0 20/35 Obsah přednášky Průzkum okolí Podpora mobility Závěrečné poznámky OOOOOOOOOOO0OO oooooooo Autokonfiguraco Dva typy • Stavová (DHCPv6, podobné DHCP pro IPv4) • Bezstavová (RFC 1971, nemá ekvivalent v IPv4) • Kombinuje lokálně dostupnou informaci s informacemi propagovanými směrovací. Směrovač oznamuje v RA reagujících na RS všechny prefixy dostupné v dané síti, které jsou spojeny s lokálně generovanou adresou (např. MAC nebo její jedinečný hash). Vzájemně se mohou doplňovat • Získání IPv6 adresy bezstavovou autokonfigurací, ostatní parametry stavovou. □ -O^CV 21/35 Obsah přednášky Průzkum okolí OOOOOOOOOOOO0O Podpora mobility oooooooo Závěrečné poznámky -BozGtavova QutokonfigurQco- • Informace v RA důležité pro autokonfiguraci • Směrovač poskytne informaci o tom, jestli je ochoten fungovat jako implicitní. • Seznam prefixů. • U každého prefixu je uvedena jeho délka, doba platnosti a doba preferování (Oxf f f f f f f f znamená nekonečnou trvanlivost). Životní cyklus prefixu Preferovaný —> Odmítaný (deprecated) —► Neplatný □ Q, O 22/35 Obsah přednášky Průzkum okolí ooooooooooooo* Podpora mobility oooooooo Závěrečné poznámky • Adresa je ve stavu předběžná (tentative) • Provede se detekce duplicitních adres d. / V/ . I O V V I V V ■ í i atorni, přistup „duveruj ale prověřuj • použije se NS s nespecifickou zdrojovou adresou (::) pro cílovou adresu, kterou chci použít • pokud dostanu NA, nesmím adresu rozhraní přiřadit • není 100% spolehlivé (např. při přerušení spoje po vyslání NS) • Pokud vše prošlo, adresa se nastaví jako platná. □ Q, O 23/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility oooooooo Závěrečné poznámky -Podpora mobility- • IETF draft "Mobility support in IPv6" (Unor 2003) Problém_| Naivní odpojení se a nové zapojení do sítě s sebou I nese potenciální změnu IP adresy, což znemožňuje I spojitou činnost všech vyšších protokolů. I • Princip řešení • Stabilní domovská adresa, nezávislá na způsobu připojení • Uzel komunikuje prostřednictvím této domovské adresy • Změna umístění uzlu transparentní pro vyšší vrstvy < □ ► -O Qv O 24/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility oooooooo Závěrečné poznámky Základní pojmy • Domovská adresa - odpovídá „domácímu" • Care-of adresa - konkrétní IPv6 adresa, kterou uzel získá při pohybu • Uzel může mít současně více care-of adres • Mezi domovskou a každou care-of adresou se musí ustavit vazba (binding) • Korespondující uzly - spolu komunikující uzly • Korespondující uzel se může dozvědět aktuální care-of adresu prostřednictvím odpovídající vazby (correspondent binding procedure) □ Q, O 25/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility oooooooo Závěrečné poznámky -Příotupy k řoocní Přes domácího agenta Pomocí optimalizace cesty mobilní uzel na cestách YJ)optimalizace cesty mob II. doma.cz tunel s úvodním datagram e m (2) odesilatel kdusl.Jlnde.cz úvodní datagram domácí agent domácí síť domácí adresa mobil, d d ma.cz □ Q, O 26/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility •ooooooo Závěrečné poznámky Domácí agent • Udržuje cache vazeb a seznam domovských agentů • Zpracovává vazby • Primární care-of adresa • Změna (přeregistrace) care-of adresy • Smazání care-of adresy • Podpora nalezení adresy domovského agenta • Změna prefixu domovské sítě □ Q, O 27/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility o«oooooo Závěrečné poznámky • Zpracování paketů • Zachytávání paketů pro mobilní uzly • Neighbor Advertisments jménem mobilního uzlu • Zpracování zachycených paketů • Tunelování paketů na care-of adresu • Nepřeposílá pakety pro link-local adresu mobilního uzlu • Pouze multicastové adresy s globálním rozsahem přeposílány jsou • Podpora přihlášení do multicastových skupin • DHCPvô pro mobilní uzly • Přeposílání paketů z mobilních uzlů • Ochrana Return routability paketů □ Q, O 28/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility oo«ooooo Závěrečné poznámky Komunikace přoo domácího agenta • Používá domovského agenta (směrovač) • Proxy Neighbor Discovery - zachycení paketů určených pro mobilní uzel • Oboustranné tunelovaní přes domovský směrovač • Používá IPv6 zapouzdření a šifrování (ESP) pro přenos dat (tunelování) (tornád tPvÉ aúresa 29/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility ooo^oooo Závěrečné poznámky -Optimalizace cooty- • Korespondující uzly komunikují přímo (po iniciaci tunelem) • Původní zabezpečení pomocí IPsec (do r. 2000) • Problém s neexistencí vše pokrývající PKI infrastruktury (korespondent může být kdokoli) • Return routability proceduře (od draftu z r. 2002, nyní RFC 3775) • Ověří, že nabídnutá care-of adresa patří deklarovanému uzlu • Dvě dvojice zpráv: • Home Test Init (HoTI, 1) a Care-of test Init (CoTI, 3) (výzvy) • Home test (HoT, 2) a Care-of test (CoT, 4) (odpovědi) □ Qv O 30/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility OOOO0OOO Závěrečné poznámky Return routability procedure (RRP) (J) zahájení teslu dom. adre&y (f) tesl domácí adresy (D zahájení tesiu dočasné ad n (D test dočasné adresy (§) aktualizace vazby 3) potvrzení vazby 31/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility ooooo«oo Závěrečné poznámky -Zabezpečení RRP- • Mobilní uzel (MN) pošle HoTI pro získání home keygen tokenu. • MN pošle CoTI pro získání care-of keygen token u. • Korespondující uzel vygeneruje tokeny pomocí svého interního klíče Kcn • home keygen token := First(64,HMACLSHA1(Ken,(home address, nonce, 0) )) • care-of keygen token := First(64,HMAC-SHAl(Ken,(care-of address, nonce, 1) )) □ -0 0,0 32/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility OOOOOO0O Závěrečné poznámky • Korespondující uzel odešle tokeny a nonce indexy ve zprávách HoT a CoT. • Mobilní uzel spojí oba keygen tokeny a vytvoří vlastní klíč Kbm := SHAKhome keygen token, care-of keygen token) • Kbm se používá pro autentizaci aktualizace vazeb. • Klíč pro zrušení vazby je Kbm := SHAKhome keygen token) □ Qv O 33/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility ooooooo* Závěrečné poznámky Aktualizace vazeb • Mobilní uzel pošle Binding Update (BU) zprávu • care-of adresa jako zdrojová, adresa korespondujícího uzlu jako cílová • parametry: domovská adresa, pořadové číslo BU, home nonce index, care-of nonce index, HMAC_SHAl(Kbm, (care-of address,CN address,BU)) • Korespondující uzel si spočte Kbm s využitím nonce indexů a ověří platnost vazby. • Pokud projde, aktualizuje cache. □ Q, O 34/35 Obsah přednášky Průzkum okolí oooooooooooooo Podpora mobility oooooooo Závěrečné poznámky Literatura • příslušná RFC: 1886, 1887, 1971, 1981, 2373, 2461, 2874, 3775 • Satrapa P., IPv6, Neocortex, Praha, 2002 • Web IPv6, CESNET, http://www.ipv6.cz/ a server Lupa • ... posloužil jako zdroj obrázků (s poděkováním P. Satrapovi!) □ -O Q, O 35/35