Transcript 08_IPv6

Communication
Systems
8th lecture
Chair of Communication Systems
Department of Applied Sciences
University of Freiburg
2008
1 | 56
Communication Systems
Last lecture and practical course








Next Friday (06.06) start of practical course block in the comp
dept. -114 9pm - 12pm
Next lecture: Friday, 13th June (here in this lecture room
again)
Idea of the Internet Domain Name Ssystem
DNS Components
DNS Structure and Hierarchy
DNS in Context
DNS as an Internet service
ENUM as a DNS extension for Internet telephony
2 | 56
Communication Systems
Plan for this lecture








After dealing with an network application layer protocol (DNS
using UDP/IP in most client server interaction) we will switch back
again to the network layer
Problems and success of IP v4
Introduction to future IP
IP v6 address
IP v6 header and extension headers
IP v6 fragmentation
IP v4 to IPv6 transition
DNS in IP v6 (how to integrate the new network layer protocol into
the traditional service)
3 | 56
Communication Systems
introduction to future IP – names and versions

IP v6 – next generation Internet protocol

Preliminary versions called IP - Next Generation (IPng)

Several proposals all called IP ng


TUBA – (TCP and UDP over Bigger Addresses) - the idea to use
the OSI connectionless protocol as drop in replacement (but
not many people liked it :-))
SIP – Simple Internet Protocol Plus – predecessor of IP v6

SIP now abbreviation for “session initiation protocol”

IP v5 naming was used for stream protocol version 2

One was selected and uses next available version number (6)
4 | 56
Communication Systems
introduction to future IP


Result is IP version 6 (IP v6 – around July 1994)
Normally we start with the reasons to switch from a very
successful implementation to a new one
- rapid, exponential growth of networked computers
- shortage (limit) of the addresses
- new requirements towards the Internet infrastructure (streaming, realtime services like VoIP, video on demand)
• IP v6 is designed to be an evolutionary step from IP v4. It can be
installed as a normal software upgrade in Internet devices and is
interoperable with the current IP v4
• Next slide: OSI – IP v6 just replaces IP v4 on network layer ...
5 | 56
Communication Systems
introduction to future IP – OSI and IPv6
6 | 56
Communication Systems
problems with IPv4

Current version of IP - version 4 - is 25+ years old (rather old in
the computer world)
- 32 bits address range is too small (less max. number of addresses
than inhabitants of earth, without counting the loss of addresses
because of rather generous assignments)
- routing is inefficient (long routing tables, problems with aggregation)
- bad support for mobile (roaming) devices
- security needs grew
• But some of the problems are of the late nineties and mostly
solved or not as important any more ... thus postponed the switch
over to the new scheme
7 | 56
Communication Systems
success of IPv4

IPv4 has shown remarkable ability to move to new technologies

other third layer protocols, like AppleTalk, IPX, NetBIOS nearly
completely vanished

packet orientated IP services are used even for voice and
multimedia services with stricter requirements toward quality of
service

IP was open to improvements: e.g. shift from classful to classless
interdomain routing

IP was able to operate on every type of new network hardware, e.g.
Wireless LAN
8 | 56
Communication Systems
capabilities of IP


IP has accommodated dramatic changes since original design

Basic principles still appropriate today

Many new types of hardware

Scale of Internet and interconnected computers in private LAN
Scaling

Size - from a few tens to a few tens of millions of computers

Speed - from 9,6Kbps over GSM mobile phone networks to 10Gbps
over Ethernet or frame delay WAN connections

Increased frame size (MTU) in hardware
9 | 56
Communication Systems
introduction to future IP – why IPv6?


IETF has proposed entirely new version to address some
specific problems
Address space

But...most are Class C and too small for many organizations

214 Class B network addresses already almost exhausted (and
exhaustion was first predicted to occur a couple of years ago)

Lot of waste within the address space (whole class A network for just
the loopback device, no nets starting with 0 and 255)

No geographic orientation within IP number assignment

Next generation mobile phone networks may switch over their
addressing scheme
10 | 56
Communication Systems
introduction to future IP – address exhaustion

Address space exhaustion (main argument for IP v6)

Even with the excessive use of private networks, CIDR of the old
Class-A networks, ...

Inefficient routing (very long routing tables)

Think of many households getting connected to the internet, new
services and new devices with demand toward addressability over
an Internet

Rise of continents beside Northern America and Europe with bigger
population than the “new world” and “old europe”

