5. Néhány elterjedt IPv6 implementáció jellemzői

Ebben a fejezetben a projekt résztvevői az általuk használt és ismert implementációkat vizsgálták meg IPv6-os támogatottság szempontjaiból. Ezek az AIX, BSD Unix (FreeBSD, OpenBSD, NetBSD), HP-UX, Linux, Microsoft Windows 2000, Solaris és a Tru64 UNIX.

5.1. AIX és az IPv6

5.1.1. Áttekintés

Az AIX az IBM által létrehozott UNIX alapú operációs rendszer, melyet az RS/6000 rendszerek teljes körű támogatására írtak 32 és 64 bites környezetben. Az AIX mind a 32, mind a 64 bites alkalmazásokat megfelelően támogatja. Az IPv6 protokollra nézve az AIX széleskörű támogatást ad, az IPv4-hez hasonlóan a rendszer szerves, integrált részét képezi. Az IPv6 megvalósítás jelenleg is használható, de még vannak hiányosságai, illetve kísérleti állapotban levő elemek, mint például a flow labeling (folyamcimkézés) [RFC2460]

5.1.2. AIX-ben levő IPv6 megvalósítás tulajdonságai

5.1.3. Ipv6 implementáció

Az IPv6-hoz és IPv4-hez közös TCP-UDP szállítási réteg tartozik, az autokonfigurációs üzeneteket egy közös daemon processz segítségével kezeli (INRIA implementáció jellemzője).

5.1.4. Az AIX egyes verzióiban megjelenő IPv6 megvalósítások, újdonságok

Megfigyelehető, hogy már 1997-ben lényegében az IPv6 támogatás megjelent az AIX-ben, és azóta dinamikusan fejlődik (a legutóbbi frissítés 2000. október 3-án jelent meg). A 4.3.3 verzió már csak néhány hiányosságot tartalmaz, erre utalnak a sorozatban megjelenő hibajavítások és kiegészítések. [AIX_From_Strength_to_Strength]

5.1.5. Részletesen az AIX IPv6-os megvalósításáról

5.1.5.1. Programozói interfész

A megvalósított programozói interfész függvényei általában C alapúak:

5.1.5.2. Konfigurációs interfész

Különböző konfigurációs fájlokban pl.: netsvc.conf, socks5c.conf, irs.conf, /etc/hosts, resolv.conf az Ipv6 protokoll megjelenik.

5.1.5.3. Parancsok

5.1.6. Installálhatóság

Az AIX rendszer szerves része az IPv6 megvalósítás, így a rendszer telepítésével együtt az IPv6 is rendelkezésre áll.

5.1.7. Konfigurálás

A rendszer integrált része az IPv6 protokoll ugyanúgy, ahogy az IPv4-es is. Ez a grafikus rendszerkonfiguráló program (smit) használatakor figyelhető meg legjobban, ahol az IPv4 és IPv6 beállítások egymás mellett, egyenrangúan szerepelnek. A tunnelek (alagút) és hoszt konfigurációja viszonylag egyszerű, a router konfiguráció még nem teljesen implementált.[AIXman]

5.1.8. IPv4-ről IPv6-ra áttérés lehetősége

Az AIX mind IPv4, mind IPv6-os alkalmazásokat támogat, a különböző alkalmazások általában egy kapcsolóval beállíthatók, hogy IPv4, vagy IPv6 környezetben fussanak. A konfigurált tunneling is megvalósított, így általánosságban elmondható, hogy az AIX azon megvalósítások közé tartozik, melyek a két protokoll közötti váltást lehetővé teszik.

5.1.9. Összegezve

Ha a jelenlegi gyors ütemű IPv6-os alkalmazásfejlesztés folytatódik, az AIX az első olyan operációs rendszerek között lesz, melyek az IPv6 protokollt teljes körűen támogatják.

5.2. BSD UNIX IPv6 implementációk

5.2.1. Áttekintés

