デュアルスタック:なぜ 1 つのアドレスしか見えないのか
IPv4 と IPv6 は静かに共存しています。両方を確認する方法と、片方が欠ける意味を解説。
現代のネットワークはほぼすべて「デュアルスタック」で、IPv4 と IPv6 の両方のアドレスを持ちます。しかし 1 回の Web リクエストが使うのはどちらか一方だけなので、サイトが表示するアドレスは常に半分の情報です。
1. ブラウザはどう選ぶのか
ホスト名に A と AAAA の両方があると、ブラウザは Happy Eyeballs に従い、IPv6 と IPv4 の接続を並行して開始し、先に握手できた方を使います。健全なデュアルスタックでは通常 IPv6 が勝ちます。途中の機器が少ないためです。
2. 空欄になる理由
- サイトは実際に使われた接続のアドレスしか報告できず、もう一方はそこからは見えません。
- ISP は IPv6 をルーターへ配布していても、端末側で受け取れていない(プレフィックス委任の欠如、OS で無効、古いルーター)。
- VPN やプロキシのクライアントが IPv4 専用で、IPv6 を黙って落としている——これは実際の漏洩リスクです。
- モバイル事業者は IPv6 専用 + NAT64 を採用することが多く、IPv4 は使えてもネイティブな IPv4 アドレスは存在しません。
3. 両方を確認する方法
確実なのは「シングルスタック」のホスト名に問い合わせる方法です。AAAA のみを公開する名前は IPv6 でしか応答できないため、応答が返れば IPv6 が端から端まで機能している証拠になります。IPv4 も A のみの名前で同様です。
4. なぜ重要か
IPv6 が実は壊れていると、デュアルスタックのサイトは IPv6 の試行がタイムアウトするまで待ってから IPv4 に落ちるため、原因不明の遅さとして現れます。また VPN を契約していても IPv6 がトンネルを迂回していれば、本当のアドレスは見えたままです。
5. 一度は自分で確認する
ツールは不要です。AAAA だけを公開するホスト名を curl かブラウザで開きます。内容が返れば IPv6 は端から端まで機能しています。エラーも出ずタイムアウトするなら、IPv6 は静かに破棄されています。即座に拒否されるなら、その端末に IPv6 アドレスがありません。A のみの名前でも同じことをすれば、両系統の状態が分かります。設定画面より信頼できます。画面は「有効」と表示するのが精いっぱいで、「実際に通る」とは言わないからです。
ipbox.one は実際に使われた系統を報告し、もう一方を別途プローブするので、両方を確認できます——片方が壊れていることもはっきり分かります。