Around 2010 to 2015 (if we believe some forecasters) the address
space is exhausted
11 | 56
Communication Systems
introduction to future IP – address exhaustion!?

Geoff Huston

if main focus of applications stays to client/server principle

and number of peer-to-peer applications does not increase significantly

article of July 2003: exhaustion expected in 2022

http://www.potaroo.net/presentations/2003-09-04-V4-AddressLifetime.pdf

article of september 2003: expectation even of 2045

http://www.potaroo.net/presentations/2003-09-04-V4-AddressLifetime.pdf
12 | 56
Communication Systems
introduction to future IP – further reasons


Type of service

Different applications have different requirements for delivery
reliability and speed

Current IP has type of service that's not often implemented

Helper protocols for multimedia QoS seldom used

QoS routing only works hop-by-hop

more on QoS in later lectures
Multicast

Expermental only within IP v4, not really used in production

Waste of IP numbers from 224.0.0.0 up to 254.255.255.255 for just
experimental use
13 | 56
Communication Systems
introduction to future IP – addresses



2128 is around 3,4*1038 possible IP addresses

Should be enough for quite a while :)

6,4*1028 for every human on earth

6,6*1014 for every square millimeter on earth (sea, continents and ice
caps)

Opens lots of space for waste
IP v6 16 byte long addresses
So classical representation as we know it, e.g. 132.230.4.44 (4
byte IP v4 address) would not really be human readable
14 | 56
Communication Systems
introduction to future IP – address format


IP v6 addresses are given in hexadecimal notation, with 2
bytes grouped together as known from ethernet MAC
addresses
Example:
 2822:0000:0000:0000:0000:0005:EBD2:7008
 2001:: (GEANT address prefix)
 2001:07C0:0100::/48 (BelWue address prefix)
 2001:07C0:0100::/64 (Freiburg university address prefix)

Try to write that address in dotted quad notation, so ...

Domain Name System becomes even more important

For better handling compression is introduced
15 | 56
Communication Systems
introduction to future IP – address format


Compression is achieved by

Replace groups of zeros by a second colon directly following the first

Delete leading zeros in each double byte
The address

0000:0000:0000:0000:00A5:B8C1:009C:0018 is reduced to

::A5:B6C1:9C:18

1000:0000:0000:0000:20A5:B8C1:0001:00A3 could be compressed

1000:0:0:0:20A5:B8C1:1:A3 and finally 1000::20A5:B8C1:1:A3
16 | 56
Communication Systems
IP v6 – address types

IP v6 knows three types of addresses

Classical unicast address

Multicast address

New type of address: anycast or cluster
17 | 56
Communication Systems
IP v6 – address composition

Addresses are split into prefix and suffix as known from IPv4

No address classes - prefix/suffix boundary can fall anywhere

IPv4 broadcast flavors are subsets of multicast

Unicast addresses are distinguishable by their format prefix

The new aggregatable global address format splits address into

Global, public part

Location specific part

End system identificator
18 | 56
Communication Systems
IP v6 – address composition

Addresses split into prefix and suffix as known from IP v4

Unicast addresses are distinguishable by their format prefix

The new aggregatable global address format splits address into



Global, public part

Location specific part

End system identificator
Global part consists of prefix, Top Level Aggregator (TLA) and
Next Level Aggregator (NLA)
Describes a site (group of machines) within the global internet
19 | 56
Communication Systems
IP v6 – address composition





TLA are only available for service providers who provide internet
transit services, e.g. GEANT (2001::)
NLAs for smaller service providers / organizations / firms which use
a TLA provider, e.g. BelWue (2001:07C0:0100::)
NLA could be split in several hierachy layers
Location specific part of the address the Site Level Aggregator
(SLA) describes subnet structure of a site and the interface ID of
connected hosts
Interface ID consists of 64bit and can contain the MAC address of
the interface card for global uniqueness
20 | 56
Communication Systems
IP v6 – address space assignment
21 | 56
Communication Systems
IP v6 – address assignment example (under linux OS)

