IPv6

Transkrypt

IPv6
NAUKOWA I AKADEMICKA SIEĆ KOMPUTEROWA
Internet Protocol v6 w czym tkwi problem?
dr inż. Adam Kozakiewicz, adiunkt
Zespół Metod Bezpieczeństwa Sieci i Informacji
IPv6 – bo adresów było za mało
IPv6 – co to jest i po co?
 Nowa wersja protokołu IP
 raczej cały stos protokołów – ICMPv6, DHCPv6, zmiany w DNS...
 Nie jest rozszerzeniem IPv4
 całkowicie osobny protokół, zupełnie odmienne nagłówki
 współpraca protokołów realizowana przez specjalne mechanizmy
 Rozwiązuje problem niedoboru adresów
 zamiast 32 bitów aż 128
 Istnieje od 1994 roku, ale do niedawna bardzo rzadka
 powolny rozwój (brak masy krytycznej, problem jajka i kury)
 w międzyczasie spopularyzował się NAT...
 ...ale teraz informatyzują się Chiny, a wolne IPv4 się skończyły
Adresy IPv6
Adresacja w IPv6
 IPv4 (32 bity): niecałe 4.3 miliarda (w tym zarezerwowane)
 mniej nawet niż ludzi, nie mówiąc o urządzeniach
 JUŻ ZABRAKŁO
 IPv6 (128 bitów): 3.4·1038
 ponad 0.5 tryliona na mm2 powierzchni Ziemi (z morzami)
 dość dla każdego atomu w ciele każdego człowieka
 Czy nie za dużo?
 na pewno nie zabraknie
 upraszcza routing

można przydzielać duże pule adresów, łatwe do dzielenia

unikanie różnych bloków adresów w jednej organizacji
 64 bity na adres sieci i adres interfejsu

w adresie interfejsu zmieści się adres MAC
Adresy IPv6
Adresacja w IPv6 – zapis
 Zapis dziesiątkowy, jak IPv4, jest za długi, więc:




szesnastkowo, w 8 blokach po 4 cyfry (16 bitów) każdy
bloki rozdzielane dwukropkiem
początkowe zera w każdym bloku można pominąć
1 lub kilka bloków zerowych można zastąpić przez ::

może być tylko jeden podwójny dwukropek w adresie
 jawne IP w URL – w nawiasach kwadratowych
Przykład (ten sam adres na 3 sposoby):
12e4:5c7b:0000:0000:0034:0af1:0000:0001
12e4:5c7b::34:af1:0:1
12e4:5c7b:0:0:34:af1::1
ALE NIE 12e4:5c7b::34:af1::1!
URL: https://[12e4:5c7b::34:af1:0:1]:443/index.php
Adresy IPv6
Maski w IPv6
 Nadal bardzo użyteczne
 Zapis analogiczny do adresów (jak IPv6) byłby za długi
 ffff:ffff:ffff:ffff:ffff::? Bez przesady...
 Jedyny dozwolony format zapisu: CIDR
 Do jednoznacznego określenia adresu komputera używana
maska /128
Przykład: komputer o adresie:
1234::10:123:1/95
znajduje się w sieci obejmującej adresy
od 1234::10:0:0
do 1234::11:ffff:ffff
Adresy IPv4 w IPv6
Reprezentacja adresów IPv4 w IPv6
 Przykładowy adres:
192.168.1.1
(szesnastkowo C0A80101)
 Standardowy zapis IPv6
 Zapis szesnastkowy, początkowe bloki wypełnione zerami
::c0a8:101
 Zapis hybrydowy, zgodny z IPv4
 Ostatnie 32 bity jak w IPv4, reszta wypełniona zerami
::192.168.1.1
 Adres mapowany
 Jak wyżej, ale w innej klasie adresów
::ffff:192.168.1.1
Adresy IPv6
Uzyskiwanie adresów IPv6
 Ręczna konfiguracja – można, ale generalnie plug-and-play
 Adres link local
 powstaje z adresu MAC, obowiązkowy
 DHCPv6
 SLAAC (bezstanowa autokonfiguracja adresu)




NDP/SEND
ICMPv6
prefiks sieci ustalany przez router
identyfikator interfejsu tworzony automatycznie z MAC
 Adresy tymczasowe
Adresy zarezerwowane
Adresy zarezerwowane w IPv6
 ::/128 – „dowolny adres”, do użytku w programach
 ::1/128 – loopback
 ::/96 i ::ffff:0:0/96 – kompatybilność z IPv4
 fc00::/7 – sieci prywatne
 fe80::/10 – link local
 ff00::/8 – multicast
 nie ma broadcastu!
 duża pula – łatwo uzyskać
 adres zawiera dodatkowe dane, m.in. zakres propagacji
Nagłówek IPv6
Nagłówek IPv6
40 bajtów / 320 bitów
0
4
8
12
0
Traffic Class
Version
32
Payload Length
64
128
16
20
320
28
Flow Label
Next Header
Hop Limit (TTL)
Source Address
196
256
24
Destination Address
Nagłówek IPv6
Nagłówek IPv6 - uwagi
 Brak miejsca na opcje to nie przypadek!
 nagłówki „uzupełniające”, opcjonalne
 następny nagłówek wskazany w polu Next Header
 Hop-by-Hop Options

Destination Options

Routing

Fragment

Authentication Header (AH)

Encapsulating Security Payload (ESP)
 Nie ma też pól do oznaczania fragmentacji
 W IPv6 w zasadzie nie ma automatycznej fragmentacji
IPv6 a DNS
IPv6 w DNS
 Serwer DNS może jednocześnie obsługiwać tłumaczenie
nazw zarówno na adresy IPv4, jak i IPv6
 za IPv4 odpowiada pole A
 za IPv6 odpowiada pole AAAA
 adres jest 4 razy dłuższy, stąd nazwa
 Odwrotny DNS (wyszukiwanie nazwy na podstawie IP)
 podobnie jak w IPv4
 specjalna domena ip6.arpa.
Łączenie IPv4 i IPv6
Dual stack
 Interfejs obsługuje oba standardy
 Ma adresy obu rodzajów
 Wybór wersji zależy od możliwości drugiego węzła
 preferowane IPv6
 Wariant obsługiwany przez większość systemów
Łączenie IPv4 i IPv6
Tunneling
 Oba urządzenia końcowe używają IPv6
 Sieć po drodze wspiera tylko IPv4
 Rozwiązanie – tunelowanie IPv6 w IPv4
 wykorzystanie standardowych możliwości IPv4
 pakiety IPv6 wraz z nagłówkami opakowywane w pakiety IPv4
 wykorzystanie pola określającego protokół

użyta wartość 41 – „następny poziom IP”
 Tryb nazywany też „proto 41”
 Nie tak proste, jak się wydaje...
Łączenie IPv4 i IPv6
Translation
 Przesyłanie IPv4 przez segmenty sieci używające IPv6 lub...
 ...łączność między interfejsami używającymi różnych wersji
 Tłumaczenie nagłówków na IPv6
 mapowanie adresów
 możliwe dołączanie nagłówków opcjonalnych dla realizacji opcji
włączonych w pakiecie IPv4
Łączenie IPv4 i IPv6
Gateway
 Przesyłanie między urządzeniami z różnymi wersjami IP
 Prosta alternatywa translacji
 Komputer pośredniczący
 obsługuje obie wersje
 łączy się z każdym według jego możliwości
Rozwiązanie dla konkretnej aplikacji
 np. dla HTTP już dawno dostępne
Tytuł prezentacji
DZIĘKUJĘv6