IPv6 Addressing Cheat Sheet - WintelGuy.com (2024)

This page outlinesbasic information about IPv6 address representation, differentaddress types and formats.

IPv6 set of protocolsand standards was developed by the Internet Engineering Task Force(IETF) as a replacement for the currently used IPv4 version. Mostnoticeable difference between the versions is that IPv6 uses 128-bitaddresses (16 bytes) comparing to 32 bit (4 bytes) for IPv4. As aresult, IPv6 offers much larger addressees space and allows efficientand hierarchically structuredaddressing and routing. Other improved IPV6 futures are automaticconfiguration, quality of service (QoS), and security.

IPv6 Address Representation

There are threeconventional forms for representing IPv6 addresses as text strings:

  • Preferred form –address is represented by eight 16-bit groups in hexadecimal formdivided by colons: x:x:x:x:x:x:x:x

Where“x”s represent from one to four hexadecimaldigits. Leading zeroes can be omitted, but there must be at least onedigit present in each group.

Examples:

2001:db8:0:0:1:23b8:0:298c

fe80:0:0:0:2cc5:6ac9:3f76:bb55

fc00:0:0:0:0:0:0:0

0:0:0:0:0:0:0:1

  • Compressed form -uses "::"(known as double-colon) to indicate one or more groups of 16bits of zeroes. The "::"can only appear once in an address. The "::"can also be used to compress leading or trailing zeros in anaddress.

Examples:

2001:db8::1:23b8:0:298c

fe80::2cc5:6ac9:3f76:bb55

fc00::

::1

  • Alternative form -for dealing with mixed IPv4 and IPv6 environments:x:x:x:x:x:x:y.y.y.yWhere “x”s represent hexadecimal values of thesix high-order groups of the address and “y”s aredecimal values of the low-order 8-bit pieces of the address instandard IPv4 representation.

Examples:

0:0:0:0:0:0:192.168.2.10

0:0:0:0:0:ffff:10.0.5.1

::192.168.2.10

::ffff:10.0.5.1

[RFC5952]provides detailed recommendations for IPv6 address textrepresentation. Some of them are listed below:

  • Leading zeros mustbe suppressed.

  • The use of thesymbol "::" must be used to its maximum capability.

  • The symbol "::"must not be used to shorten just one 16-bit 0 field.

  • When there is analternative choice in the placement of a "::", thelongest run of consecutive 16-bit 0 fields must be shortened. Whenthe length of the consecutive 16-bit 0 fields are equal, the firstsequence of zero bits must be shortened.

  • The characters"a", "b", "c", "d", "e",and "f" in an IPv6 address must be represented inlowercase.

Classless Inter-Domain Routing (CIDR) notation for IPv6 address prefixes issimilar to IPv4: address/prefix_length

Examples:

2001:0db8:0000:0000:ab50:0000:0000:0000/64

2001:db8:0:0:ab50:0:0:0/64

2001:db8:0:0:ab50::/64

0:0:0:0:0:0:0:1/128

::1/128

Notes:

  • Trailing zeroswithin any 16-bit group of the address must not be dropped.

  • A subnet mask isnot used for IPv6. Only the prefix length notation is supported.

IPv6 Address Types

There are three types of IPv6 addresses: Unicast, Anycast, and Multicast.

There are no broadcast addresses in IPv6, their function being superseded by multicastaddresses.

Scope:

Every IPv6 addressother than the unspecified address has a specific scope; that is, atopological span within which the address may be used as a uniqueidentifier for an interface or set of interfaces. In other words, thescope is the the portion of the IPv6 internetwork over which theaddress is unique.

The scope of an addressis encoded as part of the address.

Unicast:

A unicast addressidentifies a single interface. A packet sent to a unicast address isdelivered to the interface identified by that address.

The IPv6 Unicast space encompasses the entire IPv6 address space with theexception of the ff00::/8 range.

There are several typesof unicast IPv6 addresses:

  • Global Unicast(range of 2000::/3)

  • Unique LocalUnicast, also called LocalIPv6 Addresses (range fc00::/7)[RFC4193]

  • Link-LocalUnicast (range of fe80::/10)

There are also some special purposes subtypes of Global Unicast, such asIPv6 addressees with embedded IPv4 addresses (range of 0000::/8)

Notes:

  • Currently only2000::/3is been allocated by the IANA for the purpose of Global Unicast. Inthe future other unassigned portions of the IPv6 address space mightbe allocated for the purpose of Global Unicast as well.

  • Site-Localaddresses (rangeof fec0::/10)were originally designed to be used for addressing inside of a sitewithout the need for a global prefix. Site-local addresses are nowdeprecated as defined in [RFC3879].However, existing implementations and deployments may continue touse this prefix.