Automatically configured IP v6 Addresses (lo, eth0, eth1): ip addr
show
1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:10:a4:8d:56:0a brd ff:ff:ff:ff:ff:ff
inet 192.168.1.2/24 scope global eth0
inet6 fe80::210:a4ff:fe8d:560a/64 scope link
valid_lft forever preferred_lft forever
3: sit0: <NOARP> mtu 1480 qdisc noop
link/sit 0.0.0.0 brd 0.0.0.0
4: eth1: <BROADCAST,MULTICAST,NOTRAILERS,UP> mtu 1500 qdisc pfifo_fast qlen 1000
link/ether 00:02:2d:09:f6:df brd ff:ff:ff:ff:ff:ff
inet 10.100.5.63/16 brd 10.100.255.255 scope global eth1
inet6 fe80::202:2dff:fe09:f6df/64 scope link
valid_lft forever preferred_lft forever
9: tun0: <POINTOPOINT,MULTICAST,NOARP,UP> mtu 1412 qdisc pfifo_fast qlen 500
link/[65534]
inet 134.76.3.40/32 scope global tun0
22 | 56
Communication Systems
IP v6 – address space assignment





Link local addresses – contain beside the prefix only the interface
ID
Used for automatic configuration or used in networks without router
Position local addresses used for sites which are not connected to
the IP v6 network (aka Internet) yet
The prefix is interchanged with the provider addresses (TLA, NLA)
in case of connection to the net
Anycast – new type of address, introduced with IP v6
23 | 56
Communication Systems
IP v6 – address space assignment

Special addresses:

Loopback: 0:0:0:0:0:0:0:1 = ::1

for use in tunnels: 0::FFFF:a.b.c.d


139.18.38.71 (IP v4)
= ::FFFF:139.18.38.71 (IPv6)
= ::FFFF:8b12:2647 (IP v6)
IP v4-compatible-addresses ::a.b.c.d
= 0.0.0.0.0.0.139.18.38.71
Link local


Interface address auto assignment (like 169.254.X.Y)
Start with FE80:: local MAC is last part
24 | 56
Communication Systems
IP v6 – anycast addresses

Type of address used for number of interfaces connected to
different end systems

An anycast packet is routed to the next interface of that group

Anycast addresses are allocated within unicast address space

Idea: route packets over a subnet of a specific provider

Cluster / anycast addressing allows for duplication of services

Implementation: do not use them as source address and identify
only routers with them
25 | 56
Communication Systems
IP v6 – multicast addresses





Now fixed part of the specification
One sender could generate packets which are routed to a number
of hosts throughout the net
Multicast addresses consists of a prefix (11111111), flag and scope
field and group ID
Flag for marking group as transient or permanent (registered with
IANA)
Scope defines the coverage of address (subnet, link, location or
global)
26 | 56
Communication Systems
IP v6 – header format


Some important changes within header format – faster processing
within routers
Header length, type of service and header checksum were
removed
27 | 56
Communication Systems
IP v6 – header format



Other header
Other
headerparts
partsmoved
movedtoto
soso
called
called
extension
extension
headers
headers
(light
(light gray)
gray)
IP v6 header contains less information than IP v4 header
Less header information for routing speed up and avoiding of
duplication of standard information
28 | 56
Communication Systems
IP v6 – header format




Concept of on-the-way packet fragmentation dropped

Slow down of routers

Reassembly was possible at destination only
Fragmentation is done by source and destination only
(explained later this lecture)
If packet is too big for transit intermediate routers send
special “packet too big” ICMP message

Minimum MTU in IPv4 was 576 for IPv6 1280 byte

Host has to do MTU path discovery
No header checksum – left to UDP/TCP or layer 2 protocols,
like Ethernet
29 | 56
Communication Systems
IP v6 – header fields

Precedence, total length, time to live and protocol are replaced
with traffic class, payload length, hop limit and next header (type)
30 | 56
Communication Systems
IP v6 – header fields

IPv6 header in ethereal (example of specific ICMP message)
31 | 56
Communication Systems
IP v6 – header fields


NEXT HEADER points to first extension header
FLOW LABEL used to associate datagrams belonging to a flow
or communication between two applications

Traffic class for Quality of Service routing

Specific path

Routers use FLOW LABEL to forward datagrams along prearranged
path

Base header is fixed size (other than IP v4) - 40 octets

NEXT HEADER field in base header defines type of header
32 | 56
Communication Systems
IP v6 – header fields – traffic classes

000-111 = time insensitive (could be discarded)

1000-1111 = priority (should not be discarded)

0 = uncharacterized

1 = filler (NetNews)

2 = unattended transfer (mail)

4 = bulk (ftp)

6 = interactive (telnet)

7 = Internet control

8 = video

15 = low quality audio
33 | 56
Communication Systems
IP v6 – extension headers


All optional information moved to extension headers
Put in between IP v6 header and payload header (e.g. TCP
header)

Extension headers (mostly) not interpreted by routers

Each header is tagged with special mark

Hop-by-hop options

Destination options header

Routing header

Fragment header

Authentication header
34 | 56
Communication Systems
IP v6 – extension headers

Encapsulated security payload header

Destination options header

Next header: transportation (TCP, UDP, ...)

Extension headers have task specific format

Each header is of multiple of 8 byte

Some extensions headers are variable sized

NEXT HEADER field in extension header defines type

HEADER LEN field gives size of extension header
35 | 56
Communication Systems
IP v6 – extension headers



Special hop-by-hop option is header for so called
jumbograms
Normal packet length is 65535 byte - but can be extended
with jumbo payload length of a 4 byte length indicator
But problems with UDP and TCP specification

UDP contains 16bit packet length field

TCP contains MSS (max. segment size) field set with the start of
every TCP connection, could be omitted but then problems with
urgent pointer
36 | 56
Communication Systems
IP v6 – extension headers

Use of multiple headers:

Efficiency - header only as large as necessary

Flexibility - can add new headers for new features


Incremental development - can add processing for new
features to testbed; other routers will skip those headers
Conclusion: streamlined 40 byte IP header

Size is fixed

Information is reduced and mostly fix

Allows much faster processing
37 | 56
Communication Systems
IP v6 – new concept of fragmentation


Fragmentation information kept in separate extension header
Each fragment has base header and (inserted) fragmentation
header
38 | 56
Communication Systems
IP v6 – new concept of fragmentation



Entire datagram, including original header may be
fragmented
IPv6 source (not intermediate routers) responsible for
fragmentation

Routers simply drop datagrams larger than network MTU

Source must fragment datagram to reach destination
Source determines path MTU

Smallest MTU on any network between source and destination

Fragments datagram to fit within that MTU
39 | 56
Communication Systems
IP v6 – new concept of fragmentation



Uses path MTU discovery (as discussed with IP v4 / ICMP)

Source sends probe message of various sizes until destination
reached

Must be dynamic - path may change during transmission of
datagrams
Standard MTU is about 1300 octets (ethernet MTU minus
special headers like PPPoE, tunnels, ...)
New ICMP for IP v6 introduced
40 | 56
Communication Systems
IP v4 to IP v6 transition




Typical problem – who should start with it?
IP v6 implemented in some backbones (e.g. German
Telekom)
DFN is talking about testbeds, university of Münster is
conducting test installations and networks
IP v6 address space assigned for GEANT, BelWue, Uni FR


But nobody really using it at the moment (connectivity often
worse than for IPv4)
End user systems are capable of IP v6?

Linux seems to work with it for quite a while

WinXP was incompatible to itself with different patch levels, but
working implementation since SP2

Vista has IPv6 fully integrated
41 | 56
Communication Systems
IP v4 to IP v6 transition
Step 1: Add IPv6 capable nodes into the current IP v4
infrastructure
 IPv6 traffic is tunnelled in IPv4 traffic

42 | 56
Communication Systems
IP v4 to IP v6 transition

Step 2: Add more IPv6 capable nodes

Add separate IPv6 infrastructure
43 | 56
Communication Systems
IP v4 to IP v6 transition
Step 3: IPv6 dominates. Remove IPv4 infrastructure and
tunnel IPv4 traffic in IPv6 traffic.


Transition finishes
44 | 56
Communication Systems
IP v4 to IP v6 transition



Several transition mechanisms proposed
IETF ngtrans working group has proposed many transition
mechanisms:

Dual Stack

Tunnelling

Translation
Every mechanism has pros and cons

choose one or more of them, depending on specific transition
scenarios

no one suits for all
45 | 56
Communication Systems
IP v4 to IP v6 transition
• Dual Stack
• Both of IPv4 and IPv6 are
implemented;
• IPv4 address and IPv6
address;
• DNS must be upgraded to
deal with the IPv4 A records as
well as the IPv6 AAAA records
46 | 56
Communication Systems
IP v4 to IP v6 transition

Tunnelling is a process whereby one type of packet




in this case IP v6 - is encapsulated inside another type of packet - in
this case IP v4
This enables IPv4 infrastructure to carry IPv6 traffic
Most tunnelling techniques cannot work if an IPv4 address
translation (NAT) happens between the two end-points of the
tunnel.
When firewalls are used, IP protocol 4 must be allowed to go
through
47 | 56
Communication Systems
IP v4 to IP v6 transition

Several tunneling mechanisms (and services)


Configured tunnels

6to4

Tunnel broker

TSP

ISATAP

DSTM
Automatic tunnels

6over4

Teredo

BGP-tunnel
48 | 56
Communication Systems
IP v4 to IP v6 transition

Translation

With tunnelling, communication between IP v6 nodes is established

How about communication between IP v4-only node and IP v6-only
node?

We need translation mechanisms
49 | 56
Communication Systems
IP v4 to IP v6 transition

Several mechanisms too, just names here

SIIT

NAT-PT

ALG

TRT

Socks64

BIS

BIA
50 | 56
Communication Systems
DNS support in IP v6



Current DNS records store 32-bits IP v4 addresses. They must be
upgraded to support the 128-bits IP v6 addresses.
A new resource record type ‘AAAA’ is defined, to map a domain
name to an IPv6 address.
Example:
www.ipv6.uni-muenster.de.
IN
CNAME tolot.ipv6.uni-muenster.de.
tolot.ipv6.uni-muenster.de.
IN
AAAA
2001:638:500:101:2e0:81ff:fe24:37c6
ns.join.uni-muenster.de.
IN
AAAA
ns.join.uni-muenster.de.
IN
A
2001:638:500:101::53
128.176.191.10
51 | 56
Communication Systems
DNS support in IP v6



New domains IP6.INT and IP6.ARPA are defined, to map an IP
v6 address to a domain name.
An IP v6 address is represented by a sequence of nibbles (nibble
string) separated every four bits by dots with the suffix “.IP6.INT”
or “.IP6.ARPA”.
Example:
; $ORIGIN
0.0.5.0.8.3.6.0.1.0.0.2.ip6.int.
6.0.8.3.5.b.e.f.f.f.2.0.1.0.2.0.0.0.1.0
IN
PTR atlan.ipv6.uni- muenster.de.
5.f.4.7.8.d.e.f.f.f.8.1.0.e.2.0.0.0.2.0IN
PTR lemy.ipv6.uni-muenster.de.
or
; $ORIGIN
0.0.5.0.8.3.6.0.1.0.0.2.ip6.arpa.
6.0.8.3.5.b.e.f.f.f.2.0.1.0.2.0.0.0.1.0
IN
PTR atlan.ipv6.uni- muenster.de.
5.f.4.7.8.d.e.f.f.f.8.1.0.e.2.0.0.0.2.0
IN
PTR lemy.ipv6.uni-muenster.de.
52 | 56
Communication Systems
DNS support in IP v6



Existing queries are extended to support IP v4 and IP v6
When both ‘A’ and ‘AAAA’ records are listed in the DNS, there are
three different options:

return only IPv6 address

return only IPv4 address

return both IPv4 and IPv6 addresses
The selection of which address to return, or in which order to
return can affect what type of IP traffic is generated

BIND 9.X is fully IPv6 compliant

Problem: name space fragmentation

Not all operating systems and not all DNS servers offer IPv6
transport lookups
53 | 56
Communication Systems
IP v6 - conclusion



IP v4 basic abstractions have been very successful
IP v6 carries forward many of those abstraction... but, all the
details are changed

128-bit addresses

Base and extension headers

Source does fragmentation

New types of addresses

Address notation
Transportation header format does not needed to be changed
54 | 56
Communication Systems
IP v6 - conclusion


But: (it is always there :-))

Idea of IP v6 was developed in 1994 (!)

Who really needs it in the moment (near future)

Who invests in new services, replaces all the routers
IP v6 delivered ideas for IP v4 network operation

IPsec standard is derived from it

Auto-IP, ... (“class-B” network with prefix: 169.254)
55 | 56
Communication Systems
Literature

The exercise sheet #4 is due to the 13th June (next lecture after
exercise block) – available from the website (download section) of this
course

Kurose & Ross: Computer Networking, 3rd edition: Section 4.4.4 IPv6

Tanenbaum: Computer Networks, 4th edition: Section 5.6.8 IPv6

IPv4 - How long have we got?
http://www.potaroo.net/ispcolumn/2003-07-v4-address-lifetime/ale.html

IPv6 on Heise, see referenced article at the end too ...
http://www.heise.de/newsticker/IPv6-Nie-war-es-so-wichtig-wie-heute-/meldung/108754

http:www.ipv6.org

Paper on IPv4-IPv6-Migration
Http://www.ks.uni-freiburg.de/download/studienarbeit/WS03/IPv4-IPv6-Migration.pdf.
56 | 56