IPv4 vs IPv6: what changed and why it matters
Every device on the internet needs an address. For decades that address was an IPv4 address, a 32 bit number written as four parts like 192.0.2.10. The problem is simple arithmetic: 32 bits is about 4.3 billion addresses, and the internet now has far more connected devices than that.
How we stretched IPv4
The shortage did not stop the internet because of a few clever workarounds. The biggest is NAT, network address translation. Your home or office shares one public IPv4 address across every device behind the router, each of which has a private address like 192.168.1.x. The router rewrites addresses on the way out and back, so dozens of devices appear to the world as one.
NAT works, but it complicates anything that needs a device to be directly reachable: peer to peer connections, hosting a server from home, some video and gaming protocols.
What IPv6 changes
IPv6 uses 128 bit addresses, written as eight groups of hexadecimal like 2001:0db8:85a3::8a2e:0370:7334. That is not four times bigger than IPv4, it is 2^96 times bigger, enough to give every grain of sand on earth its own address many times over. Practically, that means every device can have its own globally unique address and NAT becomes unnecessary.
You will notice a few conventions: runs of zeros collapse to :: (only once per address), and leading zeros in a group can be dropped. So 2001:0db8:0000:0000:0000:0000:0000:0001 becomes 2001:db8::1.
What you need to know in practice
Most networks today run dual stack: IPv4 and IPv6 at the same time. A domain can have both an A record (IPv4) and an AAAA record (IPv6), and clients prefer IPv6 when available.
The practical gotchas: firewall rules written only for IPv4 silently leave IPv6 open or blocked, and a missing AAAA record can make a site reachable on one protocol but not the other. When debugging "works for me but not for them," checking which protocol each side is using is often the answer.
You can see your current public address on both protocols with the IP Lookup tool.