This document provides information on IPv6 addressing including:
- IPv6 addresses are 128-bits long, written in colon hexadecimal notation grouped into 8 sections of 4 hexadecimal digits for readability.
- IPv6 uses various address types including global unicast for internet-wide reachability, link-local for local link communication, and multicast with addresses beginning with FF for one-to-many communication.
- Address scopes define the reachability of addresses, with link-local for the local link, unique local for a site, and global for internet-wide reachability. Prefix lengths and types identify subnet and organizational assignments.
2. IPv6 Addressing 2
Objectives
● IPv6 Addressing scheme
● IPv6 Address Plan
● IPv6 Address Types
● IPv6 Address with an Embedded IPv4
Address
● IPv6 Address Representation for URL
● IPv6 and Subnetting
3. IPv6 Addressing 3
IPv6 Addressing Rules
● 128 bits (or 16 bytes) long: four times as long as its
predecessor.
● 2128 : about 340 billion billion billion billion different addresses
● Colon hexadecimal notation:
● addresses are written using 32 hexadecimal digits.
● digits are arranged into 8 groups of four to improve the readability.
● Groups are separated by colons
2001:0718:1c01:0016:020d:56ff:fe77:52a3
● Note:
● DNS plays an important role in the IPv6 world
● (manual typing of IPv6 addresses is not an easy thing,
● Some zero suppression rules are allowed to lighten this task at
least a little.
4. IPv6 Addressing 4
IPv6 Address Notation: Example
128.91.45.157.220.40.0.0.0.0.252.87.212.200.31.255
5. IPv6 Addressing 5
Rule 1- IPv6 Zero Suppression
● Some types of addresses contain long sequences of zeros.
● To further simplify the representation of IPv6 addresses, a
contiguous sequence of 16-bit blocks set to 0 in the colon
hexadecimal format can be compressed to “::”, known as
double-colon.
● For example:
● link-local address
● FE80:0:0:0:2AA:FF:FE9A:4CA2 🡪 FE80::2AA:FF:FE9A:4CA2.
● multicast address
● FF02:0:0:0:0:0:0:2 🡪 FF02::2
● loopback address
● 0:0:0:0:0:0:0:1 🡪 ::1
6. IPv6 Addressing 6
Rule 1- IPv6 Zero Suppression
● Zero compression can only be used to compress a single
contiguous series of 16-bit blocks expressed in colon
hexadecimal notation.
● You cannot use zero compression to include part of a 16-bit
block.
● For example,
● cannot express FF02:30:0:0:0:0:0:5 as FF02:3::5
● correct representation = FF02:30::5
● Leading zeroes in every group can be omitted.
2001:718:1c01:16:20d:56ff:fe77:52a3
7. IPv6 Addressing 7
Rule 1- IPv6 Zero Suppression
● To determine the number of 0 bits represented by the “::”
1. count the number of blocks in the compressed address
2. (-) subtract this number from 8
3. (*) multiply the result by 16.
● For example
1. FF02::2
2. two blocks - “FF02” block and “2” block.
3. The number of bits expressed by the “::” is 96 (96 = (8 – 2)×16).
● Zero compression can only be used once in a given
address.
● Otherwise, you could not determine the number of 0 bits
represented by each instance of “::”.
8. IPv6 Addressing 8
IPv6 Prefixes
● The prefix is the part of the address that indicates the bits that
have fixed values or are the bits of the subnet prefix.
● Prefixes for IPv6 subnets, routes, and address ranges are
expressed in the same way as Classless Inter-Domain Routing
(CIDR) notation for IPv4.
● An IPv6 prefix is written in address/prefix-length notation.
● For example, 21DA:D3::/48 and 21DA:D3:0:2F3B::/64 are IPv6
address prefixes.
● Note IPv4 implementations commonly use a dotted decimal
representation of the network prefix known as the subnet mask.
A subnet mask is not used for IPv6. Only the prefix length
notation is supported.
14. IPv6 Addressing 14
Unicast IPv6 Addresses
● The following types of addresses are unicast
IPv6 addresses:
● Global unicast addresses
● Link-local addresses
● Site-local addresses
● Unique local IPv6 unicast addresses
● Special addresses
15. IPv6 Addressing 15
Global Unicast Addresses
● Equivalent to public IPv4 addresses.
● Globally routable and reachable on the IPv6 portion of the Internet.
● Unlike the current IPv4-based Internet, which is a mixture of both flat and
hierarchical routing, the IPv6-based Internet has been designed from its
foundation to support efficient, hierarchical addressing and routing.
● The scope, the portion of the IPv6 internetwork over which the address is
unique, of a global unicast address is the entire IPv6 Internet.
● Global scoped communication are identified by high-level 3 bits set to 001 (2000::/3)
16. IPv6 Addressing 16
Global Unicast Address
● Each aggregatable global unicast IPv6 address has three parts:
● Fixed portion set to 001 – The three high-order bits are set to 001. The
address prefix for currently assigned global addresses is 2000::/3.
● Global Routing Prefix – Site Prefix
● Site prefix assigned to an organization (leaf site) by a provider should be at
least a /48 prefix = 45 + high-order bits (001).
● /48 prefix represents the high-order 48-bit of the network prefix.
● prefix assigned to the organization is part of the provider’s prefix.
● Subnet-id - Site
● With one /48 prefix allocated to an organization by a provider, it is possible
for that organization to enable up to 65,535 subnets (assignment of 64-bit’s
prefix to subnets).
● The organization can use bits 49 to 64 (16-bit) of the prefix received for
subnetting.
● Interface-id – Host
● The host part uses each node’s interface identifier.
● This part of the IPv6 address, which represents the address’s low-order 64-
bit, is called the interface ID.
17. IPv6 Addressing 17
Global Unicast Address: Example
2001:0410:0110::/48 is assigned by a provider
2001:0410:0110:0002::/64 network subnet within the organization
2001:0410:0110:0002:0200:CBCF:1234:4402 – node address
within the subnet
21. IPv6 Addressing 21
IPv6 Unicast Address Scopes
● Three types of scopes:
1. Link-local scope
● Identifies all hosts within a single layer 2 domain.
● Called as link-local addresses
2. Unique-local scope
● Identifies all devices reachable within an administrative
site or domain typically contains multiple distinct links.
● Called as unique-local addresses (ULAs)
3. Global scope
● Identifies all devices reachable across the Internet.
● Called as global unicast addresses (GUAs)
22. IPv6 Addressing 22
Local-Use Unicast Addresses
● There are two types of local-use unicast
addresses:
1. Link-local addresses
● used between on-link neighbors and for Neighbor
Discovery Processes.
2. Site-local addresses
● used between nodes communicating with other
nodes in the same site.
23. IPv6 Addressing 23
Link-local Unicast Address
● IPv6 link-local addresses are equivalent to IPv4 link-
local addresses defined in RFC 3927 that use the
169.254.0.0/16 prefix.
● IPv4 link-local addresses are known as Automatic
Private IP Addressing (APIPA) addresses for
computers running current Microsoft Windows
operating systems.
● The scope of a link-local address is the local link.
● A link-local address is required for Neighbor
Discovery (NDP) processes and is always
automatically configured, even in the absence of all
other unicast addresses.
24. IPv6 Addressing 24
Link-local Unicast Address
● Used only between nodes connected on the same local link.
● When an IPv6 stack is enabled on a node, one link-local address is
automatically assigned to each interface of the node at boot time.
● IPv6 link-local prefix FE80::/10 is used and the interface identifier in
Extended Unique Identifier 64 (EUI-64) format is appended as the
address’s low-order 64-bit.
● Bits 11 through 64 are set to 0 (54-bit).
● Link-local addresses are only for local-link scope and must never be
routed between subnets within a site.
25. IPv6 Addressing 25
Link-local unicast address
● Because the low-order 64-bit of the link-local address is the interface
identifier itself, the length of the link-local prefix is based on a 64-bit length
(/64).
● In IPv6, a node having an aggregatable global unicast address on a local
link uses the link-local address of its default IPv6 router rather than the
router’s aggregatable global unicast address.
● If network renumbering must occur, meaning that the unicast aggregatable
global prefix is changed to a new one, the default router can always be
reached using the link-local address.
● Link-local addresses of nodes and routers do not change during network
renumbering.
26. IPv6 Addressing 26
Site-Local Address
● Site-local addresses are equivalent to the IPv4 private address
space (10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16).
● Private intranets that do not have a direct, routed connection to
the IPv6 Internet can use site-local addresses without conflicting
with global unicast addresses.
● Site-local addresses are not reachable from other sites, and
routers must not forward site-local traffic outside the site.
● Site-local addresses can be used in addition to global unicast
addresses.
● The scope of a site-local address is the site.
● A site is an organization network or portion of an organization's
network that has a defined geographical location (such as an
office, an office complex, or a campus).
27. IPv6 Addressing 27
Site-Local Address
● Unlike link-local addresses, site-local addresses are not
automatically configured and must be assigned either through
stateless or stateful address configuration processes.
● May be assigned to any nodes and routers within a site.
28. IPv6 Addressing 28
Site-Local Address - Example
● For example, a site with ten subnets may assign site-local
prefixes such as the following:
● Subnet 1—FEC0:0:0:0001::/64
● Subnet 2—FEC0:0:0:0002::/64
● Subnet 3—FEC0:0:0:0003::/64
● Subnet 4—FEC0:0:0:0004::/64
● Subnet 5—FEC0:0:0:0005::/64
● Subnet 6—FEC0:0:0:0006::/64
● Subnet 7—FEC0:0:0:0007::/64
● Subnet 8—FEC0:0:0:0008::/64
● Subnet 9—FEC0:0:0:0009::/64
● Subnet 10—FEC0:0:0:000A::/64
29. IPv6 Addressing 29
Special IPv6 Addresses
● The following are special IPv6 addresses:
● Unspecified address
● unspecified address (0:0:0:0:0:0:0:0 or ::) is only used to indicate
the absence of an address.
● equivalent to the IPv4 unspecified address of 0.0.0.0.
● used as a source address for packets attempting to verify the
uniqueness of a tentative address.
● never assigned to an interface or used as a destination address.
● Loopback address
● The loopback address (0:0:0:0:0:0:0:1 or ::1) is used to identify a
loopback interface, enabling a node to send packets to itself.
● It is equivalent to the IPv4 loopback address of 127.0.0.1.
● Packets addressed to the loopback address must never be sent
on a link or forwarded by an IPv6 router.
31. IPv6 Addressing 31
Multicast Address: Overview
● In IPv6, multicast traffic operates in the same way that it does in
IPv4.
● Arbitrarily located IPv6 nodes can listen for multicast traffic on an
arbitrary IPv6 multicast address.
● IPv6 nodes can listen to multiple multicast addresses at the
same time.
● Nodes can join or leave a multicast group at any time.
● IPv6 multicast addresses have the first eight bits set to 1111
1111.
● An IPv6 address is easy to classify as multicast because it
always begins with “FF”.
● Multicast addresses cannot be used as source addresses or as
intermediate destinations in a Routing extension header.
● Beyond the first eight bits, multicast addresses include additional
structure to identify their flags, scope, and multicast group.
32. IPv6 Addressing 32
Multicast Address
● Main goal of multicasting is having an efficient
network to save bandwidth on links by optimizing the
number of packets exchanged between nodes
● In IPv4:
● 224.0.0.0/3, where the high-order 3-bit of the IPv4 address
is set to 111
● In IPv6:
33. IPv6 Addressing 33
Multicast Address
● IPv6 makes heavy use of multicast addresses in the
mechanisms of the protocol such as
● The replacement of Address Resolution Protocol (ARP) in
IPv4
● Prefix advertisement
● Duplicate Address Detection (DAD)
● Prefix renumbering.
● Format of the multicast address defines several
scopes and types of addresses using the 4-bit fields
Flag and Scope.
● These fields are located after the FF::/8 prefix.
● The low-order 112-bit of the multicast address is the
multicast group ID.
34. IPv6 Addressing 34
Format of the Multicast Address
fields
High-order 3-bit of the Flag field is reserved and must be
initialized using 0 values.
Remaining bit indicates the type of multicast address.
35. IPv6 Addressing 35
Format of the Multicast Address:
Flags field
● Indicates flags set on the multicast address.
● The size = 4 bits.
● The first low-order bit = Transient (T) flag.
● T = 0 🡪 T flag indicates that the multicast address is a permanently assigned
(well-known) multicast address allocated by IANA.
● T = 1 🡪 T flag indicates that the multicast address is a transient (non-
permanently-assigned) multicast address.
● The second low-order bit = Prefix (P) flag
● indicates whether the multicast address is based on a unicast
address prefix.
● RFC 3306 describes the P flag.
● The third low-order bit = Rendezvous Point Address (R) flag
● indicates whether the multicast address contains an embedded rendezvous
point address.
● RFC 3956 describes the R flag.
36. IPv6 Addressing 36
Format of the Multicast Address:
Scope Field
● Indicates the scope of the IPv6 internetwork for which the
multicast traffic is intended.
● The size = 4 bits.
● In addition to information provided by multicast routing protocols,
routers use the multicast scope to determine whether multicast
traffic can be forwarded.
● The most prevalent values for the Scope field are:
1. 1 (interface-local scope)
2. 2 (link-local scope)
3. 5 (site-local scope)
● For example:
● Traffic with the multicast address of FF02::2 has a link-local
scope.
● An IPv6 router never forwards this traffic beyond the local link.
37. IPv6 Addressing 37
Format of the Multicast Address:
Scope Field
Example of Multicast Addresses with Different Scopes
38. IPv6 Addressing 38
Format of the Multicast Address:
Group ID Field
● Identifies the multicast group and is unique within
the scope.
● The size = 112 bits.
● Permanently assigned group IDs are independent of
the scope.
● Transient group IDs are only relevant to a specific
scope.
● Multicast addresses from FF01:: through FF0F:: are
reserved, well-known addresses.
39. IPv6 Addressing 39
Multicast Assigned Address
● RFC 2373 defines and reserves several IPv6
addresses within the multicast scope for the
operation of the IPv6 protocol.
● These reserved addresses are called multicast
assigned addresses.
40. IPv6 Addressing 40
Solicited-Node Multicast Address
● For each unicast and anycast address configured on an interface of a
node or router, a corresponding solicited-node multicast address is
automatically enabled.
● The solicited-node multicast address is scoped to the local link.
● Replacement of ARP in IPv4
● ARP is not used in IPv6, the solicited-node multicast address is used by
nodes and routers to learn the link-layer addresses of neighbor nodes and
routers on the same local link.
● As with ARP in IPv4, knowledge of link-layer addresses of neighbor nodes is
mandatory to make link-layer frames to deliver IPv6 packets.
● Duplicate Address Detection (DAD)
● DAD is part of NDP.
● It allows a node to verify whether an IPv6 address is already in use on its
local link before using that address to configure its own IPv6 address with
stateless autoconfiguration.
● The solicited-node multicast address is used to probe the local link in search
of a specific unicast or anycast address already configured on another node.
41. IPv6 Addressing 41
Solicited-Node Multicast Address
Representations
Consists of the prefix FF02::1:FF00:0000/104 + low-order 24-bit
of the unicast or anycast address.
Low-order 24-bit of the unicast or anycast address is appended
to the prefix FF02::1:FF.
42. IPv6 Addressing 42
Solicited-Node Multicast Address
Representations
Examples of Solicited-Node Multicast Addresses Made from Unicast
Addresses
44. IPv6 Addressing 44
Anycast Address
● Anycast addresses can be considered a conceptual cross
between unicast and multicast addressing.
● Unicast 🡪 send to this one address
● Multicast 🡪 send to every member of this group
● Anycast 🡪 send to any one member of this group
● In choosing which member to send to, for efficiency reasons
normally send to the closest one - closest in routing terms.
● So, anycast mean “send to the closest member of this group”.
● The network itself plays the key role in anycast by routing the
packet to the nearest destination by measuring network distance.
● Anycast addresses use aggregatable global unicast addresses.
● They can also use site-local or link-local addresses.
● Note that it is impossible to distinguish an anycast address from
a unicast address.
45. IPv6 Addressing 45
Reserved Anycast Address
● Also called the subnet-router anycast address.
● All IPv6 routers are required to support subnet-
router anycast addresses for each of their subnet
interfaces.
● Mobile IPv6 is an example of a protocol designed to
use anycasting.
47. IPv6 Addressing 47
IPv6 Addresses for a Host
● An IPv4 host with a single network adapter typically
has a single IPv4 address assigned to that adapter.
● An IPv6 host, however, usually has multiple IPv6
addresses - even with a single interface.
● An IPv6 host is assigned the following unicast
addresses:
1. A link-local address for each interface
2. Unicast addresses for each interface (which could be a
site-local address and one or multiple global unicast
addresses)
3. The loopback address (::1) for the loopback interface
48. IPv6 Addressing 48
IPv6 Addresses for a Host
● Typical IPv6 hosts are logically multihomed because they
have at least two addresses with which they can receive packets
1. a link-local address for local link traffic
2. a routable site-local or global address.
● Additionally, each host is listening for traffic on the following
multicast addresses:
1. The interface-local scope all-nodes multicast address (FF01::1)
2. The link-local scope all-nodes multicast address (FF02::1)
3. The solicited-node address for each unicast address on each
interface
4. The multicast addresses of joined groups on each interface
50. IPv6 Addressing 50
IPv6 Addresses for a Router
● An IPv6 router is assigned the following
unicast addresses:
● A link-local address for each interface
● Unicast addresses for each interface (which could
be a site-local address and one or multiple global
unicast addresses)
● A Subnet-Router anycast address
● Additional anycast addresses (optional)
● The loopback address (::1) for the loopback
interface
51. IPv6 Addressing 51
IPv6 Addresses for a Router
● Additionally, each router is listening for traffic on the
following multicast addresses:
● The interface-local scope all-nodes multicast address
(FF01::1)
● The interface-local scope all-routers multicast address
(FF01::2)
● The link-local scope all-nodes multicast address (FF02::1)
● The link-local scope all-routers multicast address (FF02::2)
● The site-local scope all-routers multicast address (FF05::2)
● The solicited-node address for each unicast address on
each interface
● The multicast addresses of joined groups on each interface
52. IPv6 Addressing 52
IPv6 Interface Identifiers
● The last 64 bits of an IPv6 address are the interface identifier
that is unique to the 64-bit prefix of the IPv6 address.
● The following are the ways in which an IPv6 interface identifier is
determined:
● A 64-bit interface identifier that is derived from the Extended
Unique Identifier (EUI)-64 address. The 64-bit EUI-64 address is
defined by the Institute of Electrical and Electronic Engineers
(IEEE). EUI-64 addresses are either assigned to a network
adapter or derived from IEEE 802 addresses. This is the default
behavior for IPv6 in Windows XP and Windows Server 2003.
● As defined in RFC 3041, it might have a temporarily assigned,
randomly generated interface identifier to provide a level of
anonymity when acting as a client.
53. IPv6 Addressing 53
IPv6 Interface Identifiers
● As defined in RFC 2472, an interface identifier can be
based on link-layer addresses or serial numbers, or
randomly generated when configuring a Point-to-Point
Protocol (PPP) interface and an EUI-64 address is not
available.
● It is assigned during manual address configuration.
● It is a permanent interface identifier that is randomly
generated to mitigate address scans of unicast IPv6
addresses on a subnet. This is the default behavior for
IPv6 in Windows Vista and Windows Server “Longhorn.”
You can disable this behavior with the netsh interface
ipv6 set global randomizeidentifiers=disabled
command.
55. IPv6 Addressing 55
IPv6 Modified EUI-64 Format
● Stateless autoconfiguration is a mechanism that
allows nodes on a network to configure their IPv6
addresses themselves without any intermediary
device, such as a DHCP server.
● The link-local address and stateless
autoconfiguration are functions of IPv6 that
automatically expand the Ethernet MAC address
based on a 48-bit format into a 64-bit format (EUI-
64).
● The conversion from 48-bit to 64-bit is a two-step
operation.
56. IPv6 Addressing 56
The IPv6 Modified EUI-64 Format
● It is essential that all devices on the same network use the same
mapping technique
● The most common type of layer 2 addresses are IEEE 802 MAC
addresses.
● Layer 2 addresses= 48 bits, arranged into two blocks of 24.
● Upper 24 bits = organizationally unique identifier (OUI), with
different values assigned to individual organizations
● Lower 24 bits = device identifier
● EUI-64 Format
● It is similar to the 48-bit MAC format, except that while the OUI
remains at 24 bits, the device identifier becomes 40 bits instead
of 24.
● This provides gives each manufacturer 65,536 times as many
device addresses within its OUI.
58. IPv6 Addressing 58
IPv6 Address with an Embedded
IPv4 Address
● IPv4-compatible IPv6 address is a special unicast IPv6
address used by transition mechanisms on hosts and routers
to automatically create IPv4 tunnels to deliver IPv6 packets
over IPv4 networks.
● Address is made up of six high-order fields of 16-bit
hexadecimal values, represented by X characters, followed by
four low-order fields of 8-bit decimal values (IPv4 address),
represented by d characters (for a total of 32 bits).
59. IPv6 Addressing 59
IPv6 Address with an Embedded
IPv4 Address
● Two kinds of IPv6 addresses have an embedded IPv4
address:
1. IPv4-compatible IPv6 address
● Used to establish an automatic tunnel to carry IPv6 packets
over IPv4 networks.
● related to a transition mechanism of the IPv6 protocol.
2. IPv4-mapped IPv6 address
● Used only on the local scope of nodes having both IPv4 and
IPv6 stacks.
● Nodes use IPv4-mapped IPv6 addresses internally only.
● These addresses are never known outside the node itself and
should not go on the wire as IPv6 addresses.
60. IPv6 Addressing 60
IPv6 Address with an Embedded
IPv4 Address
IPv4-compatible IPv6 address
IPv4-mapped IPv6 address
61. IPv6 Addressing 61
IPv6 Address Representation
for URL
● colon (:) character is already defined to specify an optional
port number for example:
● www.example.net:8080/index.html
● https://www.example.com:8443/abc.html
● In IPv6, the URL parser of Internet browsers must be able to
differentiate between the colon of a port number and the colon
in an IPv6 address.
● To identify the IPv6 address while still keeping the colon
character for URL format (port number):
● the IPv6 address must be enclosed in brackets
● after the brackets, the port number may be added, followed by
the directory and filename.
● [3ffe:b80:c18:1::50]:8080/index.html
● https://[2001:410:0:1:250:fcee:e450:33ab]:8443/abc.html
62. IPv6 Addressing 62
IPv6 and Subnetting
● The only acceptable form to represent a network
mask in IPv6 is CIDR notation.
● Although IPv6 addresses are in hexadecimal format,
the network mask value is still a decimal value.