IPv6 Explained for Beginners

IPV6 has been developed to replace IPV4 which is running out of addresses. Although it has been around almost 10 years it is still not widely deployed and supported. However, adoption rates are increasing rapidly and IPv6 traffic crossed the 10% threshold in February 2016 (wiki).

For small business/home and home office networks, it is likely to be many years before IPV6 becomes an issue. All modern computers and mobile phones support both IPv4 and IPv6, and if you look at your device IP addresses you will probably see both.

In this tutorial I want to take a quick look at IPv6 addresses, and how they relate to IPv4 addresses.

IPv6 addresses

An Ipv6 address uses 128 bits as opposed to 32 bits in IPv4. IPv6 addresses are written using hexadecimal, as opposed to dotted decimal in IPv4. 

Because a hexadecimal number uses 4 bits this means that an IPv6 address consists of 32 hexadecimal numbers.

These numbers are grouped in 4’s giving 8 groups or blocks. The groups are written with a : (colon) as a separator.

group1:group2: ……etc…. :group8

Here is an IPv6 address example:

Note: Because of the length of IPv6 addresses various shortening techniques are employed.

The main technique is to omit repetitive 0’s as shown in the example above.

Network And Node Addresses

In IPv4 an address is split into two components a network component and a node component.

This was done initially using Address classes and later using subnet masking.

In IPv6 we do the same. The first step is to split the address into two parts.

The address is split into 2 64 bit segments the top 64 bits are the network part and the lower 64 bits the node part:

The upper 64 bits are used for routing.

The lower 64 bits identify the address of the interface or node and are derived from the actual physical or MAC address using IEEE’s Extended Unique Identifier (EUI-64) format. See this Wiki description for exact details.

If we look at the upper 64 bits in more detail we can see that it is split into 2 blocks of 48 and 16 bits respectively the lower 16 bits are used for subnets on an internal network and are controlled by a network administrator.

The upper 48 bits are used for the global network addresses and are for routing over the internet.

Address Types and Scope

IPv6 addresses have three types:

  • Global Unicast Address –Scope Internet- routed on the Internet
  • Unique Local — Scope Internal Network or VPN internally routable, but Not routed on Internet
  • Link-Local – Scope network link- Not Routed internally or externally.

Global and Public Addresses

Global addresses are routable on the internet and start with 2001:

These addresses are known as global Unicast addresses and are the equivalent of the public addresses of IPv4 networks.

The Internet authorities allocate address blocks to ISPs who in turn allocate them to their customers. See Global Address assignments

Internal Addresses: Link-Local and Unique Local

In IPv4 internal addresses use the reserved number ranges 10.0.0.0/8, 172.16.0.0/12 and 192.168.0.0/16 and 169.254.0.0/16.

These addresses are not routed on the Internet and are reserved for internal networks.

IPv6 also has two Internal address types.

  • Link-Local
  • Unique Local
Link-Local

These are meant to be used inside an internal network, and again they are not routed on the Internet.

It is equivalent to the IPv4 address 169.254.0.0/16 which is allocated on an IPv4 network when no DHCP server is found.

Link-local addresses start with fe80

They are restricted to a link and are not routed on the Internal network or the Internet.

Link-Local addresses are self-assigned i.e. they do not require a DHCP server.

A link-local address is required on every IP6 interface even if no routing is present.

Unique Local

Unique Local is meant to be used inside an internal network.

They are routed on the Internal network but not routed on the Internet.

They are equivalent to the IPv4 addresses are 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16

The address space is divided into two /8 spaces: fc00::/8 for globally assigned addressing, and fd00::/8 for locally assigned addressing.

For manual assignment by an organization use the fd00 prefix.

Using IPv6 Addresses in URLs

On IPv4 networks, you can access a network resource e.g. a web page using the format

http://192.168.1.21/webpage

However IPv6 addresses contain a colon as a separator and so must be enclosed in square brackets.

http://[IPv6 address]/webpage.

IPv6 Loop Back

The IPv6 loopback address is ::1. You can ping it as follows:

ping ::1

Video

Here is a good video that covers the above

Related Articles and Resources:

Originally Posted onhttp://www.steves-internet-guide.com/ by Steve