Az BSD alapú rendszerekre, kutatási célra való jó használhatóságuk miatt, 3 kísérleti IPv6 implementációja is készült. Az első a francia INRIA [INRIA] implementáció, melynek fontosabb tulajdonságairól bővebben a Networkshop'98 [NWS98] konferencia előadáson és a TERENA 98 [TERENA98] előadásaiban lehet olvasni. Az implementáció jó tulajdonságai és hordozhatósága folytán az AIX IPv6-os implementációjának az alapja lett [BULL]. Az NRL [NRL] amerikai implementáció elsősorban a biztonságra, az IPSec-re koncentrált, de IPv6-os funkcionalitásban, használhatóságban elmaradt a másik kettő implementációtól. A japán KAME [KAME] implementáció célja egy szabad forráskodú IPSec-el is ellátott cross-platform IPv6 implementáció elkészítése volt, amely a [WIDE] implementációból fejlődött ki. 1999. folyamán a 3 implementáció szerzői megállapodtak abban, hogy egységesítik a kódkészletet, hogy a BSD platformra egységes IPv6-IPSec kódkészlet jöjjön létre. A kernel legnagyob részt a KAME-ből, a felhasználói programok az INRIA-ból és a KAME-ből, az adminisztratív programok egy része az INRIA-ból és az NRL-ből és az IPSec az NRL KAME környezetbeni újraimplementálásból jön létre. Az OpenBSD, a szokásos különutassága miatt, még 1999-ben teljes egészében átvette az NRL IPSec-jének IPv4-es részét és most már nem akarja átvenni a KAME egységesített IPv6-IPv4 alapú IPSec-jét. Ilyenformán az OpenBSD-ben csak IPv4-re létezik IPSec, míg IPv6-ra nem, ami pedig követelmény volna. A KAME implementáció a hivatalos IPv6 platform a FreeBSD [FreeBSD] esetén 4.0-tól kezdve, OpenBSD-ben [OpenBSD] 2.7-től, NetBSD [NetBSD] esetén pedig az 1.5-ös verzió óta. Ezenkívül a KAME támogatja kísérleti implementációban a FreeBSD 2-es, FreeBSD 3-as , a BSDI 3-as és a BSDI 4-es platformot. A BSDI következő hivatalos változata szintén a KAME implementációra fog épülni (eddig az NRL implementációjára épült). A jelenlegi ismertető a FreeBSD 4.2-őt, az OpenBSD 2.8-at és a NetBSD 1.5-öt tárgyalja.

5.2.2. IPv6 szabványok támogatottsága

5.2.3. Infrastrukturális áttérési követelmények

A KAME alapú BSD rendszerek az IPv4 és az IPv6 protokollokat egyszerre támogatják, így a régiről az újra való áttérés fokozatosan is elvégezhető, kisebb lépésekben. A különböző változatai a KAME implementációnak másképpen kezelik a IPv4 mappelt IPv6 címeket.

5-1 táblázat: IPv4 mappelt IPv6 cím támogatás *BSD rendszerekben
Szerver oldalon, IPv4 mappelt IPv6 cím érkezik egy mindent elfogadó sockethez Kliens oldalon IPv4 mappel IPv6 címmel lehet kapcsolatot kezdeményezni
FreeBSD 4.2 konfigurálható, alapesetben elfogadja támogatott
OpenBSD 2.8 nem támogatott nem támogatott
NetBSD 1.5 konfigurálható, alapesetben nem fogadja el. támogatott

Mindegyik implementáció támogatja a konfigurált tunnelt, de az automatikust tunnelt egyik sem. A tunnelezési technikák közül támogatott még a 6to4 tunnel is, illetve a jelenleg üzemelő tunnel brokerek többsége KAME implementáció alatt működik.

5.2.4. Az IPv6 beállítása

5.2.4.1. Kernel támogatás

A BSD UNIX-ok az új Internetes protokoll támogatásához kernel támogatás is szükséges. Mindegyik rendszerben a GENERIC kernel támogatja az IPv6-ot. A támogatás engedélyezéséhez a INET6 opciót szükséges engedélyezni

5.2.4.2. DNS szolgáltatás

Minden KAME rendszer mind az IPv4-es, mind az IPv6-os kapcsolatokon keresztüli AAAA lekéréseket támogatja. A resolvert és a szerver modult már portolták IPv6 alá, és az alkalmazások a getaddrinfo és a getnameinfo hívásokkal lekérhetik az AAAA bejegyzéseket. Az A6, DNAME bejegyzéseket jelenleg nem támogatja semmelyik KAME implementáció.

5.2.4.3. Router/host

IPv6-tal kommunikáló router vagy hoszt beállítása rendszeradminisztrátorként sysctl parancsokkal lehetséges. A lehetséges beállítások a következőek.

5-2 táblázat: IPv6 működési mód a KAME implementációban
net.inet6.ip6.accept_rtadv net.inet6.ip6.forwarding a csomópont működése
0 0 hoszt csomópont (kézi konfigurációval)
1 0 hoszt csomópont autókonfigurációval
0 1 router
1 1 nem specifikált

Természetesen minden rendszeren az /etc/rc.conf konfigurálásval is beállítható az IPv6 konfiguráció. Külön szabályozható IPv4-re és IPv6-ra, hogy hoszt vagy router üzemmódban működjön a csomópont.

5.2.4.4. Tunnelek

Konfigurált (manuális) tunnel létrehozása a gifconfig parancs segítségével lehetséges, majd ezt az ifconfig-al inicializálhatjuk és route add-al definiálhatunk útvonalat.

5.2.4.5. Ellenőrzés

A hálózat beállítása után az alapvető működés helyességét a ping, ping6, traceroute, traceroute6, netstat, tcpdump, ndp programokkal tesztelhetjük le.

5.2.5. Alkalmazások

A legtöbb alacsonyszintű alkalmazás működik IPv6 alatt. A KAME alapú rendszerekben rendelkezésre állnak alapvető IPv6-os alkalmazás fejlesztői interfészek (API) és bináris programozói kitek, melyek elősegítik további programok portolását valamint újak létrehozását az új protokoll alá. A KAME implementáció támogatja IPv6 fölött az összes inetd-ből induló szervert (ftp, telnet, rlogin, rsh, rexec). Rendelkezésre áll a sendmail, az ssh több változata (SSHv1, OpenSSH), lpd és ppp IPv6 kompatibilis változata.

5.2.6. Összegzés

A KAME IPv6-os implementációja kiforrott és szinte teljes körű megoldást nyújt. Támogatja az új protokoll hoszt és router specifikációit is, és a rendszerbe integrált könnyen kezelhető segédprogramokkal a beállítás gördülékenyen elvégezhető.

5.3. Hewlett-Packard, HP-UX

A Hewlett-Packard által készített és forgalmazott HP-UX operációs rendszer a UNIX egyik legfontosabb kereskedelmi implementációja. Az Interneten igen sok HP-UX alapú PA-RISC szerver működik, és a HP-UX munkaállomásokat gyakran használják kliens programok futtatására. Így érthető, hogy a HP számára is fontos az IPv6 implementálása és támogatása.

Jelenleg három különbözõ IPv6 megvalósítás létezik a HP-UX rendszerekhez. A "hivatalos", HP által készített IPv6 implementáció, a Swedish Institute of Computer Science http://www.sics.se/ által készített SICS IPv6, melyet a HP elismer ugyan, de nem támogat és a Mentat protokol stackje, amely sok egyéb rendszer mellett HP-UX-on is fut.

5.3.1. A HP IPv6 implementációja

A HP által készített IPv6 implementáció elsõ verziója (IPv6 Developer's kit V1.0) 1998. decemberében jelent meg. A jelenlegi utolsó verzió (IPv6 Developer's kit V1.1) 2000. márciusi dátumú. Az implementáció 32 és 64 bites (V1.1-tõl) környezetben is használható, de kizárólag a HP-UX 11.0 operációs rendszer alatt fut. A V1.1 a HP-UX 11.0 release 9905-öt igényli. A korábbi HP-UX verziókat nem támogatják. A szoftver ingyenesen letölthetõ a http://www.software.hp.com/ címrõl. Az implementáció az IETF által elfogadott szabványokon alapul, így elvileg teljes mértékben képes együttműködni más IPv6 implementációkkal. A jelenlegi implementáció deklaráltan kísérleti, tesztelési célokat szolgál, és teljes IPv6 funkcionalitást biztosít a HP-UX 11.0 operációs rendszer alatt.

A V1.1 megvalósítja, illetve támogatja többek között az IPv6 unicast és multicast címzést, címfeloldást, router felderítést, TCP-t és UDP-t, autokonfigurációt, IPv6 over IPv4-et automatikus és kézzel konfigurálható alagutakon, ICMPv6-ot, stb. Az IPv6 képessé tett alkalmazások többek között: ftp kliens és szerver, telnet kliens és szerver, inetd, sendmail,. rsh kliens és szerver, rlogin kliens és szerver, DNS kliens és szerver, valamint egy sor utility, pl: ifconfig, netstat, route, ping, nslookup stb.

