TAMPEREEN TEKNILLINEN KORKEAKOULU Tietotekniikan osasto JANNE RINNE IPv6 - uusi Internet-protokolla Diplomityö Aihe on hyväksytty osastoneuvoksen kokouksessa 15.04.1998 Tarkastajat: Professori Jarmo Harju (TTKK) FM Petri Koskelainen (NRC)
ALKULAUSE Olen tehnyt diplomityöni osana Faster Pro-projektia toimien tutkimuassistenttina Digitaalisen Median Instituutissa Tampereella. Työssä kuvattava koeverkko rakennettiin Tampereen Teknillisen Korkeakoulun Tietoliikennetekniikan laitoksen verkkolaboratorioon. Työni tarkastajina ovat toimineet professori Jarmo Harju ja filosofian maisteri Petri Koskelainen. Heille haluan esittää erityiskiitokset asiantuntevasta ohjauksesta sekä työni tarkastamisesta. Lisäksi haluan esittää kiitokset työkavereilleni hyvästä työilmapiiristä ja erityisesti haluan osoittaa kiitollisuuteni Juha Laineelle ja Marko Anttilalle lukuisista vinkeistä ja neuvoista. Erittäin suuri kiitos kuuluu myös vanhemmilleni Markulle ja Marja-Tertulle heidän antamastaan tärkeästä tuesta. Lisäksi tahdon vielä kiittää Millaa kannustamisesta ja tukemisesta opiskelun aikana sekä karkeakarvaista mäyräkoiraani niistä raittiista ulkoilmahetkistä, jotka toimivat hyvänä vastapainona niin työlle kuin opiskelullekin. Tampereella 10.08.1998 Janne Rinne Piettasenkatu 42 D46 33580 TAMPERE puh. 050-3137630 i
TIIVISTELMÄ TAMPEREEN TEKNILLINEN KORKEAKOULU Tietotekniikan osasto Tietoliikennetekniikka RINNE, JANNE: IPv6 - uusi Internet-protokolla Diplomityö, 75 s., 1 liites. Tarkastajat: Prof. Jarmo Harju, Tampereen Teknillinen Korkeakoulu FM Petri Koskelainen, Nokia Tutkimuskeskus Elokuu 1998 Avainsanat: Internet, Protokolla, IPv4, IPv6 Internetin suuren suosion myötä on eteemme ilmestynyt useita ongelmia, joiden takia on suunniteilla uuden sukupolven Internet-protokolla. Myös verkossa olevien päätelaitteiden huima kehitys on asettanut verkkotekniikalle omat vaatimuksensa, johon IPv6-protokollan on tarkoitus vastata protokollatasolla. Tässä työssä on käsitelty IPv6-protokollan toimintaa ja sen mukanaan tuomia ratkaisuja erilaisiin ongelmiin. Nykyisten IP-osoitteiden loppumisongelmaan IPv6-protokolla tuo ratkaisun suurentamalla osoiteavaruutta 32-bittisestä 128-bittiseksi. Tietoturvan kehittäminen on ollut yksi keskeisin tavoite uudelle protokollalle. IPv6:n suunnittelussa on otettu myös huomioon reaaliaikaliikenteen asettamat vaatimukset. IPv6-protokollan on tarkoitus olla yhteensopiva nykyisin käytössä olevan protokollan kanssa. Niinpä siirtymävaiheen vuoksi on kehitetty menetelmiä, jotka takaavat siirtymisen sujumisen asteittain. IPv6-protokollan käyttöönottokynnystä on pyritty pienentämään automaattisilla asennustoiminnoilla, joiden avulla on saavutettu ns. kytke ja käytä-periaatteen toteutuminen. Tässä diplomityössä on myös esitelty yksinkertaisen koeverkon toimintaa käytännössä. ii
ABSTRACT TAMPERE UNIVERSITY OF TECHNOLOGY Department of Information Technology Telecommunications Laboratory RINNE, JANNE: IPv6 - The new Internet Protocol Master of Science Thesis, 75 pages, 1 enclosure page. Examiners: Prof. Jarmo Harju, Tampere University of Technology M.Sc. Petri Koskelainen, Nokia Research Center August 1998 Keywords: Internet, Protocol, IPv4, IPv6 The popularity and the increasing number of users in the Internet will cause many new problems in the future. That is the reason why designers have started to develop a next generation Internet protocol. Also the rapid development of host computers has set its own demands for the network technology to which the IPv6 protocol tries to answer at the protocol level. In this thesis, the functionality of the IPv6 protocol and the solutions to the different problems have been dealt with. The IPv6 protocol brings its own solution to the exhaust of present IP addresses by enlarging the address space from 32 bits to 128 bits. The development of security aspects has been one central issue in the new protocol. The demands set by the real-time traffic have been also taken into consideration in the design of IPv6. The IPv6 protocol also should be compatible with the IPv4 protocol. Methods, which will guarantee that the transition will happen gradually and easily, have also been developed. Plug and Play-property has been achieved by automatic installation functions, which also reduce the threshold to start to use the IPv6 protocol. In this thesis, the operation of a simple test network in practice has also been studied. iii
SISÄLLYSLUETTELO ALKULAUSE.................................................... i TIIVISTELMÄ...................................................ii ABSTRACT.................................................... iii SISÄLLYSLUETTELO........................................... iv KÄYTETYT LYHENTEET........................................ vi 1. JOHDANTO...................................................1 2. INTERNETIN HISTORIAA.......................................2 2.1 Internetin alkuperä..........................................2 2.2 TCP/IP...................................................3 3. UUDEN PROTOKOLLAN SYNTYHISTORIA.......................5 4. IPv6-PAKETTI.................................................8 4.1 Otsikkokenttä............................................. 11 4.2 Lisäkentät............................................... 12 4.2.1 Solmuoptiot-lisäkenttä................................. 12 4.2.2 Reititys-lisäkenttä..................................... 14 4.2.3 Fragmentointi-lisäkenttä................................ 18 4.2.4 Tunnistus-lisäkenttä................................... 20 4.2.5 Salaus-lisäkenttä...................................... 20 4.2.6 Kohdeoptiot-lisäkenttä................................. 20 5. TIETOTURVA................................................ 22 5.1 Käyttäjien tunnistus........................................ 22 5.2 Liikenteen salaus.......................................... 23 5.3 Salausavainten jakaminen.................................... 25 6. REAALIAIKATUKI.......................................... 29 6.1 Luokka-kenttä............................................. 29 6.2 Vuon otsikointi............................................ 30 6.3 Resurssien varaaminen...................................... 31 iv
7. YLEMMÄN KERROKSEN PROTOKOLLAT....................... 33 7.1 TCP ja UDP.............................................. 33 7.2 ICMPv6................................................. 34 7.2.1 Virheviestit.......................................... 35 7.2.2 Informaatioviestit..................................... 37 8. OSOITTEET.................................................. 39 8.1 Osoitteiden tekstuaalinen esitys............................... 40 8.2 Unicast-osoitteet........................................... 41 8.3 Anycast-osoitteet.......................................... 44 8.4 Multicast-osoitteet......................................... 45 9. OSOITTEIDEN AUTOMAATTINEN ASENNUS.................... 47 9.1 Linkkikohtainen-osoite...................................... 47 9.2 Tilaton menetelmä......................................... 48 9.3 Tilallinen menetelmä....................................... 50 10. SIIRTYMÄVAIHE........................................... 55 10.1 Kahden protokollapinon käyttäminen.......................... 55 10.2 Tunnelointi.............................................. 56 11. IPv6-KOEVERKKO........................................... 58 11.1 Toteutusten saatavuus...................................... 58 11.2 Yksinkertainen koeverkko.................................. 59 11.3 Päätelaitteiden asennus ja niiden toiminta...................... 59 11.3.1 Windows NT........................................ 59 11.3.2 Sun-työasema....................................... 63 11.4 Tunnelointi.............................................. 69 11.5 Maailmanlaajuinen testiverkko.............................. 73 12. YHTEENVETO............................................... 74 LÄHDELUETTELO LIITTEET v
KÄYTETYT LYHENTEET 6-BONE Maailmanlaajuinen IPv6-testiverkko ATM Asynchronous Transfer Mode BBN Bolt, Beranek and Newman CATNIP Eräs ehdotus uudeksi IPv6-protokollaksi CLNP Connection-Less Network Protocol DARPA Defense Advanced Research Projects Agency DES-CBC Data Encryption Standard, used in cipher block chaining mode DHCP Dynamic Host Configuration Protocol DNS Domain Name System ESP Encrypted Security Payload FDDI Fiber Distributed Data Interface FQ Fair Queuing FTP File Transfer Protocol GGP Gateway to Gateway Protocol IAB Internet Architecture Board ICCC International Computer Communication Conference ICMP Internet Control Message Protocol ICMPv6 Internet Control Message Protocol version 6 IDRP InterDomain Routing Protocol IEEE Institute of Electrical and Electronics Engineers IETF Internet Engineering Task Force IGMP Internet Group Management Protocol IGRP Interior Gateway Routing Protocol IP Internet Protocol IP in IP Eräs ehdotus uudeksi IPv6-protokollaksi IPAE IP Address Encapsulation IPX Novellin määrittelemä verkkoprotokolla IPng Internet Protocol, next generation IPv4 Internet Protocol version 4 IPv6 Internet Protocol version 6 vi
ISAKMP-OAKLEY The Internet Security Association and Key Management Protocol ISO International Organization for Standardization ISO-IP ISO Internet Protocol ISO-TP4 ISO Transport Protocol class 4 ISP Internet Service Provider MD5 Message-digest 5-algoritmi MSR Microsoft Research MTU Maximum Transmission Unit NCP Network Control Protocol NLA ID Next-Level Aggregation IDentifier NMC Network Measurement Center NPL National Physical Laboratory NSAP Network Service Access Point NSF National Sciences Foundation NTP Network Time Protocol NWG Network Working Group OSI Open Systems Interconnection OSPF Open Shortest Path First PAD1 Täyteoptio PADN Täyteoptio PTR Domain name pointer RAND Research and Developement RAP TP/IX:ssä ehdotettu reititysprotokolla RFC Request For Comments RSVP Resource ReSerVation Protocol SIP Simple IP SIPP Simple IP Plus SKIP Simple Key-management for Internet Protocol SLA ID Site-Level Aggregation IDentifier SPI Security Parameters Index SRI Stanford Research Insitute ST Stream TCP Transmission Control Protocol TLA ID Top-Level Aggregation IDentifier TLV Type-Length-Value TP/IX Eräs ehdotus uudeksi IPv6-protokollaksi TUBA TCP and UDP over Bigger Address UCLA University of California Los Angeles vii
UDP XCHG User Datagram Protocol Exchange type viii