NAT64/DNS64
ipv6 only networkからipv4 networkへ接続するためのNAT
ただしこの技術に対応してないアプリケーションもある。
NAT64 DNS64とで組み合わせて使われる。
デュアルスタック構成はルーターの処理能力、メモリ的な側面、管理運用面で難しいケースで
ipv6運用をしつつipv4到達性を与えたいというケースで使われる。
仕組み
DNS64対応のDNSがipv6 netowrkのクライアントからドメイン問い合わせを受ける
DNS64対応のキャッシュがDNS権威サーバーからAレコードのみが得られた場合
得られたipv4アドレスをIPv4-IPv6変換アドレス用のプリフィクスを使ってIPv6アドレスを生成する
変換ルールはipv6 128bitのうち
先頭64bitを変更アドレス用のプレフィックス
64:ff9b::/96がwell-known prefix
末尾32bitをipv4 address
先頭64bit、末尾32bitの間32bitはすべて0bit埋め
得られたipv6アドレスをAAAAレコードとしてクライアントにかえす
クライアントはipv4のサイトにたいしてipv6として通信を行う。
この通信パケットはNAT64で受ける
あからじめNAT64は特定のprefix(IPv4-IPv6変換アドレス用のプリフィクス)が宛先になっているパケットは宛先変換+NAT
srcにはNAT poolのアドレス、destは変換されたipv6アドレスの中に埋め込まれたipv4アドレスに変更
ipv6->ipv4変換されたパケットをipv4 networkに送信。
モバイルはipv6対応が必須になっていたり
実際に現在のモバイルはipv6 addressをデフォルト配ってくる
happy eyeballによって基本的にはipv6優先で使ってくる。
モバイル網がNAT64, DNS64環境ならば、ipv4サイトもNAT64経由で外に出る
トラブル
OS、アプリ、サービスによってはNAT64変換での通信ができないケースがあったらしい
VPNの動作もダメなケース