Every server has at least one IP address, and the kind of address is starting to matter. IPv4 has run out; IPv6 is its replacement; and roughly 45% of internet traffic now arrives over IPv6. Here is what that means for a website and what you need to do about it — which is less than you might think.
The short version
IPv4 addresses look like 203.0.113.10. There are about 4 billion, they are all allocated, and hosting providers now buy or lease them at £30–50 each, which is why some hosts charge for extra IPs. IPv6 addresses look like 2001:db8:1234::10. There are 340 undecillion of them, your host gives you a block for free, and any device made in the last decade speaks it.
Nothing has broken because IPv4 is exhausted — it is shared, NATed and traded — but the pressure shows up as cost and as mobile networks going IPv6-first.
Does your site need IPv6?
Strictly, no: every IPv6-only client can still reach an IPv4-only site through carrier translation. But there are three real reasons to add it:
- Speed on mobile. Many mobile carriers run IPv6 natively and translate to IPv4 through shared gateways that add latency. A site with an AAAA record skips the translation.
- Google and others index over IPv6 and it is a small signal of a modern, well-run site.
- Future cost. Sites with only IPv4 will eventually be the ones paying for the address.
Adding it is a single DNS record, so the answer for most sites is: yes, when the server supports it.
How to add it
Your host gives you the IPv6 address (in Plesk it shows under the domain's Hosting Settings → IP address). Add an AAAA record alongside the A record:
example.com. A 203.0.113.10
example.com. AAAA 2001:db8:1234::10
www.example.com. A 203.0.113.10
www.example.com. AAAA 2001:db8:1234::10Then test from a machine with IPv6, or use an online checker:
dig example.com AAAA +short
curl -6 -I https://example.comThe two things that break
A stale AAAA record. You move the site to a new server, update the A record, and forget the AAAA. IPv4 visitors see the new site; IPv6 visitors — half of mobile — see the old one, or a timeout once the old server is gone. Every migration checklist should include "AAAA" next to "A". Ours does: the migration checklist.
A web server not listening on IPv6. The DNS says the site is there; the server refuses the connection. Browsers fall back to IPv4 after a delay ("Happy Eyeballs" makes this fast, but not instant). In Nginx, every listen 80; needs a listen [::]:80; beside it; Apache listens on both by default. Firewalls too: ufw handles both if IPV6=yes in /etc/default/ufw.
Check the server is actually answering on both:
sudo ss -tulpn | grep -E ':80|:443'
# should show 0.0.0.0:80 and [::]:80Email is the exception
Mail over IPv6 is stricter, not looser: Gmail requires valid reverse DNS and authentication on the IPv6 address or it rejects outright. Unless you have set up a PTR for the IPv6 address and confirmed delivery, leave your mail server sending over IPv4 only. Reverse DNS for mail covers the PTR.
Dedicated IPv4 addresses
Old advice said every site needed its own IPv4 address for SSL. That ended with SNI over a decade ago; one address serves unlimited HTTPS sites. The remaining reasons for a dedicated IPv4 are a mail server (reputation is per-IP) and certain legacy integrations that allow-list by address. If a host charges for a "dedicated IP" as an SEO feature, that is not a thing.
What we do
Every VPSPioneer managed VPS comes with a dedicated IPv4 and an IPv6 block, with the web server and firewall configured for both; shared plans serve every site over both protocols. If a migration to us is missing an AAAA on the old side, we spot it during the free migration DNS review.