5.3.2. A SICS IPv6 implementáció

A Svédországban készített SICS IPv6 implementáció a HP-UX egy korábbi változatán, a HP-UX 9.05-ön fut http://www.ipv6.sics.se/spec.html . A szoftver teljesen saját fejlesztésű, a máshonnan átvett és beépített IPsec kivételével. Funkcionalitása valamivel szélesebb körű, mint a HP által készített implementáció, hiszen az alapvetõ dolgokon kívül (IPv6, ICMPv6, autokonfiguráció, tuneling, socket API, stb.) megvalósítja az IP security-t is. A portolt alkalmazások között megtalálható az Apache Web szerver is.

5.3.3. A MENTAT IPv6 implementáció

A MENTAT a saját, teljes TCP/IP protokoll stack megvalósításának részeként kínálja az IPv6-ot (duál IPv4/IPv6 stack formában) sok operációs rendszer mellett HP-UX-hoz is http://www.mentat.com/tcp/tcp.html . A MENTAT kifinomult architektúrával és megoldásokkal rendelkezik, a vonatkozó RFC-knek megfelel. Az alapvetõ funkcionalitáson túl megvalósították az IPsec-et is.

5.4. IPv6 és Linux implementáció

Noha már a 2.1-es Linux kernel is tartalmazta az IPv6-os támogatáshoz szükséges modulok javarészét, azonban a 2.2.x kerneltől kezdve beszélhetünk natív IPv6 támogatásról a Linux kernel esetében. Az egységes kernellel ellentétben a sok disztribúció és az alkalmazások központosított fejlesztésének a hiánya miatt (bazaar vs cathedral modell) meglehetősen nehéz egy átfogó képet adni a Linux alkalmazás-szintű IPv6-os támogatásáról.

5.4.1. A Linux kernel által támogatott IPv6-os vonatkozású RFC-k

A legfrissebb (2.2.17-es) stabil kernel által támogatott RFC-k a következők:

A legfrissebb (2.4.0-test10) fejlesztői kernel a fentieken túl a következő további RFC-t támogatja:

5.4.2. Disztibúciók és IPv6-os fejlesztőcsapatok

A nagyobb Linux disztribúciók már támogatják az IPv6-ot, de léteznek disztribútorfüggetlen fejlesztőcsapatok is. Ez utóbbiak sokkal több alkalmazást készítettek fel IPv6-ra, mint a nagy disztribútorok. A központosított fejlesztés hiánya miatt bizonyos alkalmazásokra több megoldás is született, ugyanakkor nincs működő program néhány kulcsfontosságúnak mondott szolgáltatás esetében.

Az IPv6-os alkalmazások [Apps] [Apps2], [RPM] fejlesztésével foglalkozó főbb csoportosulások, és disztribúciók a következők:

A hiányzó programok pótlásának további lehetséges módja, hogy más operációs rendszerek megfelelő szoftvereit hozzuk át Linuxra. Az egyik legkézenfekvőbb megoldás, hogy a BSD alá fejlesztett programokkal próbálkozunk [KAME]. Erről a módszerről általánosságban megállapítható, hogy a forráskódok többsége kompatibilis a 2.2.x-es Linux kernellel és a glibc2-vel, ezért a feladat nem túzottan nehéz.

5.4.3. Elérhető átállási mechanizmusok és működési módok

A megfelelő csomagokkal felvértezett Linux-os gép működtethető mind dual stack, mind tisztán IPv6-os (és természetesen IPv4-es) üzemmódban, valamint támogatja a tunnelezést is. Mégsem lehet teljes sikerről beszélni, hiszen hiányzik néhány kernelmodul (például 6to4), valamint olyan alapszolgáltatások IPv6-os változatai, mint például a syslog, RPC(mount, NFS), és a Samba.

A programokat és kernel modulokat általában a "régi", IPv4 -es források újraírása, kiegészítése révén tették alkalmassá az IPv6-os működésre. Azonban ki kell(ett) fejleszteni néhány olyan új szoftvert, melyek szükségességét az IPv6 új szolgáltatásai indokolják. Ilyen például a RADVD (Router ADVertisement Daemon) [Lars_RADVD], mely a router oldali állapot-nélküli autokonfigurációs szolgáltatást nyújtja az alábbi RFC-knek megfelelően (információink szerint egyenlőre csak Ethernet felett):

