キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
cancel
2206
閲覧回数
11
いいね!
0
コメント
tkitahar
Cisco Employee
Cisco Employee

 

※ 2019 年 11 14 日現在の情報をもとに作成しています

 

1. はじめに

 

本記事では Umbrella DNS サーバー (208.67.222.222/208.67.220.220) のキャッシュ機能について解説します。

 

2. DNS クエリーの流れとキャッシュについて

 

まずは一般的な DNS サーバーにおける DNS クエリーの流れとキャッシュについて説明します。

 

DNS サーバーには大きく分けて 2 種類あり、ユーザーからの DNS クエリーを代理で対応し、結果を内部にキャッシュする「キャッシュ DNS サーバー」と、特定のドメイン情報を管理する「権威 DNS サーバー」があります。

 

ユーザーの DNS クエリーはこれら 2 種類のサーバーが連携して名前解決が行われることになりますが、実際の DNS クエリーの流れはキャッシュ DNS サーバー上にキャッシュがあるかないかで大きく異なります。

 

まずは umbrella.com A レコードの問い合わせを例に、キャッシュがない場合を見てみます。なお、説明をシンプルにするため、ルート ドメインなどへの問い合わせについては割愛します。

 

まず、ユーザーから送られてきた umbrella.com DNS クエリーを受け取ったキャッシュ DNS サーバーは、内部に umbrella.com のキャッシュがあるかどうかを調べます。この例では umbrella.com のキャッシュはないため、umbrella.com を管理する権威 DNS サーバーに問い合わせます。

 

umbrella.com の権威 DNS サーバーは、umbrella.com IP アドレスとともに TTL などの情報を返します。なお、TTL Time To Live の略で、キャッシュを行う時間を権威 DNS サーバー側が指定したものです。

 

その結果を受け取ったキャッシュ DNS サーバーは、問い合わせ結果を内部にキャッシュし、そのままユーザーに返します。

 

以上の流れを図に表すと以下のとおりです。

 

pic1.png

 

※ 5 番と 6 番の順序が逆の場合もあります

 

一方、キャッシュ DNS サーバーに umbrella.com キャッシュがある場合、権威 DNS サーバーへの問い合わせは行われず、キャッシュしてある内容をユーザーに返します。なお、その際の TTL にはキャッシュ DNS サーバーの残り時間が設定されます。図に表すと以下のとおりです。

 

pic2.png

 

3. Umbrella の DNS サーバーの場合

 

Umbrella DNS サーバーは「キャッシュ DNS サーバー」の機能のみを持ち、実際に行われる動作は基本的に前項で説明したものと同じです。ただし、一つ特徴的な点があります。

 

それは、Umbrella DNS サーバーは多くのサーバーによって冗長化されており、ユーザーの DNS クエリーは都度別々のサーバーに送られ、各々のサーバーに結果がキャッシュされることです。これにより、サーバーごとのキャッシュの残り時間はばらばらになります。

 

例えば、現在、サーバー A が保持する umbrella.com のキャッシュの TTL 100 秒なのに対し、サーバー B が保持する umbrella.com のキャッシュの TTL 200 秒といった状況です。

 

これは、dig コマンドを連続的に実行した際に、その都度アクセスが行われるサーバーが異なり、TTL の値が異なることからも分かります。

 

(1 回目)

dig umbrella.com @208.67.222.222


;; QUESTION SECTION:
;umbrella.com.                  IN      A

;; ANSWER SECTION:
umbrella.com.           100     IN      A       67.215.70.42

 

(2 回目)

dig umbrella.com @208.67.222.222


;; QUESTION SECTION:
;umbrella.com.                  IN      A

;; ANSWER SECTION:
umbrella.com.           200     IN      A       67.215.70.42

 

※ 出力結果の一部を抜粋

 

4. キャッシュの参照とクリア

 

Umbrella では、データセンターごとに保持されている A レコードのキャッシュを参照し、必要に応じてキャッシュをクリアできるサイトを用意しています。サイトの使い方については、以下の記事で説明されています。

 

How to refresh the DNS cache on OpenDNS' Global Resolvers?

https://support.opendns.com/hc/en-us/articles/227987067-How-to-refresh-the-DNS-cache-on-OpenDNS-Global-Resolvers-

 

※ OpenDNS とありますが、Umbrella でも同様に使えます

Getting Started

検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう

シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします