New addressing system
There are two main problems with IPv4: addresses are running out, and router tables
are growing beyond control. IPv6 solves the problem of address space exhaustion by
adopting 128-bit addresses rather than 32-bit addresses, while the second problem -
called router table explosion - has been tackled by opting for a strictly hierarchical
addressing architecture, sophisticated renumbering techniques and multihoming
management methods.
The new architecture specifies three types of address:
- unicast: an identifier for a single interface. A packet with a unicast
address is sent to the interface identified by that address.
- multicast: an identifier for a set of interfaces, typically belonging to different
nodes. A packet sent to a multicast address is delivered to all interfaces identified
by that address.
- anycast: an identifier for a set of interfaces, typically belonging to different
nodes. A packet sent to an anycast address is delivered to one of the interfaces identified
by that address (in general, the "nearest" one, according to the routing protocol's measure
of distance).
Representation methods
The address space has been increased from 32 bits to 128 bits. The new format is represented
by means of eight blocks of 16 bits each, separated by the character ":" and expressed in
hexadecimal form.
Example:
FEDC:BCD8:0354:7654:F577:7347:6543:FD99
If the first n bits (e.g., n=32) of the address are a prefix, this can be indicated by writing:
FEDC:BCD8::/32
Blocks of contiguous zeroes are represented with a double colon, ": :". Example:
FEDC : : BCD8 : 7654: 321F is equivalent to
FEDC : 0 : 0 :0 : 0 : BCD8 : 7654: 321F which is equivalent to
FEDC :0000 : 0000 : 0000 : 0000 : BCD8 : 7654: 321F.
Initial address assignment
For the moment, the addressing architecture specifies only the prefixes listed in Table 1.
More than 70% of the space is still unallocated.
| Allocation |
Prefix |
Fraction of the address space |
| Reserved |
0000 0000 |
1/256 |
| Unassigned |
0000 0001 |
1/256 |
| Reserved for NSAP Allocation |
0000 001 |
1/128 |
| Reserved for IPX Allocation |
0000 010 |
1/128 |
| Unassigned |
0000 011 |
1/128 |
| Unassigned |
0000 1 |
1/32 |
| Unassigned |
0001 |
1/16 |
| Aggregatable Global Unicast Addresses |
001 |
1/8 |
| 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 |
Table 1: Specified IPv6 addresses
Unicast address format
The new format, called the Aggregatable Unicast Global address format
[RFC2374],
is shown in Figure 15.

Figure 15 - Unicast address format.
The address is divided logically into three parts of fixed size called respectively
Public Topology, Site Topology and Interface ID. The first is used for routing within
the public Internet and identifies the provider or exchange that supplies the network
access service. Site Topology identifies the site's internal organization and is
consequently used for intrasite routing. Finally, Interface ID identifies the interface
on the link.
The meaning of the fields shown in Figure 15 is as follows.
- FP (Format Prefix): Indicates the type of IPv6 address. This new format has
been assigned a portion of the IPv6 addressing space separate from that which was occupied
by the provider-based addresses [RFC2073],
or in other words by the format specified initially for unicast addresses and gradually
abandoned from 1997 onwards. FP assumes the value 001.
- TLA ID (Top Level Aggregation Idendifier): Identifies the highest level in the
routing hierarchy. How the various TLA IDs should be assigned is an administrative problem
which was not considered by the specifications' developers. The backbone routers
(default-free routers) must have one entry for each active TLA ID, and generally store
additional information in memory for each such ID which they will then use in their
operations. Consequently, the number of TLAs must not be excessive.
- RES (Reserved): Field reserved for future use. For the moment, this field
is zero. It was introduced so that the width of the TLA ID or NLA ID fields can be
expanded when necessary.
- NLA ID (Next-Level Aggregation Identifier): Used by the organizations to
whom a TLA ID has been assigned. These organizations can split the NLA ID field in
order to create a hierarchy of providers and sites (see Figure 16).

Figure 16: Aggregation levels for IPv6 unicast addresses
unicast
- SLA ID (Site Level Aggregation Identifier): Used by an organization for
internal management of its site. As for the NLA ID, it can be split into fields to
create a hierarchical system.
- Interface Identifier: Identifies the interface on the link. This identifier
must be unique, at least on the link. It is 64 bits long and has the IEEE EUI-64 format
shown in Figure 17. As a way to determine the interface ID must be defined for each network,
there is a specification for each permissible type of link. For Ethernet networks, for
instance, the format derives from IEEE 48-bit MAC. If the u bit (universal/local scope)
is set to one, the identifier is globally unique (as for IEEE 48-bit MAC). This may prove
useful in the future, e.g., for mobile applications. Currently, in fact, TCP identifies a
session by using the port number and the source and destination addresses. If these change
while the session is still open, the session is broken off and a new one must be opened with
the new addresses. A new version of the TCP protocol which identifies the session using a
globally unique Interface ID would be insensitive to address changes resulting from host
mobility or a renumbering process.

Figure 17 - IEEE EUI-64 Format.
The development of the new IPv6 addressing format was motivated by an innovative proposal
known as GSE, which was based on the following observation. An address has two separate
functions: that of an identifier which indicates the end point to which a packet must be
sent, and that of a "locator" for routing the packet to this end point. Site renumbering
can be managed more easily when these two components are clearly separated. A GSE address
is divided into three fields of fixed length, as the first is used to manage routing at
the global level, the second is used within the site, and the third field is used in the
last stage of routing to distinguish the interface from the others connected to the
same link.
The advantage introduced by GSE is that site renumbering is almost automatic, in the sense
that changing provider will involve changing only the first field of the address, while the
site need not be renumbered internally. On the debit side, GSE introduces serious security
problems, as this mechanism entails changing the addresses of packets en route. For this
reason, it was decided not to adopt this proposal. Nevertheless, the new unicast addressing
format takes up some of its features, including that of dividing the address into three
fixed parts with separate routing and identification functions
(Public Topology, Site Topology and Interface ID), the sharp distinction between
the part of the address which acts as the identifier and the part that acts as the
locator, and the specification of an option to indicate when the least significant
8 bytes of the address are globally unique and when they are not.
Special unicast addresses
As shown in Figure 18, IPv6 modifies the Internet architecture, giving a new meaning
to the terms "link" and "site".
The term link is used to mean a single physical network, which may be a LAN, a
point-to-point connection, or even a wide area network employing a homogeneous technology.
Nodes attached to the same link are called neighbors.
A site is a set of several links controlled by a single administrative authority.
For example, a site can be a university campus, a government agency, or a company, as far
as the peripheral Internet structure is concerned. The site's IPv6-based framework, on the
other hand, consists of the providers and exchanges, while the interconnection between
their networks forms the Internet backbone. The administrative unit is the link, the
administrative center is the router, and the latter administers all of the hosts attached
to the same link.

Figure 18 - The concept of link and site.
There are five special unicast address formats:
- unspecified(0:0:0:0:0:0:0:0), used as the source address in initializing
a station when the latter has not yet learned its own address.
- loopback(0:0:0:0:0:0:0:1), used by a node to send a packet to itself.
- IPv6 addresses with embedded IPv4 addresses. There are two types, known respectively
as IPv4 compatible addresses and IPv4-mapped IPv6 addresses. The format of the first type is
shown in Figure 19: the IPv6 address is constructed by placing a prefix consisting of 96 bits
at zero in front of the IPv4 address. This type of address is used to configure tunnels which,
as will be discussed in detail in paragraph 4.4, enable IPv4/IPv6 stations to communicate with
each other and with IPv4-only stations using the existing IPv4 network. In the second case,
the addresses used have the format shown in Figure 20, which represents the IPv6 address of
an IPv4-only node.

Figure 19 - IPv4 compatible addresses.

Figure 20 - IPv4-mapped IPv6 addresses.
- Local-Use addresses are those which can only be used locally.
Two types have been specified
- link-local, used by autoconfiguration procedures for addressing on a single link,
or in cases where no routers are present (see the format in Figure 21).
Routers must not forward any packets with a link-local source or destination addresses to
other links.

Figure 21 - Link-local address format.
- site-local: packets with this type of destination address must not be sent outside
the site. The format is shown in Figure 22. Site-local addresses can chiefly be used by sites
which, though not connected to the public Internet, wish to adopt IP in their network: in
other words, they are the IPv6 equivalent of the IPv4 private addresses used in Intranets.
Compared to the latter, however, they provide a significant advantage: if a site which has
adopted site-local IPv6 addresses in its Intranet decides to connect to the Internet, it
does not have to proceed with site renumbering, but need only replace the prefix that
identifies the addresses used up to that time as site-local addresses with the prefix
supplied by the provider. This operation is extremely simple with the automatic
configuration mechanisms now under development: an example is Router Renumbering,
which permits the prefixes of a router to be configured automatically and will be
described below.

Figure 22 - Site-local address format.
Anycast addresses
An anycast address is assigned to more than one interface. A packet containing such
an address is sent to the nearest (i.e., according to the routing protocol's measure
of distance) of the interfaces identified by that address.
As the format is identical to that of unicast addresses, an interface to which an
anycast address is assigned must be explicitly configured to know that it is an anycast address.
The advantage of introducing this type of address lies in the fact that a host can use
a single message to find the nearest server capable of offering a given service.
This can be explained by returning to the example of using the hop limit field given in paragraph
Formato dell'header IPv6. The same problem can be solved more
efficiently by assigning the same anycast address to the servers: the station can thus reach
the nearest server with a single transmission. If the nearest server suddenly becomes unusable,
the service will still be seamlessly guaranteed to the host by the second-nearest server.
It should be borne in mind, however, that the use of these addresses has not yet been fully
specified.
Multicast addresses
A multicast address, whose format is shown in Figure 23, is an identifier for a group
of nodes. A node can belong to more than one group.
The fields on the multicast address are as follows:
11111111 : Prefix classifying the address as a multicast address;
000T : a set of 4 flags. The first 3 bits are set to zero
because they have not yet been assigned. If T=0, the multicast address is a permanently-assigned
(well-known) multicast address allocated by the global Internet numbering authority, IANA.
T=1 indicates a non-permanently-assigned (transient) multicast address.
Scope : Used to limit the scope of the multicast address. The values are:
1 node-local scope
2 link-local scope
5 site-local scope
8 organization-local scope
E global scope
Group ID : Identifies the multicast group. Several permanently-assigned
identifiers have been defined, including:
1 Identifies the group of all IPv6 nodes (used with scope 1 or 2)
2 Identifies the group of all routers (used with scope 1 or 2)
3 Identifies the group of all dynamically configured DHCP servers; should be used with scope 2.
Introducing the scope field makes it possible to manage forwarding messages to a given
set of nodes more simply than with IPv4. In IPv4, in fact, the only way to circumscribe
traffic to a portion of the network is to limit the value contained in the TTL field:
selecting an appropriately low value ensures that the packet crosses a limited number of
nodes and is then discarded. With IPv6, on the other hand, it is sufficient to select the
appropriate scope value.
A complete list of registered multicast addresses is provided in
[RFC2375] and on the site
www.iana.org.

Figure 23 - Multicast address format.
|