Two scopes are definedfor unicast addresses [RFC4007]:

  • Link-localscope, for uniquely identifying interfaces within (i.e.,attached to) a single link only.

  • Global scope,for uniquely identifying interfaces anywhere in the Internet.

All Unicastaddresses, except those from the range of 0000::/8,havethe general structure composed of 64-bit subnet prefix and 64-bitInterface identifier.

64 bits

64 bits

subnet prefix

interface ID

Interface IDis an interface identifier constructed in Modified EUI-64 format.

Modified EUI-64 format-based interface identifiers may have universal scopewhen derived from a universal token (e.g., IEEE 802 48-bit MAC orIEEE EUI-64 identifiers) or may have local scope where a global tokenis not available (e.g., serial links, tunnel end-points) or whereglobal tokens are undesirable (e.g., temporary tokens for privacy[RFC4941]).

IEEE EUI-64 identifiers aretransformed to the Modified EUI-64 format by inverting the “u”bit (bit #7 - universal/local bit in IEEE EUI-64 terminology). Inthe resulting Modified EUI-64 format, the "u" bit isset to one (1) to indicate universal scope, and it is set to zero (0)to indicate local scope.

IEEE 48-bit MACidentifiers are transformed to the ModifiedEUI-64 format by inserting two octets, with hexadecimal values of0xff and 0xfe, in the middle of 48-bit MAC and inverting the “u”bit.

Example:

MAC address: 00-aa-aa-bb-bb-bb

InterfaceID in modified EUI-64 format: 02aa:aaff:febb:bbbb

For manually configuredInterface IDs “u” bit should be set to zero (0).

Notes:

  • IPv6 nodes are notrequired to validate the uniqueness of the interface identifierscreated with modified EUI-64 tokens with the "u"bit set to universal (1).

  • By default,Windows Vista and Windows Server 2008 assign a permanent, randomlygenerated value to Interface ID.

All Global Unicastaddresses (except the range of 0000::/8)have the following format:

n bits

64-n bits

64 bits

global routing prefix

subnetID

interface ID

Where:

global routing prefix is a value assigned to a site.

subnet ID is an identifier of a link withing the site.

interface ID is an interface identifier constructed in ModifiedEUI-64 format describedearlier.

The global routingprefix is designed to be structured hierarchically globally bythe regional Internet registry (RIRs) and ISPs. The subnet IDfield is designed to be structured hierarchically locally by siteadministrators.

[RFC3177]recommends the following general rules for the allocations of theboundary between the public and the private topology:

  • /48 in thegeneral case – home network subscribers, small and largeenterprises (except for very large subscribers).

  • /47, orslightly shorter, or multiple /48 for very large subscribers.

  • /64 when itis known that one and only one subnet is needed by design (mobilenetworks).

  • /128 whenit is absolutely known that one and only one device is connecting (asingle PC).

Example:

Format of the GlobalUnicast address under the 2000::/3prefixwith /48allocation:

3 bits

45 bits

16 bits

64 bits

001

global routing prefix

subnetID

interface ID

With 16 bits allocated to subnet IDorganizations can create up to 65536 internal subnets or multiplelevels of addressing hierarchy and routing infrastructure for one ormultiple sites.

Unique Local Unicastaddresses (range of fc00::/7)[RFC4193]are designedto be globally unique and intended to be used for localcommunications within a site or a groups of sites. They are notexpected to be routable globally, however they are routable within asite or between sites. The scope of the Unique Local Unicastaddresses is, by default, global.

UniqueLocal Unicast addresses have the following format:

7 bits

1 bit

40 bits

16 bits

64 bits

1111 110

L flag

global ID

subnetID

interface ID

Where:

1111110 -7-bit prefix fc00::/7identifiesUnique Local Unicast addresses.

L=1 indicates that the prefix is locally assigned. L= 0 setting may be defined in the future.

globalID- globally unique prefix. When L=1, prefix is self-generated using pseudo-random algorithm.

subnetID– identifies a subnet within a site.

interfaceID– interface identifier inModified EUI-64 format described earlier.

Link-Local Unicastaddresses (range offe80::/10)are used for addressing on a single link for purposessuch as automatic address configuration, neighbour discovery, or whenno routers are present. Routers must not forward any packets withLink-Local source or destination addresses to other links.

IPv6 link-localaddresses are equivalent to the IPv4 link-local addresses169.254.0.0/16 [RFC3927]also know as IPv4 Automatic Private IP Addressing (APIPA) addresses.

Link-Local addresseshave the following format:

10 bits

54 bits

64 bits

1111 1110 10

0000...0000

interface ID

Where:

1111111010-10-bit prefix fe80::/10identifiesLink-Local Unicast addresses.

InterfaceID– interface identifier inModified EUI-64 format described earlier.

Anycast:

An anycast addressidentifies a set of interfaces (typically belonging to differentnodes). A packet sent to an anycast address is delivered to one ofthe interfaces identified by that address (the "nearest"one, according to the routing protocols' measure of distance). Atpresent, anycast addresses are only used as destination addresses andare only assigned to routers.

Anycast addresses areallocated from the unicastaddress space (of any scope), are not syntactically distinguishablefrom unicast addresses, and have the same scope properties as unicastaddresses.

The predefinedSubnet-Router anycast address is constructed from the unicastaddress for a given interface with the bits in the subnet prefixfixed at their appropriate values and the remaining bits set to 0.All router interfaces attached to a subnet are assigned theSubnet-Router anycast address for that subnet.

64 bits

64 bits

subnet prefix

0000...0000

Multicast:

A multicast addressidentifies a set of interfaces (typically belonging to differentnodes). A packet sent to a multicast address is delivered to allinterfaces identified by that address.

IPv6 multicast addresses are distinguished fromunicast addresses by the value of the high-order octet of theaddresses: a value of 0xff (binary 11111111) identifies an address asa multicast address (address range of ff00::/8); any othervalue identifies an address as a unicast address.

For multicastaddresses, there are fourteen possible scopes, ranging frominterface-local to global (including link-local).

Multicast addresses canhave one of the following formats:

Base operational formatdefined in [RFC4291]

8 bits

4 bits

4 bits

112 bits

1111 1111

flags

scope

group ID

Extended format thatincorporates unicast prefix information (Unicast-Prefix-based IPv6Multicast address) defined in [RFC3306].(flagsfield is equal "0011")

8 bits

4 bits

4 bits

8 bits

8 bits

64 bits

32 bits

1111 1111

flags

scope

reserved

plen

network prefix

group ID

Modifiedunicast-prefix-based address format with encoded Rendezvous Point(RP) Address defined in [RFC3956].(flagsfield is equal "0111")

8 bits

4 bits

4 bits

4 bits

4 bits

8 bits

64 bits

32 bits

1111 1111

flags

scope

reserved

RIID

plen

network prefix

group ID

Where:

11111111- 8-bit prefix ff00::/8identifiesMulticast addresses.

flags is a setof four flags:

R

P

T

T - Transient flag.

T = 0 indicatesa permanently-assigned (“well-known”) multicast address,assigned by IANA.

T = 1 indicatesa non-permanently-assigned (“transient” or “dynamically”assigned) multicast address.

P - Prefix flag[RFC3306].

P =0 indicates amulticast address that is notassigned on the network prefix (i.e.structured according to the Base format)

P= 1 indicates a multicast address that is assigned based on thenetwork prefix (i.e. structured according to the Extended format) IfP = 1, Tmust be set to 1.

R - RendezvousPoint Address flag [RFC3956].

R = 1 indicatesa multicast address that embeds the address on the Rendezvous Point(RP). Then P must be set to 1, and consequently T mustbe set to 1. In this case, the RIID field is embedding the RPinterface ID.

R = 0 indicatesa multicast address that does not embed the address of the RP andfollows the semantics defined in [RFC4291]and [RFC3306].

Scope is a 4-bitmulticast scope value used to limit the scope of the multicast group.The values are as follows:

0 reserved

1 Interface-Local scope -spans only a single interface on a node and is useful only forloopback transmission of multicast.

2 Link-Local scope - spansthe same topological region as the corresponding unicast scope.

3 reserved

4 Admin-Local scope - isthe smallest scope that must be administratively configured, i.e.,not automatically derived from physical connectivity or other,non-multicast-related configuration.

5 Site-Local scope - isintended to span a single site.

6 (unassigned)

7 (unassigned)

8 Organization-Local scope- is intended to span multiple sites belonging to a singleorganization.

9 (unassigned)

A (unassigned)

B (unassigned)

C (unassigned)

D (unassigned)

E Global scope

F reserved

Scopes labeled"(unassigned)" are available for administrators to defineadditional multicast regions.

Routers must notforward any multicast packets beyond of the scope indicated by thescope field in the destination multicast address.

Nodes must notoriginate a packet to a multicast address whose scope fieldcontains the reserved value 0; if such a packet is received, it mustbe silently dropped. Nodes should not originate a packet to amulticast address whose scope field contains the reservedvalue F; if such a packet is sent or received, it must betreated the same as packets destined to a global (scope E)multicast address.

The reservedfield must be zero.

plen indicatesthe actual number of bits in the network prefix field thatidentifies the subnet when flag P = 1.

network prefixidentifies the network prefix of the unicast subnet owning themulticast address (when P = 1).

Group IDidentifies the multicast group, either permanent or transient, withinthe given scope.

Group IDs for permanent multicast addresses are allocated by IANA in therange of 0x00000001 to 0x3fffffff andmust have flag T = 0and flag P = 0

Permanent IPv6 Multicast Group Identifiers (Permanent Group IDs) are allocated inthe range 0x40000000 to 0x7fffffff.

All dynamically allocated IPv6 multicast addresses must have flag T = 1. Thehigh-order bit of the Group ID of the dynamically allocated IPv6multicast address will be the same as the T flag.

Group IDs for IPv6 multicast addresses allocated by a server or self-selected by ahost must fall in the range 0x80000000 to 0xffffffff.

Solicited-Nodemulticast addresses are dedicated to identify the solicited-nodeduring neighbour discovery. A Solicited-Node multicast address isformed by taking the low-order 24 bits of an address (unicast oranycast) and appending those bits to the prefixff02:0:0:0:0:1:ff00::/104 resulting in a multicast address inthe range:

From:

ff02

:

:

:

:

:

1

:

ff00

:

To:

ff02

:

:

:

:

:

1

:

ffff

:

ffff

Source-SpecificMulticast Addresses (SSM) areUnicast-Prefix-based IPv6 Multicast addresses with the flag P=0, plen= 0, and network prefix= 0. Therefore, SSM multicast addresses are derived from theff3x::/96 prefix,where x is a 4-bitmulticast scope value.

The"meaning" of a permanently-assigned multicast address isindependent of the scope value. Non-permanently-assigned multicastaddresses are meaningful only within a given scope.

When sending IPv6multicast packets on an Ethernet link, the corresponding destinationMAC address is 33-33-xx-xx-xx-xx where xx-xx-xx-xx is a directmapping of the last 32 bits of the IPv6 multicast address.

For example, theaddress of 33-33-00-00-00-01 corresponds to the link-local scopeall-nodes multicast address of ff02::1.

ScopeZones [RFC4007]:

A scope zone, or simplya zone, is a connected region of topology of a given scope.

Zones of the differentscopes are represented as follows:

  • Each interface ona node comprises a single zone of interface-local scope (formulticast only).

  • Each link and theinterfaces attached to that link comprise a single zone oflink-local scope (for both unicast and multicast).

  • There is a singlezone of global scope (for both unicast and multicast) comprising allthe links and interfaces in the Internet.

  • The boundaries ofzones of a scope other than interface-local, link-local, and globalmust be defined and configured by network administrators.

To distinguish betweennon-global zones within a node a distinct “zone index” isassigned to each zone of the same scope to which that node isattaches.

Scope zone for anon-global IPv6 address can be represented in the following format:

address%zone_id

Where:

address isa local-use address.

zone_ididentifies the zone for the address. zone_id format isimplementation dependent and could be, for example, a numberrepresenting zone index or an interface name, etc.

Special-UseIPv6 Addresses:

See [RFC5156]

IPv6Address assignment for a host:

  • At least oneLink-Local address for each interface.

  • Assigned(configured) unicast addresses for each interface (for example, oneor multiple global unicast addresses).

  • The loopbackaddress (::1) for the loopback interface.

Additionally, each hostis listening for traffic on the following multicast addresses:

  • Theinterface-local scope all-nodes multicast address (ff01::1)

  • The link-localscope all-nodes multicast address (ff02::1)

  • The solicited-nodeaddress for each unicast address on each interface

  • The multicastaddresses of joined groups on each interface

IPv6 Addressassignment for a router:

  • At least oneLink-Local address for each interface.

  • Assigned(configured) unicast addresses for each interface (for example, oneor multiple global unicast addresses).

  • A Subnet-Routeranycast address

  • Additional anycastaddresses (optional)

  • The loopbackaddress (::1) for the loopback interface.

Additionally, eachrouter is listening for traffic on the following multicast addresses:

  • Theinterface-local scope all-nodes multicast address (ff01::1)

  • Theinterface-local scope all-routers multicast address (ff01::2)

  • The link-localscope all-nodes multicast address (ff02::1)

  • The link-localscope all-routers multicast address (ff02::2)

  • The site-localscope all-routers multicast address (ff05::2)

  • The solicited-nodeaddress for each unicast address on each interface

  • The multicastaddresses of joined groups on each interface

IPv6 Addressing Cheat Sheet - WintelGuy.com (2024)
Top Articles
Latest Posts
Article information

Author: Margart Wisoky

Last Updated:

Views: 6123

Rating: 4.8 / 5 (78 voted)

Reviews: 93% of readers found this page helpful

Author information

Name: Margart Wisoky

Birthday: 1993-05-13

Address: 2113 Abernathy Knoll, New Tamerafurt, CT 66893-2169

Phone: +25815234346805

Job: Central Developer

Hobby: Machining, Pottery, Rafting, Cosplaying, Jogging, Taekwondo, Scouting

Introduction: My name is Margart Wisoky, I am a gorgeous, shiny, successful, beautiful, adventurous, excited, pleasant person who loves writing and wants to share my knowledge and understanding with you.