
Zero suppression
IPv6 addresses are quite large; therefore, when multiple contiguous blocks of zeros occur, these can be shortened or substituted with a double colon, (::), which simplifies the address notation. For example, a contiguous block of zeros in the 3DAF:200B:0004:3CF2:40FE:0000:50FE:FFAB address can be shortened to a single zero, such as 3DAF:200B:0004:3CF2:40FE:0:50FE:FFAB, or by a double colon: 3DAF:200B:0004:3CF2:40FE::50FE:FFAB.
You can suppress the leading zeros of the 16-bit block as well, for example, 3DAF:200B:4:3CF2:40FE::50FE:FFAB.
Furthermore, only 16-bit contiguous blocks can be substituted or suppressed, and not parts of the 16-bit block; for instance, the FF04:30:0:0:0:0:0:4 address cannot be compressed to FF04:3::4. The unicast FF02:0:0:0:0:0:0:3 IPv6 address, on the other hand, can be shortened to FF02::3.
Similar to IPv4 address types, IPv6 also has different address types:
- Unicast: This address type represents a single interface or a node. It is used in one-to-one communications where one interface sends packets to a single receiver.
- Multicast: This address type represents multiple interfaces. It is used in a one-to-many communication model, where one sender sends packets to multiple recipients or interfaces on a network.
- Anycast: This address type represents multiple interfaces. It is used in a one-to-many-to-one communication model, where a sender sends a packet to multiple interfaces but a single interface is the recipient of the message. The one recipient that receives the message is defined as the nearest, being the one that is closest in terms of routing distance.
There are also other types of IPv6 addresses, as follows:
- Global unicast: Similar to IPv4 public addresses, these addresses are globally routable and reachable.
- Link-local: Hosts use link-local addresses to communicate with other hosts on the same network. The first 10 bits of a link-local address are always 1111 1110 10, and the next 54 bits of a network address are always 0. The remaining 65 bits are interface ID bits that identify the host within a LAN. This creates the address prefix of fe80::/64.
- Site-local: These addresses are the same as the IPv4 private addresses. They can be used with private networks that do not have a direct IPv6 connection, and they can be used in addition to global addresses.
- Unique local: The unique local addresses are not routable on the internet, but they are routable between private network subnets.
- Special IPv6 address: These networks are reserved for special uses and purposes.
- Transition addresses: These addresses support the transition from IPv4 to IPv6:
- IPv4-compatible address: This address type uses the 0:0:0:0:0:0:w.x.y.z or ::w.x.y.z format, where w.x.y.z is the dotted decimal IPv4 address notation. This type of address uses nodes that communicate with both IPv4 and IPv6 protocols.
- IPv4-mapped address: This type of address uses IPv4-only nodes that can communicate with IPv6 nodes.
- 6to4 address: This type of address is used in communications between two nodes over the internet; the nodes use both IPv4 and IPv6.
For a better understanding of the relationship between IPv4 and IPv6, the following table compares the networking concepts and terminology of both standards:
