Route My World!

A CCNA/CCNP Blog

Archive for February 5th, 2009

BSCI: IPv6 Addressing Architecture

Posted by Aragoen Celtdra on 5th February 2009

There are three main types of IPv6 addresses:

  • Unicast
    • A packet sent to a unicast address is delivered to the interface identified by that address.
    • There are two defined types of unicast addresses:
      • Global Unicast
      • Link-Local Unicast
      • Site-Local Unicast, is a unicast type that has been deprecated (RFC 3879)
    • The IPv6 unicast address space encompasses the entire IPv6 address range, with the exception of the FFoo::/8 range, which is used for multicast addresses.
  • Anycast
    • A new type of address that is assigned to a set of interfaces on different devices; identifies multiple interfaces.
    • A packet sent to an anycast address goes to the closest interface identified by the anycast address. The closest interfaces is determined by the routing protocol’ measure of distance.
    • Example: unicast address can be use for load balancing and content delivery services.
    • Anycast address syntax are indistinguishable from gloabl unicast addresses because anycast addresses are allocated from the global unicast address space.
  • Multicast
    • Also assigned to a set of interfaces on a different node.
    • A packet sent to a multicast address is delivered to all interfaces identified by that address.

Broadcast Address

  • There are no broadcast addresses in IPv6. Broadcasts are replaced by multicasts and anycasts.
  • Mulitcast prevents most problems that occur with broadcast; such as broadcast storms in IPv4.

IPv6 Addressing Model

  • All types of IPv6 addresses are assigned to interfaces, not nodes.
  • An IPv6 unicast address refers to a single interface.
    • Since each interface belongs to a certain node, any interface on that node can be used with a unicast address as an identifier for that node.
  • A single interface may be assinge multiple IPv6 addresses of any type (unicast, anycast, multicast).
  • Every IPv6-enabled  interface must contain:
    • At least one loopback (::1/128).
    • and one local-link address.
  • Optionally, a single interface may have multiple unique local and global addresses.

IPv6 Address Representation

  • IPv6 addresses are written as hexadecimal numbers with colons between each set of four hexadecimal digits.
    • Each hexadecimal field is 16 bits.
  • The format is:
    • x:x:x:x:x:x:x:x, where x is a 16-bit hexadecimal field.
    • This format is sometimes called “coloned hex” format.
  • Following is an example address:

2035:0001:2BC5:0000:0000:087C:0000:0000A

There are 2 rules that apply to IPv6 address syntax to shorten the notation:

  1. Any number of successive 0s (zeros) can be replaced with a pair of colons (::), once within an address.
    • A pair of colons can only be used once because an address parser identifies the number of missing 0s by separating the two parts and entering 0 until the 128 bits are complete. If two :: notations were used, there would be no way to identify the size of each block of 0s.
  2. Leading 0s within each set of four hexadecimal digits can be omittted.
    • It is not necessary to write the leading 0s in an individual field, but there must be at least one numeral in every field, except for the case of the first rule where the successive 0s are replaced by “::“.

The address in the example above can be shortened as:

2035:1:2BC5::87C:0:A

IPv6 Address Interface Identifiers

  • Interface Identifiers in IPv6 unicast addresses are used to identify unique interfaces on a link.
  • They may be also be thought of as the “host portion” of an IPv6 address.
  • Interface IDs are required to be unique within a link/subnet prefix.
    • They may also be unique over a broader scope.
    • The same interface ID may be used on multiple interfaces on a single node, provided that they are attached to different subnets.
  • Interface IDs may be derived from their interface’s link layer address (MAC address). If so the scope of that ID is assumed to be universal (global).
  • Note the uniqueness of interface identifiers is independent of the uniqueness of IPv6.
    • For example, a global unicast address may be created with a local scope interface identifier and a link-local address may be created with a universal scope interface identifier.
  • Interface identifiers are always 64 bits and are dynamically created based on Layer 2 media and encapsulation.
  • The most common type of Layer 2 address is the IEEE 802 MAC address used in Ethernet.
    • MAC addresses are 48 bits divided into two 24-bit blocks:
      • The upper 24 bits are called Organizationally Unique Identifier (OUI). Different organization have their preassigned OUI
      • The lower 24 bits are used as unique identifiers for the specific vendor hardware device.
    • Interface IDs are constructed in the EUI-64 format, based on the 48-bit MAC address and inserting the 16-bit FF:EE between the upper 3 bytes (upper 24 bits) and the lower 3 bytes (lower 24 bits.
      • The seventh bit in the high order byte of the resulting interface ID is set to binary 1 to indicate the uniqueness of the interface ID.
      • The seventh bit is refered to as the Universal/Local (U/L) bit.
      • This bit identifies whether this interface is locally unique on the link or whether it is universally unique.

eui-64

  • The following shows the process of converting to EUI-64:
    • Focusing on the upper above, you take the first 3 bytes (OUI portion) of the Ethernet address and arrange it to the left of the interface ID.
    • The lower 3 bytes (vendor code) is arranged to the right of the interface ID.
    • Right in the middle, insert the 16-bit hexadecimal of FF:EE (or 1111 1111:1111 1110 in binary).
  • To convert to Modified EUI-64:
    • Change the 7th bit of the first byte (the U/L bit) from 0 to 1.
    • The eighth bit in an IPv6 interface identifier, also known as the “G” bit, is the group/individual bit for managing groups.

IPv6 Global Unicast Address

  • The IPv6 global aggregatable unicast address, aka the IPv6 global unicast address is the equivalent of the IPv4 global unicast address.
  • A global unicast address is an IPv6 address from the global unicast prefix.
  • The global unicast address typically consists of:
    • A 48-bit global routing prefix,
    • A 16-bit subnet ID or Site-Level Aggregator (SLA),
    • And a 64-bit interaface ID (typically in EUI-64 bit format).

ipv6globaladdress

  • Except for addresses that start with 000, all global unicast addresses have a 64-bit interface ID
  • Addresses with prefix of 2000::/3 (binary 001)through E000::/3 (binary 111), excluding the FF00::/8 (binary 1111 1111) multicast addrsses, are required to have a 64-bit EUI-64 address format.
    • The IANA allocates the IPv6 space in the range of 2001::/16 to the registries.
  • A 16-bit subnet field called the subnet ID could be used by inidividual organizations to create their own local addressing hierarchy and to identify subnets. A subnet ID is similar to a subnet in IPv4, except that an organization with an IPv6 subnet ID can support up to 65,535 individual subnets.

IPv6 Link-Local Unicast Address

  • Link-local addresses have a scope limited to the local link. They refer only to a particular physical link/network.
  • They are typically used for special purposes such as address resolution or neighbor discovery. The equivalent IPv4 address is the 169.254.0.0/16 auto-configured address when no DHCP is available.
  • They are dynamically created on all IPv6 interfaces by using a specific link-local prefix FE80::/10 and a 64-bit interface identifier.

ipv6linklocaladdr

  • Nodes on a local link can use link-local addresses to communicate. The nodes do not need globally unique addresses to communicate.
  • IPv6 routers must not forward packets that have link local source and destination addresses to other links.

IPv6 Anycast Addresses

  • An IPv6 address is a global unique address that is assigned to more than one interface.
  • A packet sent to an anycast address is delivered to the closest interface – as defined by the routing protocols in use – identified by the anycast address.
  • Anycast addresses are allocated from the unicast address space, using any of the defined unicast address formats.
    • Essential, anycast addresses are same unicast addresses assigned to more than one interface.
    • The nodes to which the addresses are assigned must be explicitly configured to know that it is an anycast address.
  • An anycast address must not be used as the source address of an IPv6 packet.
  • An anycast address must not be assigned to an IPv6 host – only assign to IPv6 routers.

IPv6 Multicast Addresses

  • Mulitcast addresses are defined by the prefix FF00::/8.
    • The first octet consists binary 1111 1111.
    • The next octet consists of the Flag and Scope parameters.

ipv6multicast

  • The Flag parameter consist of 4 bits. Each bit is defined as follows:
    • Bit 1 = 0; reserved
    • Bit 2 = R flag; Rendezvous Point flag
    • Bit 3 = P flag; Indicates if address is based on unicast prefix.
    • Bit 4 = T flag; 0 if address is permanent; 1 if temporary.
  • The Scope parameter is a 4 bit scope, with values as follows:
    • 1 = Interface-Local scope
    • 2 = Link-Local scope
    • 4 = Admin-Local scope
    • 5 = Site-Local scope
    • 8 = Organization-Local scope
    • E = Global scope
    • An example, FF02::/16 is a permanent multicast address with a link-local scope.
      • Binary is: 1111 1111 0000 0010
      • The second to the last bit (= 2) indicates a Link-local scope.
      • The 0 in the T Flag indicates it is permanent.
  • The multicast address FF00:: to FF0F:: have the “T” flag set to 0 and are reserved. Some common examples of the assigned addresses are:
    • FFO2::1 – All nodes on a link (link-local scope)
    • FF02::2 – All routers on a link
    • FF02::5 – All OSPFv3 routers
    • FF02::6 – All OSPFv3 DR routers
    • FF02::9 – All RIP routers on a link
    • FF02::1:FFXX:XXXX – Solicited-node multicast on a link, where XX:XXXX is the rightmost 24 bits of the corresponding unicast or anycast address of the node. This is similar to ARP in IPv4.
  • The multicast Group ID consists of the lower 112 bits of the multicast address.

Resources:

  1. RFC 4291: IP version 6 Addressing Architecture
  2. TCP/IP Guide – IPv6 Identifiers and Physical Address Mapping
  3. RFC 3587: IPv6 Global Unicast Address Format
  4. IPv6 Addressing at a Glance – Cisco Technology Whitepapers
  5. IPv6 Multicast at a Glance – Cisco Technology Whitepapers

This entry is not an authoritative guide. These are merely notes and rehash of the primary text materials and resources that I use. For a thorough guide of the BSCI course, consider purchasing Building Scalable Cisco Internetworks (BSCI) (Authorized Self-Study Guide) (3rd Edition) by Diane Teare and Catherine Paquet; as well as following the links on the resources section of this entry.

Posted in BSCI Exam Prep, CCNP, IPv6 | 2 Comments » | Print This Post

 

Route My World! is Digg proof thanks to caching by WP Super Cache