IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

27
IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam

Transcript of IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

Page 1: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

IPv6 - Introduction

Michael DirskaHasso-Plattner-Institut Potsdam

Page 2: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 2

Why a new protocol version?

• Beginning of 1990s: – Help! - IPv4 address space is running out– There are too few Class-B-Networks left– Routing Tables are growing immensely

Page 3: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 3

IPv4 address structure (old)

• 32 Bit• Written as 4 Bytes, decimal, "." inbetween• Netmasks: number of relevant bits

0 Class A /8 12.x.x.x

10 Class B /16 141.89.x.x

110 Class C /24 192.168.1.x

1110 Class D Multicast

1111 Class E (nicht belegt)

Page 4: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 4

IPv4 address structure (new)

• Classless Inter-Domain Routing (CIDR)

• RFC 1519 September 1993

• (www.cidr-report.org)

0 Unicast-Adressen /8 bis /24-Netze

10 "

110 "

1110 Multicast

1111 (nicht belegt)

Page 5: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 5

Internet-Routing

Uni Potsdam141.89.0.0/16

HU Berlin141.20.0.0/16

DFN G-WiNAS680

WIDE Project203.178.136.0/21

AS2500

Page 6: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 6

IP: Next Generation (IPng)

• Dec. 1993: RFC 1550Request for White Papers

• lots of answers August 1994, examples:– RFC 1669

"Market Viability as a IPng Criteria"– RFC 1671

"IPng White Paper on Transition"– RFC 1687

"A Large Corporate User's View of IPng"

Page 7: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 7

IPng renamed to IPv6

• Jan. 1995: RFC 1752"The Recommendation for the IP Next Generation Protocol"

• Dec. 1995: RFC 1883"Internet Protocol, Version 6 (IPv6) Specification"

Page 8: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 8

Decision in favour of a new address space

• IPv6 has 128-Bit addresses (millions of addresses per square meter of the earths surface)

• the new version solves old problems (fragmentation) and keeps the IP-header small

• elegant solution – technically!

• but: how do you switch from IPv4 to IPv6? Do we switch at all? Can both protocols co-exist?

Page 9: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 9

Advantages of a new address space

• We can learn from the mistakes:– better address allocation (smaller routing tables)– enough global routable addresses even for the

smallest imaginable devices

Page 10: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 10

Disadvantages of a new address space

• all connections between Autonomous Systems (AS) must be re-negotiated

• lots of work to setup a second infrastructure

• there is no „killer application“ in sight – so why do we want it?

• see: D.Bernstein "IPv6-mess"

Page 11: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 11

current IPv6 specifications

• RFC 2460"Internet Protocol, Version 6 (IPv6) Specification"

• RFC 2461"Neighbor Discovery for IP Version 6 (IPv6)"

• RFC 2462"IPv6 Stateless Address Autoconfiguration"

• RFC 2463"Internet Control Message Protocol (ICMPv6)"

Page 12: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 12

IPv4 header

0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Version| IHL |Type of Service| Total Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Identification |Flags| Fragment Offset | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Time to Live | Protocol | Header Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Options | Padding | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

from RFC 791

Page 13: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 13

IPv6 header +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Version| Traffic Class | Flow Label | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Payload Length | Next Header | Hop Limit | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + + | | + Source Address + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | + + | | + Destination Address + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ from RFC 2460

Page 14: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 14

IPv6 Adress-Struktur

• 128 Bit• written as 8*16 Bit, hexadecimal• : inbetween

2001:0DB8:0010:0000:0000:0000:0000:0001

2001:0DB8:10::1

FF02::1

FE80::192.168.111.40 = FE80::C0A8:6F28

2001:DB8::/32

::1

::FFFF:192.168.111.40

Page 15: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 15

IPv6 address structure Allocation Prefix Fraction of (binary) Address Space ----------------------------------- -------- ------------- Unassigned (see Note 1 below) 0000 0000 1/256 Unassigned 0000 0001 1/256 Reserved for NSAP Allocation 0000 001 1/128 [RFC1888] Unassigned 0000 01 1/64 Unassigned 0000 1 1/32 Unassigned 0001 1/16 Global Unicast 001 1/8 [RFC2374] Unassigned 010 1/8 Unassigned 011 1/8 Unassigned 100 1/8 Unassigned 101 1/8 Unassigned 110 1/8 Unassigned 1110 1/16 Unassigned 1111 0 1/32 Unassigned 1111 10 1/64 Unassigned 1111 110 1/128 Unassigned 1111 1110 0 1/512 Link-Local Unicast Addresses 1111 1110 10 1/1024 Site-Local Unicast Addresses 1111 1110 11 1/1024 Multicast Addresses 1111 1111 1/256

