Lesson 3 IPv6 Addressing
Lesson Objectives IPv6 address space IPv6 address syntax Unicast IPv6 addresses Multicast IPv6 addresses Anycast IPv6 addresses IPv6 interface identifiers IPv4 addresses and IPv6 equivalents
The IPv6 Address Space 128-bit address space 2128 possible addresses 340,282,366,920,938,463,463,374,607,431,768,211,456 addresses (3.4 x 1038) 128 bits were chosen to allow multiple levels of hierarchy and flexibility in designing hierarchical addressing and routing Typical unicast IPv6 address: 64 bits for subnet ID, 64 bits for interface ID
Current Allocation Format Fraction of Allocation Prefix address space Reserved 0000 0000 1/256 NSAP Allocation 0000 001 1/128 Aggregatable Global Unicast 001 1/8 Link-Local Unicast 1111 1110 10 1/1024 Site-Local Unicast 1111 1110 11 1/1024 Multicast 1111 1111 1/256
IPv6 Address Syntax IPv6 address in binary form: 0010000111011010000000001101001100000000000000000010111100111011 0000001010101010000000001111111111111110001010001001110001011010 Divided along 16-bit boundaries: 0010000111011010 0000000011010011 0000000000000000 0010111100111011 0000001010101010 0000000011111111 1111111000101000 1001110001011010 Each 16-bit block is converted to hexadecimal and delimited with colons: 21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A Suppress leading zeros within each 16-bit block: 21DA:D3:0:2F3B:2AA:FF:FE28:9C5A
Compressing Zeros Some IPv6 addresses contain long sequences of zeros A single contiguous sequence of 16-bit blocks set to 0 can be compressed to “::” (double-colon) Example: FE80:0:0:0:2AA:FF:FE9A:4CA2 becomes FE80::2AA:FF:FE9A:4CA2 FF02:0:0:0:0:0:0:2 becomes FF02::2 Cannot use zero compression to include part of a 16-bit block FF02:30:0:0:0:0:0:5 does not become FF02:3::5.
IPv6 Prefixes Prefix is the part of the address where the bits have fixed values or are the bits of a route or subnet identifier IPv6 subnets or routes always uses address/prefix-length notation CIDR notation Examples: 21DA:D3::/48 for a route 21DA:D3:0:2F3B::/64 for a subnet No more dotted decimal subnet masks
Types of IPv6 Addresses Unicast Multicast Anycast Address of a single interface One-to-one delivery to single interface Multicast Address of a set of interfaces One-to-many delivery to all interfaces in the set Anycast One-to-one-of-many delivery to a single interface in the set that is closest No more broadcast addresses
Unicast IPv6 Addresses Aggregatable global unicast addresses Link-local addresses Site-local addresses Special addresses Compatibility addresses NSAP addresses
Aggregatable Global Unicast Addresses Top-Level Aggregation ID (TLA ID) Next-Level Aggregation ID (NLA ID) Site-Level Aggregation ID (SLA ID) Interface ID 13 bits 8 bits 24 bits 16 bits 64 bits 001 TLA ID Res NLA ID SLA ID Interface ID
Topologies Within Global Addresses Public Topology Site Topology Interface ID 001 TLA ID Res NLA ID SLA ID Interface ID 48 bits 16 bits 64 bits Public Topology Site Topology Interface Identifier
Local-Use Unicast Addresses Link-local addresses Used between on-link neighbors and for Neighbor Discovery Site-local addresses Used between nodes in the same site
Link-Local Addresses Format Prefix 1111 1110 10 FE80::/64 prefix Used for local link only Single subnet, no router Address autoconfiguration Neighbor Discovery 10 bits 54 bits 64 bits 1111 1110 10 000 . . . 000 Interface ID
Site-Local Addresses Format Prefix 1111 1110 11 FEC0::/48 prefix for site Used for local site only Replacement for IPv4 private addresses Intranets not connected to the Internet Routers do not forward site-local traffic outside the site 10 bits 38 bits 16 bits 64 bits 1111 1110 11 000 . . . 000 Subnet ID Interface ID
Special IPv6 Addresses Unspecified address Loopback address 0:0:0:0:0:0:0:0 or :: Loopback address 0:0:0:0:0:0:0:1 or ::1
Compatibility Addresses IPv4-compatible address 0:0:0:0:0:0:w.x.y.z or ::w.x.y.z IPv4-mapped address 0:0:0:0:0:FFFF:w.x.y.z or ::FFFF:w.x.y.z 6over4 address Interface ID of ::WWXX:YYZZ 6to4 address Prefix of 2002:WWXX:YYZZ::/48 ISATAP address Interface ID of ::0:5EFE:w.x.y.z
NSAP Addresses 7 bits 121 bits 0000001 NSAP-mapped address
Multicast IPv6 Addresses Flags Scope Defined multicast addresses All-Nodes addresses FF01::1 (Node Local), FF02::1 (Link Local) All-Routers addresses FF01::2 (Node Local), FF02::2 (Link Local), FF05::2 (Site Local) 8 bits 4 bits 4 bits 112 bits 1111 1111 Flags Scope Group ID
Recommended Multicast IPv6 Addresses Only 32 bits are used to indicate the Group ID Single IPv6 multicast address maps to a single Ethernet multicast MAC address 8 bits 4 bits 4 bits 80 bits 32 bits 1111 1111 Flags Scope 000 … 000 Group ID
Solicited-Node Address 64 bits 64 bits Unicast prefix Interface ID 24 bits FF02: 0:0:0:0 :1:FF Example: For FE80::2AA:FF:FE28:9C5A, the corresponding solicited-node address is FF02::1:FF28:9C5A Acts as a pseudo-unicast address for very efficient address resolution
Anycast IPv6 Addresses Not associated with any prefix Summary and host routes are used to locate nearest anycast group member Subnet router anycast address: n bits 128 - n bits Subnet Prefix 000 . . . 000
IPv6 Addresses for a Host Unicast addresses: A link-local address for each interface Unicast addresses for each interface (site-local or global addresses) A loopback address (::1) Multicast addresses: The node-local scope all-nodes multicast address (FF01::1) The link-local scope all-nodes multicast address (FF02::1) The solicited-node address for each unicast address The multicast addresses of joined groups
IPv6 Addresses for a Router Unicast addresses: A link-local address for each interface Unicast addresses for each interface Loopback address (::1) Anycast addresses Subnet-router anycast address Additional anycast addresses (optional) Multicast addresses: The node-local scope all-nodes multicast address (FF01::1) The node-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 The multicast addresses of joined groups
Subnetting the IPv6 Address Space Subdividing by using high-order bits that do not already have fixed values to create subnetted network prefixes Two-step process: 1. Determine the number of bits to be used for the subnetting 2. Enumerate the new subnetted network prefixes
[16-bit prefix]:00 :: Subnetting for NLA IDs Hexadecimal method
[48-bit prefix]: :: Subnetting for SLA IDs Hexadecimal method
IPv6 Interface Identifiers The last 64 bits of unicast IPv6 addresses Interface identifier based on: Extended Unique Identifier (EUI)-64 address Either assigned to a network adapter card or derived from IEEE 802 addresses Temporarily assigned, randomly generated value that changes over time A value assigned by a stateful address configuration protocol A value assigned during a Point-to-Point Protocol connection establishment A manually configured value
IEEE 802 Addresses Company ID Extension ID U/L bit (u) U/G bit (g) Universally (=0)/Locally (=1) Administered U/G bit (g) Unicast (=0)/Group (=1) Address 24 bits 24 bits ccccccug cccccccc cccccccc xxxxxxxx xxxxxxxx xxxxxxxx IEEE-administered company ID Manufacturer-selected extension ID
IEEE EUI-64 Addresses Extended Unique Identifier Company ID Extension ID ccccccug cccccccc cccccccc 24 bits 40 bits xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx IEEE-administered company ID Manufacturer-selected extension ID
Conversion of an IEEE 802 Address to an EUI-64 Address IEEE-administered company ID Manufacturer-selected extension ID 24 bits 24 bits ccccccug cccccccc cccccccc xxxxxxxx xxxxxxxx xxxxxxxx IEEE 802 Address ccccccug cccccccc cccccccc 11111111 11111110 xxxxxxxx xxxxxxxx xxxxxxxx EUI-64 Address 0xFF 0xFE
Conversion of an EUI-64 Address to an IPv6 Interface ID ccccccug cccccccc cccccccc xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx Complement the universally/locally administered (U/L) bit ccccccUg cccccccc cccccccc xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx IPv6 Interface Identifier
Conversion of an IEEE 802 Address to an IPv6 Interface ID IEEE-administered company ID Manufacturer-selected extension ID 24 bits 24 bits cccccc00 cccccccc cccccccc xxxxxxxx xxxxxxxx xxxxxxxx IEEE 802 Address EUI-64 Address cccccc00 cccccccc cccccccc 11111111 11111110 xxxxxxxx xxxxxxxx xxxxxxxx 0xFF 0xFE cccccc10 cccccccc cccccccc 11111111 11111110 xxxxxxxx xxxxxxxx xxxxxxxx IPv6 Interface Identifier 64 bits
IEEE 802 Address Conversion Example Host A has the MAC address of 00-AA-00-3F-2A-1C 1. Convert to EUI-64 format 00-AA-00-FF-FE-3F-2A-1C 2. Complement the U/L bit The first byte in binary form is 00000000. When the seventh bit is complemented, it becomes 00000010 (0x02). Result is 02-AA-00-FF-FE-3F-2A-1C 3. Convert to colon hexadecimal notation 2AA:FF:FE3F:2A1C Link-local address for node with the MAC address of 00-AA-00-3F-2A-1C is FE80::2AA:FF:FE3F:2A1C.
Temporary Address Interface Identifiers Random IPv6 interface identifier Prevent identification of traffic regardless of the prefix Initial value based on random number Future values based on MD5 hash of history value and EUI-64-based interface identifier Result is a temporary address Generated from public address prefixes using stateless address autoconfiguration Changes over time
Mapping IPv6 Multicast Addresses to Ethernet Addresses 8 16 24 32 FF...: Ethernet Multicast Address 33-33-
IPv4 Addresses and IPv6 Equivalents IPv4 Address IPv6 Address Internet address classes N/A Multicast addresses (224.0.0.0/4) IPv6 multicast addresses (FF00::/8) Broadcast addresses N/A Unspecified address is 0.0.0.0 Unspecified address is :: Loopback address is 127.0.0.1 Loopback address is ::1 Public IP addresses Aggregatable global unicast addresses Private IP addresses Site-local addresses (FEC0::/48) APIPA addresses Link-local addresses (FE80::/64) Dotted decimal notation Colon hexadecimal format Subnet mask or prefix length Prefix length notation only
Review IPv6 address space IPv6 address syntax Unicast IPv6 addresses Multicast IPv6 addresses Anycast IPv6 addresses IPv6 interface identifiers IPv4 addresses and IPv6 equivalents