IPv6 alapok (elmélet és gyakorlat) Fábián Attila fabian.attila1994@gmail.com
Miről lesz szó? 1. Az IPv4 története 2. Az IPv6 története 3. Átállás IPv4-ről IPv6-ra 4. Az IPv6 címek felépítése 5. IPv6 címzés 6. IPv6 címkonfiguráció
Az IPv4 története 1981-től napjainkig
Általánosan az IPv4-ről Az Internet Protocol negyedik verzióját 1981 szeptemberében publikálja az IETF. Az IPv4 32 bites címeket használ, melyek négy, 8 bit hosszúságú oktettekből állnak. Összesen 2 32 (körülbelül 4,3 milliárd) cím különböztethető meg. Ebből levonva a D, E osztályokat és privát címeket megkapjuk az interneten megjelenhető címek számát (3,7 milliárd).
Az IPv4 címtár kimerülése Az IANA 2011 februárjában osztotta ki az utolsó rendelkezésére álló címtartományt. Hálózati címfordítással, és portfordítással sikerült lelassítani a címek fogyását, de a szolgáltatóknál lévő címek száma 2014 májusára 8 millió alá csökkent. Az IoT és mobilis eszközök terjedésének hatására egyre több címre van szükség. Sejthető, hogy egy új megoldás kell
Az IPv6 története 1998-tól napjainkig
Általánosan az IPv6-ról Az Internet Protocol hatodik verziójával kapcsolatos első RFC dokumentum 1998 decemberében jelent meg. Az IPv6-ot az IPv4 hiányosságainak kiküszöbölésére fejlesztették: biztonság (IPSec), mobilitás (Mobile IPv6), priorizáció (QoS).
Általánosan az IPv6-ról Az IPv6 128 bites címeket használ, melyek nyolc, 16 bit hosszúságú hextettekbe rendeződnek. Összesen 2 128 (körülbelül 3,4*10 38 340 szextillió) cím különböztethető meg. A hatalmas címtér megszünteti a hálózati címfordítás iránti szükséget, így akár egy belső hálózat minden számítógépe rendelkezhet internetről elérhető címmel.
Új funkciók az IPv6-ban QoS Quality of Service: Mialatt az IPv4 legjobb szándék szerint továbbítja a csomagokat (nem tesz különbséget), addig az IPv6 beépítetten tartalmaz QoS-t és a késleltetés-érzékeny csomagokat előnyben részesíti a szállítás során. Mobile IPv6: Ez a funkció biztosítja, hogy ez eszköz elérhető maradjon egy hálózaton belül, függetlenül a fizikai helyétől ( barangolás ). A barangolás során a hely és IPv6 cím változhat, a szállításrétegbeli kapcsolat állandó marad.
Új funkciók az IPv6-ban Állapotmentes cím autokonfiguráció (SLAAC Stateless Address Autoconfiguration): Olyan módszer, mely lehetővé teszi az eszközök számára, hogy DHCP szerver, és rendszergazdai beavatkozás nélkül jussanak konfigurációhoz. Például: prefixum hossz, hálózat cím, alapértelmezett átjáró. Hálózati rétegbeli biztonság: Az IPv6 fejlesztői csomag szintű titkosítást tesznek lehetővé IPSec használatával, mely kiterjedhet a csomag fejrészére és tartalmára, vagy csak a tartalmára. A teljesen titkosított csomagot az IPSec képes magától továbbítani a hálózaton, vagy beágyazni azt egy UDP szegmensbe.
Átállás IPv4-ről IPv6-ra Módszerek a nehézségek könnyítése
Az IPv4 és az IPv6 együttélése Az IPv6-ra váltásnak nincs meghatározott ideje. A belátható jövőben az IPv4 és IPv6 együtt fog létezni, az átmenet évekig fog tartani. Az IETF különféle protokollokat és eszközöket fejlesztett ki, hogy elősegítsék az átállást: kettős protokollkészlet (dual stack), alagúttechnika (tunneling), címfordítás (NAT64).
Kettős protokollkészlet (dual stack) A kettős protokollkészlet lehetővé teszi az IPv4 és az IPv6 együttműködését azonos hálózaton. A dual stack eszközök egyszerre futtatják mindkét protokollkészletet.
Alagúttechnika (tunneling) Az alagúttechnika olyan megoldás, amely IPv6 csomagot szállít át IPv4 hálózaton. Az IPv6 csomagot pont ugyanúgy ágyazzák be az IPv4 csomagot, mint bármely más adatot.
Címfordítás (NAT64) A Network Address Translation 64 (NAT64) lehetővé teszi az IPv6 eszközök számára, hogy IPv4 eszközökkel kommunikáljanak, és fordítva.
Az IPv6 címek felépítése És szabályok a rövidítésére
IPv6 cím felépítése Az IPv6 címeket hexadecimális számrendszerben ábrázoljuk. A számjegyeket 0-F-ig ábrázoljuk (IPv6 címek esetén nem különböztetjük meg a kis- és nagybetűket). A 128 bites cím nyolc darab 16 bit hosszú hextettből áll. Mivel négy bit ad ki egy hexadecimális számjegyet, így 32 hexadecimális számjegyből áll a cím.
A címek rövidítése Az IPv6 címek preferált formátuma: ABCD:EF01:2345:6789:9876:5432:10FE:DCBA Mind a 32 számot kiírjuk. A preferált formátumú címekkel való munka nehéz, egyszerűsíteni kell. Két szabályt alkalmazhatunk a címek rövidítésére: A vezető nullák elhagyása, A csupa nullát tartalmazó szegmensek elhagyása.
A vezető nullák elhagyása A hextettek vezető nulláit elhagyhatjuk. Például: A 0ABC lehet ABC, A 0FF0 lehet FF0, A 0000 lehet 0. A szabály csak a hextettek elején lévő nullákra vonatkozik, a végükön levőkre nem. Például: 2001:0DB8:000A:0000:B000:0C00:00D0:0001 2001:DB8:A:0:B000:C00:D0:1
A csupa nullát tartalmazó szegmensek elhagyása A második szabály lényege, hogy a csupa nullát tartalmazó szegmenseket dupla kettősponttal helyettesíthetjük (::). Egy címen belül csak egy ilyen lehet, így érdemes a leghosszabb csoportot rövidíteni. A rövidített címet tömörített formátumnak is hívjuk. Példa: 2001:0DB8:0000:ABAD:0000:0000:0000:0111 2001:DB8:0:ABAD::0111
Az IPv6 előtag hossz (prefixum) Emlékezzünk rá, hogy az IPv4 címek előtagját (hálózati részét) pontozott maszkkal vagy perjeles prefixummal azonosíthatjuk (255.255.255.0 = /24). Az IPv6 az előtag hosszát használja a cím előtag részének meghatározására (prefix). Az előtag hossz az IPv6 cím hálózati részét határozza meg. 0 és 128 közé esik, LAN-ok esetében tipikusan /64.
IPv6 címtípusok Egyedi cím (unicast): egyedileg azonosítja egy IPv6 képes készülék valamely interfészét. Csoportos cím (multicast): a csoportcím arra való, hogy egyetlen IPv6 csomagot több címzettnek is elküldjünk. Bárki cím (anycast): ehhez a címhez több eszközt is hozzá kell rendelni. Azok a csomagok, amelyek erre a címre irányulnak, a legközelebbi hozzárendelt eszközhöz továbbítódik.
IPv6 egyedi címek - unicast Globális egyedi cím (global unicast), Adatkapcsolati szinten helyi (link-local), Visszacsatolás (loopback), Meghatározatlan (unspecified), Egyedi helyi (unique local), Némileg hasonlít az IPv4 privát címekhez, nem jelenhet meg az interneten. Beágyazott IPv4.
Globális egyedi cím (global unicast) A publikus IPv4 címekre hasonlít. Az ilyen címek globálisan egyedi, interneten továbbítható címek. Konfigurálható statikusan vagy dinamikusan. Az IANA eddig 38 prefixet osztott ki (általában /23).
Globális egyedi cím (global unicast) A globális cím három részből áll: Globális forgalomirányító előtag, Alhálózat azonosító, Interfész azonosító.
Adatkapcsolati szinten helyi (link-local) A link-local címeket az azonos helyi kapcsolaton lévő eszközökkel történő kommunikációra használják. Az egyediség csak kapcsolaton belül lényeges. Statikus konfiguráció esetén általában egy eszköz minden portjához ugyanazt a címet rendelik. Minden IPv6 képes interfésznek kötelezően rendelkeznie kell link-local címmel. FE80::/10 tartományban van (FE80-FEBF).
Visszacsatolási (loopback) A loopback címet arra használja az állomás, hogy saját magának küldhessen csomagot. Az IPv6 loopback cím ::1/128, vagy tömörítetten ::1.
Meghatározatlan (unspecified) A meghatározatlan cím nem rendelhető interfészhez, és egy csomagnak csak forráscíme lehet. Akkor láthatóak ilyen címek, ha egy eszköz még nem rendelkezik konfigurációval, vagy ha a csomag forrása a cél számára lényegtelen. ::/128, rövidítetten ::.
IPv6 címkonfiguráció Hogyan szerezhetnek az állomások címeket?
Általánosan a címkonfigurálásról Történhet statikusan vagy dinamikusan. Egy interfésznek több IPv6 címe is lehet (akár globális egyediből is lehet több). Alapértelmezett átjáróként használhatjuk a hálózathoz csatlakozó forgalomirányító link-local címét.
Statikus konfiguráció Állomások és hálózati eszközök interfészeit felkonfigurálhatjuk statikusan IPv6 címmel. Statikusan beállíthatjuk a globális egyedi címet és a link-local címet. Ha nem állítunk be statikusan link-local címet, akkor minden interfész automatikusan generál magának egyet. A statikus konfiguráció rosszul skálázható és felügyelhető.
Dinamikus konfiguráció IPv6 esetén három lehetőségünk van dinamikus címszerzésre: Csak DHCPv6 (Dynamic Host Configuration Protocol version 6) szerver használata, DCHPv6 és SLAAC használata együtt, Csak SLAAC (Stateless Address Autoconfiguration) használata.
SLAAC Stateless Address Autoconfiguration Olyan módszer, amely lehetővé teszi az eszköz számára, hogy beszerezze a prefixumot, a prefixum hosszát és az alapértelmezett átjáró címét egy IPv6 forgalomirányító eszköztől DHCPv6 szerver nélkül is.
DHCPv6 Dynamic Host Configuration Protocol version 6 Az eszköz automatikusan kaphatja meg a címzési információkat (globális egyedi cím, előtag hossz, alapértelmezett átjáró, DNS-szerverek címei, stb.). A DHCPv6 szerver felügyeli a kiosztott címeket, és újítja meg őket, amennyiben szükséges.
Az interfész azonosító SLAAC használatakor (és állapotmentes DHCPv6 használata esetén) az interfész a forgalomirányítótól csak az előtagot és az előtag hosszt kapja meg, interfész azonosítót magának kell generálnia. Ez lehet teljesen véletlenszerű generálás, vagy a szabványos EUI-64 (Extended Unique Identifier) módszerrel. Az interfész a MAC-címe segítségével állít elő egy globálisan egyedi címet, ami közlekedhet az interneten. A MAC-cím csak 48 bit, a cím középre beszúr egy FF:FE tagot. Példa: MAC-cím: FC:99:47:75:CE:E0 Interfész azonosító: FC99:47FF:FE75:CEE0
Köszönöm a figyelmet, lássuk a gyakorlatot!
Források A diasor képi és szöveges elemeket tartalmaz a Cisco CCNA Routing & Switching tananyagból. Egyéb források: http://blog.apnic.net/2014/11/04/the-story-of-ipv6/ http://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.xhtml https://www.icann.org/news/announcement-2-2014-05-20-en http://www.computerweekly.com/opinion/ipv6-offers-data-packet-security-and-quality-of-service-butso-does-ipv4 http://www.ipv6.com/articles/general/ipv6-the-next-generation-internet.htm http://www.hwsw.hu/hirek/22953/az-ericsson-ipv6-nemzetkozi-barangolast-mutatott-be-kereskedelmigprs-halozaton.html https://www.ietf.org/rfc/rfc2460.txt https://tools.ietf.org/html/rfc5342 http://www.cisco.com/c/en/us/td/docs/ios/ipv6/configuration/guide/12_4t/ipv6_12_4t_book/ip6- dhcp.html http://www.cisco.com/c/en/us/support/docs/ip/ip-version-6/25156-ipv6tunnel.html https://tools.ietf.org/html/rfc2080#section-2.6 http://www.ipv6.ru/english/history/ipv5.php https://www.ietf.org/rfc/rfc1819.txt