Title: IPv6 Address Representation
1IPv6 Address Representation
2Objectives
- IPv6 Addressing scheme
- IPv6 Address Plan
- IPv6 Address Types
- IPv6 Address with an Embedded IPv4 Address
- IPv6 Address Representation for URL
- IPv6 and Subnetting
3IPv6 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
- 200107181c010016020d56fffe7752a3
- 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.
4IPv6 Address Notation Example
- 128.91.45.157.220.40.0.0.0.0.252.87.212.200.31.255
5Rule 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
- FE800002AAFFFE9A4CA2 ? FE802AAFFFE9A4C
A2. - multicast address
- FF020000002 ? FF022
- loopback address
- 00000001 ? 1
6Rule 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 FF0230000005 as FF0235
- correct representation FF02305
- Leading zeroes in every group can be omitted.
- 20017181c011620d56fffe7752a3
7Rule 1- IPv6 Zero Suppression
- To determine the number of 0 bits represented by
the - count the number of blocks in the compressed
address - (-) subtract this number from 8
- () multiply the result by 16.
- For example
- FF022
- two blocks - FF02 block and 2 block.
- 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 .
8IPv6 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, 21DAD3/48 and 21DAD302F3B/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.
9IPv6 Prefixes
10IPv6 Address Types
11IPv6 Addresses Types and Scopes
12IPv6 Address Categories
13IPv6 Address Types
14Unicast 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
15Global 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)
16Global 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 providers 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-bits 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 nodes interface
identifier. - This part of the IPv6 address, which represents
the addresss low-order 64-bit, is called the
interface ID.
17Global Unicast Address Example
200104100110/48 is assigned by a
provider 2001041001100002/64 network subnet
within the organization 20010410011000020200C
BCF12344402 node address within the subnet
18Global Unicast Address
19Global Unicast Address Allocation
20Global Unicast Address Allocation
Prefix (hex) Prefix (Binary) Description
2000/16 0010 0000 0000 0000 Reserved
2001/16 0010 0000 0000 0001 IPv6 Internet -ARIN,APNIC,RIPE NCC,LACNIC
2002/16 0010 0000 0000 0 6 to 4 transition mechanisms
2003/16 0010 0000 0000 0011 IPv6 Internet - RIPE NCCC
24000000/19 24002000/19 24004000/21 0010 0100 0000 0000 IPv6 Internet - APNIC
26000000/22 26040000/22 26080000/22 260C0000/22 0010 0110 0000 0000 0010 0110 0000 0100 0010 0110 0000 1000 0010 0110 0000 1100 IPv6 Internet -ARIN
2A000000/21 2A010000/23 0010 1010 0000 0000 0010 1010 0000 0001 IPv6 Internet -RIPE NCC
3FFF/16 0011 1111 1111 1110 6 Bone
21IPv6 Unicast Address Scopes
- Three types of scopes
- Link-local scope
- Identifies all hosts within a single layer 2
domain. - Called as link-local addresses
- Unique-local scope
- Identifies all devices reachable within an
administrative site or domain typically contains
multiple distinct links. - Called as unique-local addresses (ULAs)
- Global scope
- Identifies all devices reachable across the
Internet. - Called as global unicast addresses (GUAs)
22Local-Use Unicast Addresses
- There are two types of local-use unicast
addresses - Link-local addresses
- used between on-link neighbors and for Neighbor
Discovery Processes. - Site-local addresses
- used between nodes communicating with other nodes
in the same site.
23Link-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.
24Link-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
addresss 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.
25Link-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 routers 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.
26Site-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).
27Site-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.
28Site-Local Address - Example
- For example, a site with ten subnets may assign
site-local prefixes such as the following - Subnet 1FEC0000001/64
- Subnet 2FEC0000002/64
- Subnet 3FEC0000003/64
- Subnet 4FEC0000004/64
- Subnet 5FEC0000005/64
- Subnet 6FEC0000006/64
- Subnet 7FEC0000007/64
- Subnet 8FEC0000008/64
- Subnet 9FEC0000009/64
- Subnet 10FEC000000A/64
29Special IPv6 Addresses
- The following are special IPv6 addresses
- Unspecified address
- unspecified address (00000000 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 (00000001 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.
30Multicast Addresses
31Multicast 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.
32Multicast 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
33Multicast 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.
34Format 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.
35Format 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.
36Format of the Multicast AddressScope 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 (interface-local scope)
- 2 (link-local scope)
- 5 (site-local scope)
- For example
- Traffic with the multicast address of FF022 has
a link-local scope. - An IPv6 router never forwards this traffic beyond
the local link.
37Format of the Multicast AddressScope Field
Example of Multicast Addresses with Different
Scopes
38Format of the Multicast AddressGroup 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.
39Multicast 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.
40Solicited-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.
41Solicited-Node Multicast Address Representations
Consists of the prefix FF021FF000000/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
FF021FF.
42Solicited-Node Multicast Address Representations
Examples of Solicited-Node Multicast Addresses
Made from Unicast Addresses
43Anycast Address
44Anycast 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.
45Reserved 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.
46So, How many IPv6 addresses can a host have?
47IPv6 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 - 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) - The loopback address (1) for the loopback
interface
48IPv6 Addresses for a Host
- Typical IPv6 hosts are logically multihomed
because they have at least two addresses with
which they can receive packets - a link-local address for local link traffic
- a routable site-local or global address.
- Additionally, each host is listening for traffic
on the following multicast addresses - The interface-local scope all-nodes multicast
address (FF011) - The link-local scope all-nodes multicast address
(FF021) - The solicited-node address for each unicast
address on each interface - The multicast addresses of joined groups on each
interface
49And, How many IPv6 addresses can a host have?
50IPv6 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
51IPv6 Addresses for a Router
- Additionally, each router is listening for
traffic on the following multicast addresses - The interface-local scope all-nodes multicast
address (FF011) - The interface-local scope all-routers multicast
address (FF012) - The link-local scope all-nodes multicast address
(FF021) - The link-local scope all-routers multicast
address (FF022) - The site-local scope all-routers multicast
address (FF052) - The solicited-node address for each unicast
address on each interface - The multicast addresses of joined groups on each
interface
52IPv6 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.
53IPv6 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
randomizeidentifiersdisabled command.
54EUI-64 address-based interface identifiers
55IPv6 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.
56The 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.
57Converting 48-Bit MAC Addresses to IPv6 Modified
EUI-64 Identifiers
58IPv6 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).
59IPv6 Address with an Embedded IPv4 Address
- Two kinds of IPv6 addresses have an embedded IPv4
address - 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. - 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.
60IPv6 Address with an Embedded IPv4 Address
- IPv4-compatible IPv6 address
IPv4-mapped IPv6 address
61IPv6 Address Representation for URL
- colon () character is already defined to specify
an optional port number for example - www.example.net8080/index.html
- https//www.example.com8443/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. - 3ffeb80c181508080/index.html
- https//200141001250fceee45033ab8443/abc
.html
62IPv6 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.
63(No Transcript)