IPv6
Internet Protocol version 6
The successor to IPv4 — provides vastly more IP addresses and eliminates the need for NAT.
IPv6 is the successor to IPv4, using 128-bit addresses (vs IPv4's 32-bit) to provide approximately 340 undecillion unique addresses — enough to assign a unique IP to every atom on Earth's surface many times over. IPv6 eliminates the need for NAT, simplifies routing, and includes built-in security headers.
Why IPv4 addresses ran out
IPv4 uses 32-bit addresses, yielding a theoretical maximum of about 4.3 billion unique addresses. When IPv4 was designed in the early 1980s, that number seemed impossibly large. By the mid-2000s, the explosive growth of the internet, smartphones, and connected devices made exhaustion inevitable. IANA (the Internet Assigned Numbers Authority) allocated the last blocks of IPv4 addresses to regional registries in February 2011. The regional registries (ARIN for North America, RIPE for Europe, APNIC for Asia-Pacific) exhausted their free pools between 2011 and 2015. Since then, new IPv4 addresses can only be obtained by purchasing them on a secondary market — prices have risen to $40–60 per address. This scarcity drove the widespread adoption of NAT and CGNAT as stopgaps, and is the primary reason ISPs have been pushing IPv6 deployment.
IPv6 address format
An IPv6 address is 128 bits long, written as eight groups of four hexadecimal digits separated by colons: 2001:0db8:85a3:0000:0000:8a2e:0370:7334. Two shorthand rules simplify notation. First, leading zeros within a group can be omitted: 0db8 becomes db8. Second, one consecutive sequence of all-zero groups can be replaced with :: — but only once per address. So 2001:0db8:0000:0000:0000:0000:0000:0001 becomes 2001:db8::1. This notation makes addresses more readable without changing their value.
IPv6 address types
- Global unicast (2000::/3) — publicly routable addresses assigned to devices on the internet; equivalent to IPv4 public addresses; begin with
2or3 - Link-local (fe80::/10) — automatically assigned to every IPv6-capable interface; used for communication within a single network segment only; never routed beyond the local link; begin with
fe80 - Unique local (fc00::/7) — private-use addresses for internal networks; similar in purpose to IPv4's 192.168.x.x and 10.x.x.x; not routable on the public internet
- Multicast (ff00::/8) — sent to a group of interfaces simultaneously; replaces IPv4 broadcast; begin with
ff - Loopback (::1) — equivalent to IPv4's 127.0.0.1; refers to the local device itself
SLAAC vs DHCPv6 address assignment
SLAAC (Stateless Address Autoconfiguration) allows a device to configure its own IPv6 address without a DHCP server. The router advertises a network prefix (e.g., 2001:db8::/64) via Router Advertisement messages, and the device appends a 64-bit interface identifier — typically derived from its MAC address using the EUI-64 process, or a randomly generated value for privacy. SLAAC requires no server-side configuration and is the dominant method for assigning global unicast addresses to home devices.
DHCPv6 works similarly to DHCP for IPv4 — a server leases addresses to clients and can push DNS server settings and other options. DHCPv6 is more common in enterprise environments where administrators need to track which device holds which address. Home networks typically use SLAAC for address assignment and Router Advertisements for DNS information (via RDNSS options).
Dual-stack operation
Most modern internet infrastructure runs dual-stack — every device has both an IPv4 and an IPv6 address simultaneously, and the operating system chooses which to use for each connection. When connecting to a server that supports both protocols, modern OSes use the "Happy Eyeballs" algorithm (RFC 8305): they initiate both IPv4 and IPv6 connections nearly simultaneously and use whichever completes first. This means IPv6 is preferred when available without the user noticing any change. Content delivered over IPv6 uses the IPv6 path end-to-end; content from IPv4-only servers still uses IPv4 — the two stacks operate independently and in parallel.
How to check if your connection has IPv6
Visit ipv6test.google.com or test-ipv6.com in your browser. On Windows, run ipconfig in a command prompt and look for an address starting with 2 or 3 under your network adapter (not fe80, which is link-local only). On macOS or Linux, run ifconfig or ip addr and look for inet6 entries with global scope. If your router's WAN interface shows an IPv6 address from your ISP, your connection is IPv6-enabled.
Why IPv6 is sometimes disabled by ISPs
Despite IPv6 being a mature standard, some ISPs have been slow to deploy it. Common reasons include the cost of upgrading legacy network equipment that cannot handle IPv6 routing tables, the complexity of training operations staff on a new protocol stack, business decisions to delay until customer demand justifies the investment, and in some cases CGNAT infrastructure that is already deployed and "working" for IPv4. Mobile carriers have generally led IPv6 adoption — in the US, major mobile networks carry over 80% of traffic over IPv6. Fixed broadband adoption varies significantly by ISP.
Why IPv6 matters for internet growth
IPv6 enables every device — including IoT sensors, smart home equipment, and industrial devices — to have a globally routable address without NAT complexity. This simplifies direct device-to-device communication, makes end-to-end encryption easier to implement, and removes the bottleneck of IPv4 address scarcity that has required CGNAT for years. As more of the internet becomes IPv6-native, the overhead of IPv4-to-IPv6 translation layers decreases and network architecture becomes simpler and more reliable.
Frequently Asked Questions
Does IPv6 make internet faster?
It can. IPv6 traffic to dual-stack (IPv4+IPv6) servers bypasses CGNAT and may have 5–20 ms lower latency. The improvement is most noticeable on ISPs that use carrier-grade NAT for IPv4, which adds overhead.
Should I enable IPv6 on my router?
Yes, if your ISP supports it. Enable IPv6 in your router's WAN settings — most modern routers support it. There is no meaningful security downside, and your devices will use IPv6 where available while falling back to IPv4 otherwise.