IPv6 Deployment - Technical Details

A typical IPv4 address looks something like 125.82.103.171 (that is 32 bits or 4 bytes) while an IPv6 address (128 bits or 16 bytes) represented the same way would look like this:

120.254.56.127.130.25.36.78.162.73.221.86.213.34.48.1

In order to represent this more compactly, IPv6 addresses are usually written in hexadecimal. These addresses are case insensitive, leading zeroes are optional, and successive fields of zeroes can be represented as ::, but only once per address.

So an IPv6 address like 2001:0000:4321:0000:0000:c2d2:b0b0:0123 could be written 2001:0:4321:0:0:c2d2:b0b0:123 or even more compactly as 2001:0:4321::c2d2:b0b0:123.

In an IPv6 address the first 48 bits are used for Internet routing

FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF

the 49th through 54th bits are used to identify the subnet

FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF

and the last 64 bits identify the network interface (the device itself)

FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF

Instead of using a subnet mask (as in IPv4) to identify which part of an address represents the network, IPv6 appends a number which represents the length of the network prefix, i.e.:

FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF/64

In IPv6 a network interface will have multiple IPv6 addresses, including:

  • a link-local address (unicast)

    This address is used for local, non-routed communication, to receive router advertisements, etc. The prefix fe80:: pre-pended to the identifier for that network interface a la fe80::217:f2ff:fec8:e40b.

  • a global unicast address

    This address is used for communication on the Internet. The prefix 2000::/3 is attached. At Clemson, on IPv4 this looks like 130.127.0.0/16. On IPv4, this is 2620:103:a000::/44.

  • other unicast addresses

    An unspecified address, just as in IPv4, is represented by all zeroes or ::.

    The loopback address, used by the host to refer to itself, is ::1.

  • NAT64

    These embed IPv4 addresses in IPv6 addresses (a transitional strategy) and begin with 64:ff9b.

Addresses can be assigned statically or dynamically through DHCPv6.