DNS ネーム・サーバーのリゾルバー・モニターの例

TCPIP.DATA ファイル内の値が、リゾルバーが DNS ネーム・サーバーをモニターするときに収集する統計に影響を与える場合があります。例えば、以下の TCPIP.DATA の設定の例について考えてみます。

NAMESERVER 10.43.25.200 10.43.125.203 10.43.25.200
RESOLVERUDPRETRIES 2
RESOLVERTIMEOUT 0.075
RESOLVEVIA UDP

この例では、あるネーム・サーバー (10.43.25.200) は、リゾルバーが検索するネーム・サーバーのリストに 2 回現れています。リゾルバーは、このネーム・サーバーが無応答であると見なす前に、そのネーム・サーバーのリストをもう一度再試行してみる必要があります。リゾルバーは、gethostbyname 処理の一部としてアドレス user.ibm.com を解決するための照会を生成するとします。以下の例の順序で処理が発生します。

  1. リゾルバーはネーム・サーバー 10.43.25.200 に対して照会を送信します。これは、75 ミリ秒後に (RESOLVERTIMEOUT 値に基づく) タイムアウトになります。
  2. リゾルバーは要求をネーム・サーバー 10.43.125.203 に転送します。これもまたタイムアウトになります。
  3. ネーム・サーバー 10.43.25.200 (リスト内の最後のネーム・サーバー) に対してもう 1 回、要求が送信されますが、これもまたタイムアウトになります。

    リストのネーム・サーバーの最初の再試行は完了しています。

  4. リゾルバーは、もう一度リストの最初から開始して、3 度目の要求をネーム・サーバー 10.43.25.200 に送信します。このネーム・サーバーから、恐らくネーム・サーバーの遅延の結果として、応答が届きます。
  5. リゾルバーはこのリソースに対する検索を停止します。

リゾルバーが実行した検索に基づいて、ネーム・サーバー 10.43.25.200 のシステム全体にわたる要求の総数は、3 増え、また失敗の総数は 2 増えます。この例で示されている検索が、5 分間隔のスライディング・ウィンドウまたは 30 分のモニター・インターバルの間のこのネーム・サーバーに対するすべてのアクティビティーであるとすると、このネーム・サーバーに対する失敗の割合は 66% になります。ネーム・サーバー 10.43.124.203 に対するシステム全体にわたる要求の総数と失敗の総数は、両方とも 1 増えています。5 分間隔のスライディング・ウィンドウまたは 30 分間のモニター・インターバルの間にリゾルバーがこのネーム・サーバーに対してこれ以上の照会を送信しない場合、ネーム・サーバー 10.43.124.203 に対する失敗の割合は 100% です。

ネットワーク・オペレーター通知を使用しており、しきい値のパーセンテージが 66% よりも小さい場合、リゾルバーは両方のネーム・サーバーを無応答として報告しますが、両方のネーム・サーバーに対する DNS 照会の送信は続けます。

無応答のネーム・サーバーを自動的に静止する場合、30 秒のインターバルの間にネーム・サーバーに送られる照会は 10 個より少ないため、リゾルバーは、これらのネーム・サーバーのいずれも無応答とは見なしません。このネーム・サーバーは、UNRESPONSIVETHRESHOLD 値の設定に関わらず、無応答と見なされることはありません。

TCPIP.DATA ファイルの別の設定について考えてみます。

NAMESERVER 10.43.25.200
SEARCH raleigh.ibm.com
RESOLVERTIMEOUT 0.075
RESOLVEVIA UDP

この例では、1 つのネーム・サーバーのみがコーディングされており、追加の検索試行として入力ホスト名に追加できるのは 1 つのドメイン名のみです。アプリケーションは、ホスト名 user に対して getaddrinfo() を発行し、ai_family=AF_UNSPEC が指定されているとします。以下の例の順序で処理が発生します。

  1. リゾルバーはドメイン名 user.raleigh.ibm.com を検索し、AAAA レコードを要求します。
  2. 以下のいずれかのアクションが発生します。
    • リゾルバーがリソース情報を取得した場合、検索は終了します。
    • リゾルバーがリソース情報を取得しなかった場合、リゾルバーは引き続き AAAA レコードを要求しますが、シーケンスの次のドメイン、つまり user を検索します。
  3. 以下のいずれかのアクションが発生します。
    • リゾルバーがリソース情報を取得した場合、検索は終了します。
    • リゾルバーがリソース情報を取得しなかった場合、リゾルバーはドメイン名 user.raleigh.ibm.com を検索し、A レコードを要求します。
  4. 以下のいずれかのアクションが発生します。
    • リゾルバーがリソース情報を取得した場合、検索は終了します。
    • リゾルバーがリソース情報を取得しなかった場合、リゾルバーは引き続き A レコードを要求しますが、シーケンスの次のドメイン、つまり user を検索します。

10.43.25.200 にあるネーム・サーバーがすべての照会に対して応答に失敗した場合、このネーム・サーバーのシステム全体にわたる要求の総数および失敗の総数は 4 増えます。ネットワーク・オペレーター通知機能は、このネーム・サーバーを無応答と見なしますが (失敗率が 100% であるため)、無応答のネーム・サーバーのオートノミック静止機能は、無応答とは見なしません (ネーム・サーバーに送られる要求が 10 個より少ないため)。この照会が 30 秒のモニター・インターバルの間に 3 回繰り返され、このネーム・サーバーの要求の総数および失敗の総数が 4 ではなく 12 になると、無応答のネーム・サーバーのオートノミック静止機能は、このネーム・サーバーを無応答と見なします (10 個を超える照会がネーム・サーバーに送られるため)。