If IPv4 is a phone book with room for four billion numbers, IPv6 is a phone book that could give every grain of sand on Earth not one number but billions. But IPv6 is more than "more addresses": its designers took the chance to untie a few of the internet's old knots as well.
What actually changed?
- End-to-end connectivity, without NAT. When addresses are plentiful, devices no longer need to hide behind a shared address. Every server and every service can have its own public address and be reachable directly, which was the internet's original idea.
- A simpler, fixed header. Every IPv6 packet header is exactly 40 bytes, and rarely used fields have moved into "extension headers". The IPv6 header has no checksum at all, and routers never fragment packets; fragmentation is the sender's job alone.
- Automatic configuration. With SLAAC, a device can build its own address from the router's advertisements, without necessarily needing a DHCP server.
- Goodbye, broadcast. IPv6 has no broadcast at all. Multicast and the Neighbor Discovery Protocol (NDP), which also replaces ARP, take its place.
- IPsec in the design from day one. The early standards required every IPv6 device to implement IPsec (though not necessarily to use it); RFC 6434 relaxed that to "recommended" in 2011. Most operating systems support it today, but just as with IPv4, it has to be configured separately.
And what didn't change?
TCP, UDP, HTTP, DNS, SSH and everything else you work with every day stay the same. Your website on IPv6 is the same website; it simply has an AAAA record in DNS next to its A record. That is why moving to IPv6 is not a matter of switching one off and the other on: servers run both side by side for years. This is called dual-stack, and it is exactly how Mehran Host servers work: IPv4 stays where it is, and IPv6 is added alongside it.