IPv6 Unpacked: Key Differences, Myths, and Practical Insights
This article explains the technical distinctions between IPv6 and IPv4, clarifies common misconceptions, describes IPv6's addressing scheme, auto‑configuration, lack of NAT, security implications, and practical challenges, while also presenting viewpoints from developers on its real‑world impact.
IPv6 vs. IPv4
I have often been confused by the name IPv6, assuming it should be called IP16 because IPv4 refers to its 32‑bit four‑byte format, but the number actually denotes the protocol version.
Before IPv4, there were IPv1, IPv2, and IPv3 used for internal research, and an IPv5 proposal for real‑time communication that was abandoned once IPv6 solved address‑space issues. Later attempts at IPv7, IPv8, etc., were either discarded or shelved.
Like IPv4, IPv6 has its own addressing scheme, but uses 128‑bit addresses. Beyond the larger address space, IPv6 introduces unique features such as the absence of subnet masks and the lack of NAT.
IPv6 has no subnet mask
IPv6 also supports CIDR, but from a user perspective the address is simpler: the first half is the global internet prefix, the second half is the local identifier. For example, a website that shows your IP will display an address like:
<code>1111:2222:3333:4444:5555:6666:7777:8888</code>Your ISP only knows the prefix
1111:2222:3333:4444and assigns you a /64 block. The remaining part uniquely identifies each device (INTERFACE_ID).
IPv6 does not use NAT
There is no public standard for NAT66, and theoretically each device can have a globally reachable address, eliminating the need for NAT. While NAT gave a sense of security, it is not a true barrier; IPv6 routers by default should not forward unsolicited external traffic to local devices.
However, unique global addresses raise privacy concerns, so modern OSes use temporary IPv6 addresses that change the INTERFACE_ID periodically.
Next, we explore more IPv6 features:
IPv6 supports automatic configuration
IPv6 can configure addresses without DHCP using SLAAC (Stateless Address Autoconfiguration). The process includes:
The OS generates a 64‑bit device identifier (e.g.,
5555:6666:7777:8888) forming the INTERFACE_ID.
The OS prefixes it with
fe80for a link‑local address, yielding
fe80::5555:6666:7777:8888.
The device performs Duplicate Address Detection (DAD) by sending a multicast packet.
The device sends a Router Solicitation (RS) to request the network prefix; the router replies with a Router Advertisement (RA) containing the actual prefix, which replaces the
fe80part, forming the final IPv6 address.
This stateless approach reduces router management overhead, especially in large networks.
IPv6 Myths
One address works everywhere – Devices actually have multiple IPv6 addresses (link‑local, global, temporary, etc.).
Enough addresses for every atom in the universe – IPv6 provides 128‑bit space, but only 112 bits are usable for devices after the IANA‑reserved 16 bits.
Universal connectivity without configuration – Even without NAT, firewalls still block unsolicited inbound traffic; applications must cooperate with protocols like PCP to open ports.
Additional drawbacks compared to IPv4 include:
Dependence on ISP for subnet prefixes – Many US ISPs only provide a /64 prefix, limiting subnetting options.
IPv6 addresses need extra encoding in URIs – The colon must be escaped, and the address is placed in brackets, e.g.:
<code>http://[aaaa:bbbb:cccc:dddd:eeee:ffff:1111:2222]/path/?query</code>IPv6 addresses are also harder to remember, though the lower 64 bits are random and can be ignored in practice. IPv6 address notation can be compressed by removing leading zeros and using double colons for consecutive zero groups, but only one such compression is allowed per address. Valid IPv6 examples include:
<code>:: represents all zeros (0:0:0:0:0:0:0:0)</code> <code>2600:: equals 2600:0:0:0:0:0:0:0</code> <code>::ffff:1.1.1.1 maps to IPv4 address 1.1.1.1</code>Developers’ perspectives: One developer notes that IPv6 restores the internet protocol stack to a transparent state, enabling true plug‑and‑play devices. Another points out that IPv6 does have subnet prefixes (called prefix lengths) and that NAT can still be implemented if needed. Others remind that DHCPv6 and static configuration also exist, and that IPv6 does provide tangible benefits such as easier firewall traversal, direct public addresses for home devices, and lower latency on mobile networks.
Efficient Ops
This public account is maintained by Xiaotianguo and friends, regularly publishing widely-read original technical articles. We focus on operations transformation and accompany you throughout your operations career, growing together happily.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.