A RADVD tulajdonságai:

5.4.4. Példa-konfiguráció, HOWTO

Egy Redhat disztribúcióra alapozott IPv6-os gép összeállításához igen jó és részletes HOWTO-t találhatunk Peter Bieringer oldalán [Bieringer_howto]. Itt nem csak program leírások, és installációs segédletek találhatók, hanem a programok többféle formátumban is letölthetők. Az oldal szerint az alábbi feltételek szükségesek egy Linuxos PC IPv6-ra való beállításához (a konfiguráció természetesen feladatfüggő, ez csak egy egyszerű kliensgép adatai):

A hiányzó alapvető kernel modulok:

Egyéb hiányzó kernel modulok:

A meglévő és hiányzó alkalmazások összefoglaló táblázata Peter Bieringer nagyon jó site-ján [Bieringer_apps] szintén megtalálható.

5.5. A Microsoft IPv6 megoldásai

A Microsoft két IPv6 megoldást kínál. Az időrendben hamarabb megjelent a Microsoft Research terméke, így hivatalosan nem támogatott, MSRIPv6 csomag [USENIXNT]. Erre épült a hivatalos, jelenleg “Technology Preview” státusú IPv6 programcsomag. Az MSRIPv6 Windows NT 4 és Windows 2000 operációs rendszerek alatt működik, az Technology Preview IPv6 csak Windows 2000 SP1 alatt. A két csomag tulajdonságokban meglehetősen hasonló, pusztán a telepítés módja különbözik. [MSRIPV6] [MSTPV6]

5.5.1. Tulajdonságok

Mindkét csomag gyakorlatilag ugyanazon tulajdonságokkal rendelkezik, a támogatott operációs rendszerek kivételével. A Microsoft IPv6 implementációja alapvetően megvalósítja a fő IPv6 protokollokat, illetve - bizonyos eltérésekkel - az RFC 2553 által leírt programozói felületet. Az IPSec AH és ESP ugyancsak rendelkezésre áll.

A telepítőkészlet alapvetően a protokoll stacket tartalmazza, minimális diagnosztikai és segédprogram, és ennél is kevesebb önálló IPv6 alkalmazás tartozik hozzá. Mindkettő tartalmazza viszont az Internet Explorer IPv6 feletti működéséhez szükséges kiegészítőket. Ezen kívül ftp és telnet kliens, IPv6 ping, IPSec konfigurációt beállító segédprogram és néhány egyéb konfiguráló és lekérdező alkalmazás tartozik a csomagokhoz. Különböző portolt applikációk külön letölthetőek. Ezek között van http szerver és multicast eszköz is.

Az alapvető IPv6 funkciókhoz mindkét verzió elégséges. A programozói felület és a fejlesztőkészlet része a csomagnak, így segítségükkel a Windows IPv6 alkalmazások fejlesztése megkezdődhet.

6to4 [6to4] áttérési eszköz és ennek konfigurációs segédprogramja része minkét csomagnak.

Az MSRIPv6-hoz külön letölthető tunnel-broker [TUNNEL_BROKER] szoftver.

5.5.2. Telepítés

Mindkét csomagra igaz, hogy az IPv4 protokollnak már telepítve kell lennie a gépen, mielőtt az IPv6-ot installálhatnánk. Az MSRIPv6 érdekessége, hogy a készlethez jár a forráskód is.

Az MSRIPv6 kicsomagolás után a Vezérlőpulton keresztül a szabványos Windows telepítési eljárással telepíthető, mint további hálózati protokoll. Az operációs rendszerre telepített Service Packektől függően bizonyos dll-eket kézzel kell lecserélni, és ugyancsak kézzel kell telepíteni - szintén dll cserével - az Internet Explorer IPv6 támogatását.

Az Technology Preview IPv6 csomag telepítése két lépésben történik. Először az installáló program segítségével a kiegészítés HotFix stílusban telepítendő a Windows 2000 alá, majd ezek után a szabványos módon a protokoll hozzáadható a rendszerhez. A HotFix telepítés előnye, hogy így az IPv6 a rendszer standard része lesz, ez könnyebbséget jelent a későbbi Service Pack és HotFix telepítéseknél.

Mindkét esetben, de főleg a Technology Preview változatnál a telepítés és az eltávolítás könnyedén végrehajtható.

5.5.3. Konfigurálás

Mindkét IPv6 csomag elsősorban az autkonfigurációt támogatja. Az IPv4 protokollhoz hasonló grafikus felületű konfigurációs alkalmazás nincs, címeket és egyéb paramétereket az MSRIPv6 esetén a Windows registry közvetlen módosításával, a másik csomag esetén pedig parancssorból lehet módosítani, nem perzisztens módon. Hasonló módon kell konfigurált tunneleket beállíani.

Ez bizonyos esetekben hátrányos lehet, főleg teszt környezeteknél, mivel egyrészt autokonfigurációs router hirdetéseket más eszközzel kell biztosítani a hálózaton, másrészt nehézkes az ettől különböző paraméterek beállítása.

Az IPSec beállítások megtételéhez rendelkezésre áll egy grafikus segédprogram, amely segítségével az IPSec konfiguráció beállítható. Ez ugyan csak egy grafikus előtét a parancssori programhoz, de nagy könnyebbséget jelent a kezdeti konfiguráció kikísérletezéséhez.

5.6. A Solaris v8 operációs rendszer IPv6-os implementációja

A SUN Solaris operációs rendszere a Solaris 8-al kezdődően nyújt IPv6-os támogatást. A Solaris 8-at megelőzően csak kísérleti támogatás létezett.

A Solaris 8-as operációs rendszer teljes támogatást nyújt mind az IPv4-es, mind az IPv6-os hálózati protokollhoz. A Solaris 8-nál az IPv6-os támogatás nem egyszerűen prototípus, hanem széleskörűen letesztelt integrált szolgáltatás, amely az operációs rendszer installálásakor opcióként választható, alapértelmezésben azonban nincs telepítésre kijelölve. A Solaris 8 a hálózati protokollt tekintve a kizárólagos IPV6-os üzemmódot még nem támogatja , IPv4-IPv6 kettős - ún. "dual-stack" -, illetve kizárólagos IPv4 üzemmódban azonban egyaránt használható.[SOLARIS_FAQ]

A "dual-stack" üzemmód párhuzamosan mind az IPv4-es, mind az IPv6-os hálózati protokollt támogatja. Mindazon host-ok, melyek ezzel az üzemmóddal rendelkeznek, egyidőben képesek kommunikálni IPv4-es és IPv6-os csomópontokkal (node-okkal) egyaránt. A "dual-stack" üzemmód nagy előnyeként említhető, hogy az IPv4-es alkalmazások zavartalanul futhatnak tovább a kettős (IPv4-es és IPv6-os) hálózati környezetben.

Az IPv6-os szolgáltatások használatához a name-szolgáltatásokat (DNS, NIS, NIS+) el kell látnunk a megfelelő IPv6-os bejegyzésekkel.

5.6.1. Elérhetõ átállási mechanizmusok a Solaris 8 operációs rendszeren