aus RFC 3513

Page 16: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 16

global IPv6 adresses

0010 3

IANA RIR

RIR LIR

LIR Customer

23 35 48Interface ID

64 128

64 bit for local configuration(auto-configuration)

Page 17: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 17

weitere IPv6-Adresstypen

FE80::/640

Interface ID64 128

Link Local

Page 18: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 18

Interface Identifier

|0 1|1 3|3 4| |0 5|6 1|2 7| +----------------+----------------+----------------+ |cccccc0gcccccccc|ccccccccmmmmmmmm|mmmmmmmmmmmmmmmm| +----------------+----------------+----------------+

aus RFC2373

|0 1|1 3|3 4|4 6| |0 5|6 1|2 7|8 3| +----------------+----------------+----------------+----------------+ |cccccc1gcccccccc|cccccccc11111111|11111110mmmmmmmm|mmmmmmmmmmmmmmmm| +----------------+----------------+----------------+----------------+

FF FEXOR 0x0200

IEEE 802 48 bit MAC

Page 19: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 19

IPv6 network

node

node

node

linklink

link

link node

node

host host

host

router

router

Interface

FE80::/64

FE80::/64

Page 20: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 20

Stateless Address Autoconfiguration (RFC2462)

• is always used for link-local addresses

• can be used to configure global adresses

• Duplicate Address Detection should be performed on the link

Page 21: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 21

Neighbor Discovery (RFC2641)

• Duplicate Address Detection

• Router Discovery

• Address Autoconfiguration

• Next-hop Determination

• Address Resolution

• Neighbor Unreachability Detection

• Redirect

Page 22: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 22

Neighbor Discovery

• five message types (in ICMPv6)– Router Discovery– Router Solicitation– Neighbor Discovery– Neighbor Solicitation– Redirect

• Why ICMPv6? You can use AH...

Page 23: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 23

transition to IPv6

t1996 20??

IPv4IPv6

2020 ?2030 ?

Es wird lange Zeit gleichzeitige IPv4- und IPv6-Konnektivitätgeben müssen.

Page 24: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 24

IPv4 Netzwerk

node

node

node

link

node

host host

host

router

IPv4 Internet

Page 25: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 25

dual stack

node

node

node

link

node

host host

host

IPv4 routerIPv4 Internet

node

IPv6 router

node

host

IPv6 Internet

Page 26: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 26

configured tunnel

node

node

node

link

node

host host

host

IPv4 routerIPv4 Internet

node

IPv6 router

node

host

IPv6 Internettunnel broker

node

IPv6-over-IPv4tunnel

Page 27: IPv6 - Introduction Michael Dirska Hasso-Plattner-Institut Potsdam.

04/2004 -md- 27

Ethernet adapter Local Area Connection:

Connection-specific DNS Suffix . : IP Address. . . . . . . . . . . . : 141.89.224.145 Subnet Mask . . . . . . . . . . . : 255.255.255.0 IP Address. . . . . . . . . . . . : fe80::208:2ff:fe5e:7afd%7 Default Gateway . . . . . . . . . : 141.89.224.1

Tunnel adapter Teredo Tunneling Pseudo-Interface:

Connection-specific DNS Suffix . : IP Address. . . . . . . . . . . . : fe80::5445:5245:444f%8 Default Gateway . . . . . . . . . :

Tunnel adapter 6to4 Tunneling Pseudo-Interface:

Connection-specific DNS Suffix . : IP Address. . . . . . . . . . . . : 2002:8d59:e091::8d59:e091 Default Gateway . . . . . . . . . : 2002:c058:6301::c058:6301 2002:836b:213c::836b:213c

Tunnel adapter Automatic Tunneling Pseudo-Interface:

Connection-specific DNS Suffix . : IP Address. . . . . . . . . . . . : fe80::5efe:141.89.224.145%2 Default Gateway . . . . . . . . . :

Windows XP