AAAAフィルタ機能

DNS中継機能におけるAAAA(クアッドエー)フィルタ機能は、クライアントに対してAAAAレコードを応答として返さないようにする機能です。名前解決に起因してIPv6からIPv4へのフォールバックが阻害される問題へのワークアラウンドとなります。

機能概要

AAAAフィルタが有効なとき、DNS中継機能はDNSサーバから受け取ったクエリの内容から特定のレコードを除外してクライアントに中継します。

AAAAフィルタを用いる事で、AAAAレコードの問い合わせに対して不正な挙動をする名前サーバや、AAAAレコードを含む応答を受け取った際に不適切な挙動をするアプリケーション実装による影響を防ぐことができます。

フィルタ動作の詳細

下記の表は、SEILのAAAAフィルタが問い合わせ状況に応じてどのような応答を返すかを示します。

注: ここではそれぞれAレコードのみ、AAAAレコードのみ、そして双方に対応付けられた名前に対して、DNSSECの有無や問い合わせるレコードの種類を変えた場合について一覧します。表の枠内はそれぞれ応答に含まれるレコードです。なお、A は Aレコード、AAAAはAAAAレコード、 は空応答を表し、DNSSEC におけるNSECやRRSIG等のレコードは省略するものとします。表 2では、特に表 1との差異がある部分についてボールド書体で表記しています。
表 1. AAAAフィルタが無効の場合
  クエリの種類
DNSSECなし DNSSECあり
A クエリ AAAA クエリ ANY クエリ A クエリ AAAA クエリ ANY クエリ
存在しない名前
Aレコードのみの名前 A A A A
AAAAレコードのみの名前 AAAA AAAA AAAA AAAA
A, AAAAレコード両方 A AAAA A, AAAA A AAAA A, AAAA
表 2. AAAAフィルタが有効の場合
  クエリの種類
DNSSECなし DNSSECあり
A クエリ AAAA クエリ ANY クエリ A クエリ AAAA クエリ ANY クエリ
存在しない名前 NOTIMP
Aレコードのみの名前 A A A NOTIMP A
AAAAレコードのみの名前 NOTIMP NOTIMP
A, AAAAレコード両方 A A A NOTIMP A

DNSSECでの問い合わせ時には RFC2671RFC3225 の推奨に従い、NOTIMPを返す事でAAAAレコードがフィルタリングできない (不在証明が必要である) 場合についても AAAAレコードを応答しません。