A Solaris 8 két átállási mechanizmust támogat:

  • Dual-stack: IPv4-es és IPv6-os támogatás ugyanazon az operációs rendszeren.

  • Tunnel-ek: IPv6-os csomagok átvitelét teszi lehetővé IPv4-es hálózati környezetben oly módon, hogy az IPv6-os csomagokat IPv4-es csomagokba ágyazza be. A folyamat neve "tunneling", melyet végezhet akár a Solaris 8 operációs rendszerű hoszt, vagy akár az abból épített router.

  • A protokoll-transzlálás (translating), amely a kizárólag IPv6-os csomópontok kizárólag IPv4-es csomópontokkal való közvetítő transzlátoron keresztüli kommunikációját teszi lehetővé, még nem támogatott a Solaris 8-ban.

    5.6.2. A Sun-nak az alkalmazások IPv6-ra való felkészítését támogató eszközei

    A Sun által közreadott White Paper [Solaris_White_Paper] útmutató programfejlesztők számára nyújt segítséget az IPv6 protokoll implementációjában, kezelésében, IPv4-es, illetve IPv6-os példákkal illusztrálva az implementálási folyamatot.

    A programfejlesztők és rendszergazdák rendelkezésére áll egy Porting Guide [Solaris_Porting_Guide] útmutató, valamint a Socket Scrubber for C/C++ program [Socket_Scrubber], amely programok forráskódjainak IPv4-es/IPv6-os vonatkozásait segít felderíteni.

    5.6.3. A Solaris 8 által támogatott IPv6-os vonatkozású eszközök, funkciók

    5.6.3.1. A Solaris 8 operációs rendszer IPv6-os alkalmazásai:

    5.6.3.2. A Solaris 8 operációs rendszer IPv6-kiterjesztéssel ellátott hálózati analizáló és nyomkövető eszközei:

    5.6.3.3. A Solaris 8 operációs rendszer IPv6-ot támogató name-szolgáltatásai:

    5.6.4. A Solaris 8 operációs rendszer által támogatott IPv6-vonatkozású RFC-k

    5.6.5. A Solaris 8 által még nem támogatott IPv6-os vonatkozású funkciók

    A DHCPv6, a Java-IPv6 és Mobil-IPv6 támogatás a Solaris operációs rendszer jelenlegi 8-as verziójának még nem képezik a részét, a következő verziókban viszont várhatóan a meglévő IPv6-os modulok mellett ezek is szerepelni fognak.

    Az IPsec for IPv6 az előbbiekhez hasonlóan szintén nem része még a Solaris 8 operációs rendszernek, azonban letölthető opcióként már megjelent a Sun honlapján, mint a Solaris Data Encryption csomag része [SDE].

    5.6.6. Solaris fejlesztési irányvonalak IPv6-os tekintetben

    A jövőben a Solaris következő verzióiban várható, hogy az IPv6 biztonsági kiterjesztése (IPsec for IPv6), valamint a mobilitás (mobil-IPv6) támogatása az operációs rendszer részeként jelenik meg.

    5.7. Tru64 UNIX IPv6 implementáció

    5.7.1. A Tru64 UNIX IPv6 implementációjának áttekintése

    A Compaq Tru64 UNIX egy fejlett, 64 bites architektúrájú operációs rendszer, mely a BSD 4.3, 4.4 és a UNIX System V változatain alapszik, támogatja többek közt az X Window System 6.3-at, és a Motif grafikus felhasználói interfészt is. Az egyik legkiforrottabb 64 bites Unix implementáció, jelenleg az 5.1-es a legfrissebb verziója. Ezen nagymértékben skálázható rendszer 14TB fájlrendszer és 28GB memória felhasználását is lehetővé teszi, több millió felhasználó egyidejű kiszolgálása mellett.

    Míg az 1999. októberében kiadott 5.0-ás verzió esetében az új Internet protokoll használatához egy külön csomagot kellett telepíteni (IPv6 Early Adopters Kit)[EAK](hasonlóan a Tru64 Unix 4.0 változatokhoz), a jelenleg legfrissebb 5.1-es verzió már a rendszerbe integráltan tartalmazza az IPv4 mellett az IPv6-os TCP, UDP és raw socketek támogatását az alkalmazások és parancsok nagy részénél. [TRUE64_UNIX_man][TRU64_best]

    5.7.2. IPv6 protokoll támogatottsága

    5.7.3. Infrastrukturális áttérési követelmények

    A Tru64 UNIX rendszerek az IPv4 és az IPv6 protokollokat egyszerre támogatják, így a régiről az újra való áttérés fokozatosan is elvégezhető, kisebb lépésekben. Az egyes végpontoknak így kétféle címük is lehet, az IPv6-os csomagokat tunnelezve (konfigurált tunnel) lehet továbbküldeni IPv4-es architektúrájú infrastruktúrán, tehát az új verziójú csomagokat IPv4-es csomagba pakolva továbbíthatják a rendszerek, lehetővé téve így az újfajta kommunikációt a régi típusú mellett.

    5.7.4. Az IPv6 beállítása

    5.7.4.1. Kernel támogatás

    A Tru64 UNIX 5.1-es változata az új Internetes protokollt már kernelszinten támogatja, ennek beállításait a régi IPv4-essel együtt a kernel konfigurációnál kell megtenni, melyet a "doconfig -c SYSTEM_NAME" utasítással hajthatunk végre. Ki kell választani az IPV6, és a tunnelinghez az IPTUNNEL opciókat. Az elkészült kernelnek a régi helyére mozgatásával és a rendszer újraindításával használható az új protokoll. Működés közben a "sysconfig -q ipv6" és "sysconfig -q iptunnel" utasításokkal ellenőrizhetjük a megfelelő támogatottság meglétét a kernelben. [RFC1933]

    5.7.4.2. DNS szolgáltatás

    Az operációs rendszer csak az IPv4-es kapcsolatokon keresztüli AAAA lekéréseket támogatja. A resolvert és a DNS szerver rendszert még nem portolták IPv6 alá, de az alkalmazások a getaddrinfo() és a getnameinfo() hívásokkal lekérhetik az AAAA bejegyzéseket.

    5.7.4.3. Router/host

    IPv6-tal kommunikáló router vagy host beállítása rendszeradminisztrátorként az "/usr/sbin/ip6-setup" programmal végezhető el. Itt részletesen beállíthatók a megfelelő interfészek, IPv6 domain név, tunnelek adatai (automatikus/konfigurált), DNS funkciók és egyéb, a protokollhoz kapcsolódó adatok. A beállítási procedúra végén a program felajánlja a szolgáltatás azonnali elindítását, frissíti az /etc/rc.config, /etc/routes és /etc/ip6rtd.conf állományokat, melyeket a biztonság kedvéért célszerű megnézni és szükség esetén szövegszerkesztővel kijavítani.

    5.7.4.4. Interfészek

    Valamely interfész kártya be- vagy átállításánál azt inicializálni kell, melyet az "ifconfig eszköz ipv6 up" utasítással tehetünk meg. Ezzel a programmal beállíthatjuk az interfész azonosítóját is, az ip6interfaceid kapcsoló segítségével. Az interfész leválasztása hasonló módon zajlik, az "ifconfig eszköz -ipv6" paranccsal.

    5.7.4.5. Tunnelek

    Konfigurált (manuális) tunnel létrehozása az "iptunnel create távoli-végpont [helyi-végpont]" segítségével lehetséges, majd ezt az ifconfig-al inicializálhatjuk.

    5.7.4.6. Alapértelmezett router

    Az alapértelmezés szerinti routert a "route add -inet6 default router-cím -dev interfész" utasítással állíthatjuk be.

    Ha IPv6 routerként állítottuk be a rendszert, az ip6rtrd démon állandó időközönként router hirdetményeket továbbít a hálózaton, hogy magát potenciális alapértelmezett routerként ajánlja, és IPv6 cím prefixet is hirdet, mellyel a végpontok cím autokonfigurációt hajthatnak végre. Az IPv6 alrendszer beállítására és finomhangolására a sysconfig vagy a dxkerneltuner segédeszközöket használhatjuk a későbbiekben.

    5.7.4.7. Naplózás

    Az nd6hostd és ip6rtrd démonok tájékoztató és figyelmeztető üzeneteiket a /var/adm/syslog.dated/date/daemon.log állományba jegyzik be. Ennek tartalma a SysMan program Event Viewer moduljával is elérhető. Alapértelmezés szerint nyomonkövetési (debug) üzeneteket nem írnak ki a démonok, ennek engedélyezése az rcmgr segítségével, majd az rcinet restart ipv6 kiadásával történhet.

    5.7.4.8. Ellenőrzés

    A hálózat beállítása után az alapvető működés helyességét a ping, traceroute, netstat, tcpdump programokkal tesztelhetjük le.

    5.7.4.9. IPv6 kompatibilis alkalmazások

    A legtöbb alacsonyszintű alkalmazás működik IPv6 alatt. Fejlesztői szinten is jelentős előrelépés tapasztalható, a Tru64 UNIX fejlesztői rendelkezésre bocsátottak alapvető IPv6-os alkalmazás fejlesztői interfészeket (API) és bináris programozói kiteket, melyek elősegítik további programok portolását valamint újak létrehozását az új protokoll alá.

    IPv4-es és IPv6-os végpontokkal való kommunikáció is megvalósítható az új AF_INET6 socket használatával. A setsockopt() és getsockopt() függvények is képesek az új IPPROTO_IPV6 jelzés használatára, valamint számos új függvénnyel és struktúrával bővült a rendszer, melyek az IPv6-os alkalmazások fejlesztéséhez szükségesek. [TRU64_UNIX_prg_man]

    5.7.5. Összegzés

    A 5.1-es Tru64 UNIX IPv6-os implementációja kiforrott és szinte teljes körű megoldást nyújt. Támogatja az új protokoll hoszt és router specifikációit is, és a rendszerbe integrált könnyen kezelhető segédprogramokkal a beállítás gördülékenyen elvégezhető.


    Copyright

    $Id: 5.implementaciok.html 50 2001-06-07 16:10:02Z mohacsi $