メインコンテンツへジャンプする

JPNICはインターネットの円滑な運営を支えるための組織です

ロゴ:JPNIC

WHOIS 検索 サイト内検索 WHOISとは? JPNIC WHOIS Gateway
WHOIS検索 サイト内検索

Testing Recursive Name Servers for IPv6 and EDNS0 Support
翻訳文

社団法人日本ネットワークインフォメーションセンター
最終更新2007年4月11日

この文書は2007年2月15日に公開された
http://www.icann.org/committees/security/sac017.htm
を翻訳したものです。
JPNICはこの翻訳を参考のために提供しますが、 その品質に責任を負いません。


IPv6およびDNS用拡張メカニズム(EDNSO)
サポートのための再帰ネームサーバの試験

SAC 017
2007年2月1日
2007年3月15日更新

準備 | AAAAおよびEDNSOサポートの試験 | 結果の共有 | 報告のあった結果 | 試験期間

背景

 DNSルートサーバシステム諮問委員会 (RSSAC) およびICANNのセキュリティと安定性に関する諮問委員会 (SSAC)は、 『ルートヒントファイル』およびDNSルートゾーンにルートネームサーバのIPv6のためのAAAAタイプのリソースレコードを追加する問題について、 共同で検討を行っています。 (公式のルートヒントファイルは、 ftp://ftp.internic.net/domain/ にあります。)

 殆んどの再帰ネームサーバは、 現行のルートネームサーバの一覧を決定するための primingと呼ばれるブートストラッププロセスを実行しますが、 これはルートヒントファイルのローカルコピーが古いかも知れないためです。 最初に、再帰ネームサーバは、 ローカルなルートヒントファイル内で一覧化されたルートネームサーバのうちのいずれかのルート(".") にNSタイプのDNSクエリを送ります。 再帰ネームサーバは、 稼動しているルートネームサーバから返って来たレスポンス内のルートネームサーバ一覧を名前解決の目的で使用します。 primingは、 再帰ネームサーバが常にルートネームサーバ内の最新の一覧によってオペレーションを開始することを保証するものです。

 五つのルートネームサーバ - B、F、H、K、およびM - の運用者が自身のシステムにIPv6アドレスを割り当てています。 これらのアドレスは、現時点ではルートヒントファイルに含まれておらず、 ルートゾーン内にも存在しません。 従って、 再帰ネームサーバによって送られるDNSの最初のクエリへのレスポンスに AAAAリソースレコードは含まれていません。

 ルートヒントファイルおよびルートゾーンにAAAAレコードを追加することは、 最初のレスポンスのサイズを膨らませることになります。 最終的には、13のネームサーバ全てがIPv6アドレスを割り当てた場合、 最初のレスポンスはそのサイズが811バイトに膨らみます。

  • 再帰ネームサーバおよびルートネームサーバの間に置かれたリゾルバおよびいかなる途中のシステムも、AAAAリソースレコードを含むDNSメッセージを処理できなければなりません。
  • リゾルバは、RFC1035で定められている、UDPカプセル化されたDNSメッセージサイズの最大値である512バイトよりも大きいDNSレスポンスを自身が処理することができることをルートネームサーバに通知するため、DNS拡張(EDNS0、RFC 2671)を使用しなければなりません。
  • 途中のシステムは、最初のリクエストを出したリゾルバに対して、RFC1035で定められている最大のDNSメッセージサイズである512バイトよりも大きいUDPカプセル化されたDNSレスポンスを転送するよう、設定されなければなりません。

 SAC016は、 リゾルバを防御するために組織が使っている商用ファイアウォールが、 これらの条件を満たさないことを理由として最初のレスポンスを遮断 (静かに破棄)するか否かについて、 インターネットコミュニティからフィードバックを募集しています。 これを実行したベンダーおよびユーザーによる報告は、 こちらで見ることができます。

 共同委員会は現在、再帰ネームサービスを提供するために組織が使用する DNSサーバ(ソフトウェアおよびハードウェアアプライアンス)が、 AAAAタイプのリソースレコードがルートヒントファイル およびルートゾーンに追加された場合に正しく作動するか否かについて、 インターネットコミュニティからフィードバックを募集しています。

再帰ネームサーバ実装とバージョンの準備と試験

 完全なネームサーバのブートストラッププロセスについて試験がなされ、 DNSサービスのルートレベルでの変更が逆に実際の環境でのネームサービスに影響しないことを確認しなければなりません。 試験では、以下の実装がされたことを検証しなければなりません。

  • AAAAタイプのリソースレコードを含むヒントファイルで設定されたルートネームサーバの情報を、最初のレスポンスメッセージを返す際に失敗することなく使用していること。
  • UDP上で最初のやり取りが実行されていること、ここには、ヒントファイルのローカルコピーにおいて特定されたルートネームサーバのうちの一つあるいは複数のルート (".") のNSタイプにDNSクエリを送ることも含まれています。
  • ルートネームサーバからのUDPカプセル化されたDNSレスポンスメッセージを処理していること。
  • インタラクティブな名前解決を実行するために、DNSレスポンスメッセージ内の情報を使用していること。

 試験でのレスポンスは、 権威ルートネームサーバのAおよびAAAAタイプのリソースレコードを含み、 RFC1035で定められている最大のUDP DNSメッセージサイズである512バイトよりも大きければ理想的です。 いくつかのルートネームサーバ運用者は、この実行のために、 試験用のネームサーバの運用を志願しました。 AおよびAAAAタイプのリソースレコードを含む権威ルートネームサーバの 『試験用』のルートおよびroot-servers.netゾーンにとって、 これらのサーバは権威として設定されています。

再帰ネームサーバの試験を行う

 貴方の再帰ネームサーバが正しく機能するか否かを試験するためには、 以下を実行してください。

  1. 貴方のファイアウォールが、SAC016で記述された試験を実行することによって、AAAAおよびEDNSOをサポートしているか否かを特定してください。
  2. 再帰ネームサービスを提供するホストにおいて、試験用のヒントファイルのコピーである、aaaa-test-root-hints [.DAT, 1K]をダウンロードおよびインストールしてください。aaaa-test-root-hintsのコンテンツは以下の通りです。
    
    ;
    ; IMPORTANT NOTE: This root hints file is for TESTING ONLY.  Use this
    ; file to test your recursive name server's support of AAAA records
    ; for the root name servers.  Details of this experiment are available
    ; at http://www.icann.org/committees/security/sac017.htm
    ;
    
    .                        3600000  IN  NS    aaaa.verisignlabs.com.
    aaaa.verisignlabs.com.   3600000      A     65.201.175.33
    aaaa.verisignlabs.com.   3600000      AAAA  2001:503:39c1::2:26
    
    .                        3600000  IN  NS    aaaa.dns.br.
    aaaa.dns.br.             3600000      A     200.160.7.135
    aaaa.dns.br.             3600000      AAAA  2001:12ff:0:7::135
    
    .                        3600000  IN  NS    roto.nlnetlabs.nl.
    roto.nlnetlabs.nl.       3600000      A     213.154.224.153
    roto.nlnetlabs.nl.       3600000      AAAA  2001:7b8:206:1::153
    
    .                        3600000  IN  NS    rs-net.isc.org.
    rs-net.isc.org.          3600000      A     204.152.186.62
    rs-net.isc.org.          3600000      AAAA  2001:4f8:3:ba::62
                      
  3. 設定において新たなファイルを特定する、あるいは現在のルートヒントファイル上の試験用ファイルをコピーし、貴方の再帰ネームサーバが試験用ルートヒントファイルを使用するように設定してください。(公式ファイルはftp://ftp.internic.net/domain/より簡単に入手できますが、私達は勿論、現在のルートヒントファイルのバックアップを取っておかれることをお勧めします。)各再帰ネームサーバの設定はさまざまであり、もしオルターネートルートヒントファイルをどうやって特定するか確かでない場合は、サーバのドキュメンテーション、お近くの専門家、あるいはインターネット上の参考資料にあたる必要があるかも知れません。
  4. ネームサーバプロセスあるいはサービスを停止あるいは再スタートさせてください。これによって、貴方のネームサーバは『prime』するはずです。(場合によっては、貴方のオペレーティングシステムあるいはDNSアプライアンスはシステムレベルの再スタートを求めるかも知れません。)
  5. 貴方の再帰リゾルバが最初のクエリをまだ送っていない場合には、送られるかどうかの確認のために、一般的なdigプログラムを使用して以下のDNS検索を実行してください。
    
    dig @IP-of-your-recursive-server icann.org
                    
  6. 貴方の再帰ネームサーバ現在持っているAあるいはAAAAタイプのリソースレコード群を入手するために、一般的なdigプログラムを使用して以下のDNS検索を実行してください。
    
    dig +norec +bufsize=1024 @IP-of-your-recursive-server . NS
                    
    digアウトプットのファイルを作るためには、以下を使用してください。
    
    dig +norec +bufsize=1024 @IP-of-your-recursive-server  . NS >testAAAA.txt
                    
    もし、再帰サーバそれ自体でdigを起動することができる場合には、上記digコマンド内の127.0.0.1のIPアドレスを使用することによって、サーバのループバック(ローカルホスト)アドレスに問い合わせることができます。
  7. 貴方のdigクエリの結果を以下の情報と比較してください。(このクエリは再帰ネームサーバのローカルホストのIPv4アドレス、127.0.0.1で実行されているものであり、TTLと貴方のリクエストに対して返されるリソースレコードの順番とは異なるものかも知れないことにご留意願います)。
    
    $ dig +norec +bufsize=1024 @127.0.0.1 . ns
    
    ; <<>> DiG 9.3.2 <<>> +norec +bufsize=1024 @IP-of-your-recursive-server
    . NS
    ; (1 server found)
    ;; global options:  printcmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48730
    ;; flags: qr ra; QUERY: 1, ANSWER: 13, AUTHORITY: 13, ADDITIONAL: 19
    
    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags:; udp: 4096
    ;; QUESTION SECTION:
    ;.                              IN      ANY
    
    ;; ANSWER SECTION:
    .                       514104  IN      NS      A.ROOT-SERVERS.NET.
    .                       514104  IN      NS      B.ROOT-SERVERS.NET.
    .                       514104  IN      NS      C.ROOT-SERVERS.NET.
    .                       514104  IN      NS      D.ROOT-SERVERS.NET.
    .                       514104  IN      NS      E.ROOT-SERVERS.NET.
    .                       514104  IN      NS      F.ROOT-SERVERS.NET.
    .                       514104  IN      NS      G.ROOT-SERVERS.NET.
    .                       514104  IN      NS      H.ROOT-SERVERS.NET.
    .                       514104  IN      NS      I.ROOT-SERVERS.NET.
    .                       514104  IN      NS      J.ROOT-SERVERS.NET.
    .                       514104  IN      NS      K.ROOT-SERVERS.NET.
    .                       514104  IN      NS      L.ROOT-SERVERS.NET.
    .                       514104  IN      NS      M.ROOT-SERVERS.NET.
    
    ;; AUTHORITY SECTION:
    .                       514104  IN      NS      M.ROOT-SERVERS.NET.
    .                       514104  IN      NS      A.ROOT-SERVERS.NET.
    .                       514104  IN      NS      B.ROOT-SERVERS.NET.
    .                       514104  IN      NS      C.ROOT-SERVERS.NET.
    .                       514104  IN      NS      D.ROOT-SERVERS.NET.
    .                       514104  IN      NS      E.ROOT-SERVERS.NET.
    .                       514104  IN      NS      F.ROOT-SERVERS.NET.
    .                       514104  IN      NS      G.ROOT-SERVERS.NET.
    .                       514104  IN      NS      H.ROOT-SERVERS.NET.
    .                       514104  IN      NS      I.ROOT-SERVERS.NET.
    .                       514104  IN      NS      J.ROOT-SERVERS.NET.
    .                       514104  IN      NS      K.ROOT-SERVERS.NET.
    .                       514104  IN      NS      L.ROOT-SERVERS.NET.
    
    ;; ADDITIONAL SECTION:
    A.ROOT-SERVERS.NET.     600504  IN      A       198.41.0.4
    B.ROOT-SERVERS.NET.     600504  IN      A       192.228.79.201
    B.ROOT-SERVERS.NET.     600504  IN      AAAA    2001:478:65::53
    C.ROOT-SERVERS.NET.     600504  IN      A       192.33.4.12
    D.ROOT-SERVERS.NET.     600504  IN      A       128.8.10.90
    E.ROOT-SERVERS.NET.     600504  IN      A       192.203.230.10
    F.ROOT-SERVERS.NET.     600504  IN      A       192.5.5.241
    F.ROOT-SERVERS.NET.     600504  IN      AAAA    2001:500::1035
    G.ROOT-SERVERS.NET.     600504  IN      A       192.112.36.4
    H.ROOT-SERVERS.NET.     600504  IN      A       128.63.2.53
    H.ROOT-SERVERS.NET.     600504  IN      AAAA    2001:500:1::803f:235
    I.ROOT-SERVERS.NET.     600504  IN      A       192.36.148.17
    J.ROOT-SERVERS.NET.     600504  IN      A       192.58.128.30
    K.ROOT-SERVERS.NET.     600504  IN      A       193.0.14.129
    K.ROOT-SERVERS.NET.     600504  IN      AAAA    2001:7fd::1
    L.ROOT-SERVERS.NET.     600504  IN      A       198.32.64.12
    M.ROOT-SERVERS.NET.     600504  IN      A       202.12.27.33
    M.ROOT-SERVERS.NET.     600504  IN      AAAA    2001:dc3::35
    
    ;; Query time: 2 msec
    ;; SERVER: 127.0.0.1#53(127.0.0.1)
    ;; WHEN: Tue Jan 30 08:50:55 2007
    ;; MSG SIZE  rcvd: 756
                      
    貴方の再帰サーバが試験用のルートヒントファイルを問題なく使用し、試験用ネームサーバからの最初のレスポンスを処理した場合、digの出力結果の中に上記の例にあるようないくつかのルートネームサーバのAAAAリソースレコードがあることが分かるかも知れません。しかしながら、こうしたレコードが抜けているからといって、必ずしも何かが間違っているということを意味するものとは限らないことにご留意ください、つまり、貴方のサーバは適切なレスポンスを受け取ったのかも知れませんが、自身がクエリされた際にレコードを返していないのかも知れません。(これは、DNSサーバあるいはシステムイベントログを検討することで確認できるかも知れません。)
  8. 貴方のネームサーバを使用してください。それはクエリを解決し、正常に運用していますか?

    もし、貴方の再帰ネームサーバが試験用ルートヒントファイルを使用するよう設定された場合に、正常にスタートし、動作し続け、クエリを解決するのであれば、試験に合格しています。

    私達は、AAAAリソースレコードを含んでいる試験用のルートヒントファイルを読み込んだときにスタートを拒否する、あるいはテスト用のルートネームサーバからの最初のレスポンスにおいてAAAAリソースレコードを受け取った後に正常に動作しない、クエリを適切に解決しないといった、試験がうまくいかなかったサーバに、最も関心があります。この試験の対象は、IPv6トランスポートを有するリゾルバのみを対象とするものではありません。私達は、IPv4トランスポートのみを有するリゾルバの結果についても同様に関心を持っています。
  9. 試験が終ったら、テストファイル

    (aaaa-test-root-hints)を取り除き、

    公式のヒントファイルに戻してください。

結果をインターネットコミュニティと共有してください

 以下の情報を含むemailをICANNのSSACの研究員に送ることによって、 試験結果をコミュニティと共有されるよう、 SSACおよびRSSAC委員会は奨励いたします。

  • DNSネームサーバ(ハードウェアあるいはソフトウェア)製品
  • ハードウェアモデル(もし適用可能であれば)
  • 運用システムおよびDNSサーバのバージョン(BINDバージョンには、"dig @nameserver version.bind txt chaos")
  • AAAAタイプのリソースレコードを含んでいるヒントファイルを設定した場合、貴方のネームサーバの実装は立ち上げに成功したでしょうか失敗したでしょうか? つまり、貴方のネームサーバは、テストルートヒントファイルを置いて再スタートした後にエラーを出した、および/あるいは停止したでしょうか?
  • 貴方のネームサーバがIPv4転送上で立ち上げにおいて不具合があった場合
    • 不具合、あるいはエラーコードの記述を提供できますか?
    • 設定を変更することで不具合状況を解決できたでしょうか?もし、はい、である場合、不具合状況を解決したネームサーバに加えられた全ての設定変更を記述してください。
  • 貴方のネームサーバがIPv4転送上で成功裡に立ち上がった場合、
    • それはEDNSOをサポートしていますか?
    • AAAAリソースレコードを解析できていますか?
    • 貴方のネームサーバは、ルートネームサーバのAAAAタイプのレコードのローカルコピーを保持していますか? digコマンドの入力および結果のコピーを提供してください(上に説明した通り、これは結果をファイルにリダイレクトすることによって得ることができます、つまり、 "dig +norec @IP-of-your-recursive-server . NS > testAAAA.txt"); 代わりに、成功したか否かを示してください。もし不具合がある場合には、報告されたドメインシステムレスポンスコードを提供してください。
  • ネームサーバは、試験用のルートネームサーバとの最初の交換の後、正しく機能し続けますか? (試験目的で使用されたルートおよびroot-servers.netゾーンには、権威、運用ルートネームサーバのIPv4およびIPv6アドレスが含まれます。)

実行された試験

 以下の結果がSSACの研究員に報告されています。

DNS Software Operating System Bootstraps when AAAA RRs present in hints file Primes using IPv4 transport Supports EDNS0 Parses AAAA RRs Functions properly following a priming exchange with a test root name server Source
BIND 8.2.2-P5 SunOS Blakey 5.8 YES YES NO NO YES User
BIND 9.2.4 Debian GNU/Linux YES YES YES YES YES User
BIND 9.3.2 Mac OS X version 10.4.8 YES YES YES YES YES User
BIND 9.3.4 FreeBSD 6.2 YES YES YES YES YES User
BIND 9.4.0 rc2 FreeBSD 6.2,
Suse Linux 10.1
YES YES YES YES YES User
djbdns (dnscache 1.05) Fedora 6 Core YES YES YES NO YES User
DNS Commander [4] Windows NT/XP, Linux, Solaris YES N/A YES YES N/A Vendor
DNSJava Java (any OS with Java support) N/A N/A YES YES N/A Developer
ISC BIND 4.9.3-REL Redhat Fedora Core 6 Linux YES [5] YES NO NO YES User
ISC BIND 4.9.11-REL Redhat Fedora Core 6 Linux YES   NO YES YES User
JDNSS [1] Java (any OS with Java support) N/A N/A NO   N/A Developer
MaraDNS 1.2.12.04 [2] BSD, Linux, Windows NO NO NO YES N/A Developer
Men & Mice Suite 5.x with current BIND 8 or BIND 9 Windows 2000/Windows 2003/Linux/FreeBSD/ MacOSX/Solaris YES YES YES YES YES Vendor
Mice & Men QuickDNS v1.0 - 3.0 Apple MacOS Classic (System 7 to MacOS 9) NO YES NO NO NO Vendor
Microsoft DNS Server Windows 2000 5.00.2195 SP4 YES YES NO NO YES User
Microsoft DNS Server Windows 2003 YES YES YES YES YES User
Nominum CNS 1.6.5.0 Solaris 10 YES YES YES YES YES Vendor
Posadis DNS version 6 Windows XP SP2 YES NO NO YES YES User
PowerDNS Recursor 3.1.4 Debian GNU/Linux YES YES YES YES YES User
QuickDNS 3.5 to 4.6 with current BIND 8 or BIND 9 Windows 2000/Windows 2003/Linux/FreeBSD/ MacOSX/ Solaris YES YES YES YES YES Vendor
SimpleDNS version 4.00.06 [3] Windows XP SP2 YES YES NO YES YES User, Vendor

[1] リーフあるいはスタブリゾルバとして使うこと再帰検索を行わず、かつ、開始しない。
[2] 再帰リゾルバはIPv6サポートを有していません。IPv6アドレスにバインドするには再帰問い合わせは無効とされなければなりません。
[3] 初期化はあらかじめ設定された間隔で行われます(設定しなければ7日に1度)。
[4] 本製品は、最初のクエリを行わず、ネームサーバで設定されたルートヒントに依存しません。
[5] サーバは、sslog("Unknown type: AAAA"、"database format error (AAAA)"および、"cache zone '.' rejected due to errors")に記録されたエラーメッセージにも拘わらず運用されます。

試験期間

 ネームサーバは、2007年2月1日より2007年5月1日まで試験を行うために利用することができます。

2007年2月8日公開

ICANNからのアナウンス(2007年2月15日)

"Testing Recursive Name Servers for IPv6 and EDNS0 Support"

このページを評価してください

このWebページは役に立ちましたか?
よろしければ回答の理由をご記入ください

それ以外にも、ページの改良点等がございましたら自由にご記入ください。

回答が必要な場合は、お問い合わせ先をご利用ください。

ロゴ:JPNIC

Copyright© 1996-2024 Japan Network Information Center. All Rights Reserved.