ipv6.sx

A small IPv6 connectivity checker.

ipv6.sx checks the public IP address your connection presents to this server, then compares requests to an IPv4-only host and an IPv6-only host. The main site supports both protocols.

Three names, one test

https://ipv6.sx
Dual stack. Shows the protocol your browser chose for this connection.
https://v4.ipv6.sx
IPv4 only. A DNS A record, with no AAAA record.
https://v6.ipv6.sx
IPv6 only. A DNS AAAA record, with no A record.

These are the configured origins for this installation.

Addresses in text, JSON & XML

These endpoints return the address used for that request. Use the protocol-specific hostname, or your HTTP client's family option, when you need a particular address.

/text
IP address followed by a newline.
/json
JSON: ip, family, country, asn and organization. Also available at /api and /api/ip.
/xml
The same fields as XML.
/api/stats
Retained aggregate statistics, with daily, country and ASN breakdowns.
/api/config
Configured test origins, sample count and timeouts.
curl https://ipv6.sx/text
curl -4 https://ipv6.sx/json
curl -6 https://ipv6.sx/xml
curl https://v6.ipv6.sx/text

Country and network information is optional and depends on the server's local GeoIP databases. Empty country or organization fields and ASN 0 mean the information is unavailable. Network and country labels are estimates.

Timing, “ping” & variability

The browser performs one unmeasured warm-up per protocol, then six measured requests per protocol. It alternates the order between IPv4 and IPv6 each round, waits for each request to finish, and gives each request three seconds to respond.

HTTP latency is elapsed time from the start of a fetch until its response body has been read. It is not ICMP ping or a raw network round-trip time. A fresh connection, DNS lookup, TLS negotiation, browser scheduling and server load can affect the result.

Mean, minimum, maximum and population standard deviation use successful samples only. Jitter is the mean absolute difference between consecutive successful samples; failed samples are omitted. The comparison is IPv6 mean minus IPv4 mean. Negative values mean IPv6 was faster during this test.

“Default” records the IP family the server sees when the browser creates a test on the main hostname. The browser may reuse an existing connection or choose a different protocol for another site. This check does not diagnose every IPv6 issue: MTU, DNS resolver behavior and arbitrary destinations are outside its scope.

Statistics & privacy

Completed browser tests contribute counts and timing aggregates by UTC day, country and ASN. The statistics store retains aggregate observations, not IP addresses, individual samples or test tokens. It does not identify unique visitors. No cookies, third-party scripts or external fonts are needed.

The server must see your IP address to answer your request. Short-lived test tokens link a browser report to protocol requests observed by the server. Timing reports come from the browser and cannot be independently verified, so public statistics should be treated as indicative.

Retention is configured by the operator and displayed on the statistics page. Reverse proxies and hosting providers may have their own access logs; aggregate-only application storage does not disable those logs.

This product includes GeoLite data created by MaxMind.

Use a little button

Add an 88 × 31 webring button or a live IPv6 indicator to your site. The live indicator works without JavaScript.