DNSクライアントとサーバーの相互作用と構成の事例
インターネットドメインネームシステム
最初は、すべてのマシンで使用される名前は非階層的な名前空間を構成し、すべての名前は文字シーケンスで構成されています。通信網
ネットワークインフォメーションセンター(NIC)はこの名前空間を管理し、新しい名前を受け入れる責任があります。
非階層的な名前空間は、独自の特性のために多数のマシン名を管理できません。主な理由は次のとおりです。
•名前は一連の文字で構成されており、名前が競合する可能性があります。
•名前空間の管理構造はサイトにあり、マシンの台数の増加は管理に大きな負担をかけます。
•名前とIPアドレスのマッピングは頻繁に変更されるため、ドメインの名前空間を維持するための膨大な作業負荷が発生します。
したがって、TCP / IPはDNSドメイン名を階層構造に設計しました。インターネットドメイン名の構造は、TCP / IPプロトコルスタックのDNSによって定義されます。DNSはインターネットを複数のトップレベルドメインに分割します表1は、各トップレベルドメインのドメイン名を示しています。トップレベルドメインは、組織モードと地理モードの分割モードを採用しています。地理モデルは国によって分割されており、インターネットへの参加を申し込む国はそれぞれ、NICにトップレベルドメイン名(中国の場合はcn、米国の場合はusなど)を登録する必要があります。
表1最上位のインターネットドメイン名とその意味
NICは、トップレベルドメインの管理権限を、指定された管理組織に割り当てます。これらの管理組織は、承認されたドメインを分割して第2レベルドメインを形成し続けます。セカンダリドメインの分割を担当する管理組織は、その下位管理構造にドメインの分割を継続することを許可できます。それ以来、階層的なインターネットドメインネームシステム構造が形成されました。
静的ドメイン名解決
ドメイン名解決は、動的ドメイン名解決と静的ドメイン名解決に分かれています。ドメイン名を解決するときは、最初に静的ドメイン名解決方法を採用し、静的解決が失敗した場合は動的ドメイン名解決方法を使用します。
IPv4静的ドメイン名解決は、静的ドメイン名解決テーブルを介して実行されます。つまり、ドメイン名とIPv4アドレスの間の対応表は手動で確立されます。このテーブルの機能は、Windows 9Xオペレーティングシステムのホストファイルに似ています。一般的に使用されるいくつかのドメイン名は、テーブル。DNSクライアントがドメイン名に対応するIPv4アドレスを必要とする場合、対応するIPアドレスを取得してドメイン名解決の効率を向上させるために、静的ドメイン名解決テーブルで指定されたドメイン名を検索します。
動的ドメイン名解決
動的ドメイン名解決には、ドメイン名解決サーバープログラムを実行し、ドメイン名からIPアドレスへのマッピング関係を提供し、顧客からのドメイン名解決要求の受信を担当する専用のドメイン名解決サーバー(DNSサーバー)が必要です。
DNSクライアントとDNSサーバー間の相互作用、つまり動的ドメイン名解決の作業プロセスは次のとおりです。
図1では、アドレスリゾルバー(リゾルバー)とキャッシュ領域(キャッシュ)が統合されて、DNSクライアント(DNSクライアント)を形成しています。これは、ユーザープログラム(Ping、Tracertなど)からのDNS要求を受信して応答するために使用されます。 。一般的に、ユーザープログラム、アドレスリゾルバー、およびキャッシュは同じホスト上にあり、DNSサーバーとそれらは異なるホスト上にあります。
-
ユーザーがドメイン名を使用して特定のアプリケーションサービスにアクセスすると、ユーザープログラム(ping、telnetなど)は最初にDNS要求をDNSクライアントのアドレスリゾルバーに送信します。
- DNS要求を受け取った後、アドレスリゾルバは最初にローカルドメイン名キャッシュを照会します。
domainドメイン名に対応するマッピングテーブルエントリがローカルドメイン名キャッシュに存在する場合、アドレスリゾルバーはドメイン名に対応するIPアドレスをユーザープログラムに直接返します。
search検索するマッピングテーブルエントリがローカルドメイン名キャッシュに存在しない場合、アドレスリゾルバーはクエリ要求メッセージをDNSサーバーに送信します。
- DNSサーバーは、クエリメッセージを受信すると、要求されたドメイン名が、管理を許可されているサブドメインにあるかどうかを最初に判断し、さまざまな判断結果に従って対応する応答メッセージをDNSクライアントに送信します。
requested要求されたドメイン名が、管理を許可されているサブドメインの範囲内にある場合、DNSサーバーはまず、自身のデータベースでドメイン名に対応するIPアドレスを検索します。
requested要求されたドメイン名が管理を許可されたサブドメインのスコープ内にない場合、DNSサーバーは解決が完了するまで要求を上位レベルのDNSサーバーに転送して処理し、解決結果がDNSクライアントに返されます。
- DNSクライアントのアドレスリゾルバは、DNSサーバーから送信された応答メッセージを受信して解決し、解決結果をユーザープログラムに返します。
ドメイン名と毎回正常に解決されるIPアドレス間のマッピングは、動的ドメイン名キャッシュに保存されます。
ドメイン名が同じ場合は、ドメインネームサーバーに要求することなく、キャッシュ領域から直接読み取ることができます。バッファ内の画像
ショットは一定期間が経過するとエージングされて削除され、最新のコンテンツがドメインネームサーバーから時間内に確実に取得されます。ドメイン名別のエージングタイム
サーバー設定、DNSクライアントはプロトコルメッセージからエージングタイムを取得します。
ドメイン名サフィックス一覧機能
動的ドメイン名解決は、ドメイン名サフィックスリスト機能をサポートしています。ユーザーはドメイン名のサフィックスを事前に設定できます。ドメイン名が解決されると、ユーザーはドメイン名の一部のフィールドを入力するだけで済み、システムは分析のために入力ドメイン名に異なるサフィックスを自動的に追加します。
たとえば、ユーザーがドメイン名「example.com」をクエリする場合、サフィックスリストでcomを設定して「example」と入力すると、システムは入力ドメイン名とサフィックスを自動的に「example.com」に接続してクエリを実行します。ドメイン名サフィックスを使用すると、次の状況が発生する可能性があります。
•ユーザーが入力したドメイン名に「。」が含まれていない
たとえば「example」の場合、システムはこれをホスト名と見なし、最初にクエリ用のドメイン名サフィックスを追加します。すべてのドメイン名の検索に失敗した場合、最後に入力したドメイン名が検索に使用されます。
•ユーザーが入力したドメイン名の中央には「。」が付いています
たとえば、「www.example」の場合、システムはそれをクエリに直接使用します。クエリが失敗した場合は、各サフィックスを順番に追加してクエリを実行します。
•ユーザーが入力したドメイン名の最後には「。」が付いています
たとえば「example.com。」の場合、システムは最初に入力されたドメイン名の最後の「。」を削除し、残りを使用します
クエリが成功しない場合は、各サフィックスを順番に追加してクエリを実行します。
DNSクエリの種類
ルーターのIPv4ドメイン名解決サービスシステムは、次のDNSクエリの種類をサポートしています。
•タイプAクエリは、最も一般的に使用されるクエリタイプであり、ドメイン名に対応するIPアドレスを要求するために使用されます。たとえば、pingおよびtracertのプロセスでは、ドメイン名にpingまたはtracertを実行できます。このとき、ユーザープログラムとしてのpingまたはtracertは、ドメイン名に対応するIPアドレスをDNSクライアントに照会します。DNSクライアントがドメイン名に対応していない場合
IPアドレス情報、DNSクライアントはDNSサーバーへのタイプAクエリを開始し、ドメイン名に対応するIPアドレスを取得して、pingおよびtracertの機能を完了します。
•PTRクエリは、DNSクライアントがPTRレコードを利用して、IPアドレスに基づいて対応するドメイン名を取得することを意味します。PTRレコードは、DNSサーバー上のPTRクエリ用に提供されるドメイン名とIPアドレスのマッピングテーブルを参照します。
DNSクライアントの構成例
トポロジー
ネットワーク要件
IPアドレスは覚えにくいため、ユーザーはDNSドメイン名リクエストを介してWebサーバーにアクセスしたいと考えています。ユーザーが入力したい
ドメイン名フィールドの一部は、DNSサーバーによって正しく解決され、ユーザーが正しいネットワークサービスにアクセスできるようになります。DNSなど
クライアントがサーバーhuawei.comにアクセスすると、ユーザーは「huawei」と入力するだけで済みます。一般的に使用されるいくつかのドメイン
名前、ユーザーは迅速にアクセスできるようになり、ドメイン名解決の効率を向上させたいと考えています。
構成のアイデア
DNSの構成の考え方は次のとおりです。
-
ルーターAに静的DNSエントリを構成して、サーバーBおよびサーバーCと通信する機能を実現します。
-
RouterAで動的DNS機能を構成して、RouterAが動的DNSクエリによってネットワークサーバーと通信する機能を実現します。
-
ルーターAにドメイン名サフィックスを構成して、ルーターAがドメイン名サフィックスリスト機能を実装できることを確認します。
- ルーターにOSPFルーティングを構成して、ルーターを到達可能にします。
手順
デバイスルーターAを構成する
GE1 / 0/0インターフェイスのIPアドレスを設定します。
<Huawei>システムビュー
[Huawei] sysname RouterA
[RouterA] interface gigabitethernet 1/0/0 [RouterA-GigabitEthernet1 / 0/0] ip address 10.1.1.2 255.255.0.0
[RouterA-GigabitEthernet1 / 0/0]終了
OSPFを構成します。
[RouterA] ospf
[RouterA-ospf-1]エリア0
[RouterA-ospf-1-area-0.0.0.0]ネットワーク10.1.0.0 0.0.255.255
[RouterA-ospf-1-area-0.0.0.0]終了
[RouterA-ospf-1]終了
静的DNSエントリを構成します。
[RouterA] ip host serverB 10.4.1.1
[RouterA] ip host serverC 10.4.1.2
DNSドメイン名解決機能を有効にします。
[RouterA] DNS解決
DNSサーバーのIPアドレスを設定します。
[RouterA] DNSサーバー10.3.1.2
ドメイン名サフィックスnetを構成します。
[RouterA] DNSドメインネット
ドメイン名のサフィックスcomを構成します。
[RouterA] dns domain com
[RouterA]やめる
構成結果を確認する
RouterAでping serverBコマンドを実行すると、pingに成功し、対応する宛先アドレスは10.4.1.1です。
<ルーターA> pingサーバーB
PING serverB(10.4.1.1):56データバイト、中断するにはCTRL_Cを押します
10.4.1.1からの応答:バイト= 56シーケンス= 1 ttl = 126時間= 4ミリ秒
10.4.1.1からの応答:バイト= 56シーケンス= 2 ttl = 126時間= 1ミリ秒
10.4.1.1からの応答:バイト= 56シーケンス= 3 ttl = 126時間= 1ミリ秒
10.4.1.1からの応答:バイト= 56シーケンス= 4 ttl = 126時間= 1ミリ秒
10.4.1.1からの応答:バイト= 56シーケンス= 5 ttl = 126時間= 1ミリ秒
--- serverB ping統計---
5パケット送信
受信した5パケット
0.00%のパケット損失
往復の最小/平均/最大= 1/1/4ミリ秒
RouterAでping huawei.comコマンドを実行すると、pingを実行でき、対応する宛先アドレスは10.2.1.3です。
<RouterA> ping huawei.com
DNSサーバーを試す(10.3.1.2)
PING huawei.com(10.2.1.3):56データバイト、中断するにはCTRL_Cを押します
10.2.1.3からの応答:バイト= 56シーケンス= 1 ttl = 126時間= 6ミリ秒
10.2.1.3からの応答:バイト= 56シーケンス= 2 ttl = 126時間= 4ミリ秒
10.2.1.3からの応答:バイト= 56シーケンス= 3 ttl = 126時間= 4ミリ秒
10.2.1.3からの応答:バイト= 56シーケンス= 4 ttl = 126時間= 4ミリ秒
10.2.1.3からの応答:バイト= 56シーケンス= 5 ttl = 126時間= 4ミリ秒
--- huawei.com ping統計---
5パケット送信
受信した5パケット
0.00%のパケット損失
往復の最小/平均/最大= 4/4/6 ms
RouterAでping huaweiコマンドを実行すると、pingを実行できます。対応するドメイン名はhuawei.comになり、宛先アドレスは10.2.1.3になります。
<RouterA> ping huawei
Trying DNS server(10.3.1.2)
PING huawei.com(10.2.1.3):56 data bytes、press CTRL_C to break
Reply from 10.2.1.3:bytes = 56 Sequence = 1 ttl = 126 time = 6 ms
10.2.1.3からの応答:bytes = 56 Sequence = 2 ttl = 126 time = 4 ms
10.2.1.3からの応答:bytes = 56 Sequence = 3 ttl = 126 time = 4 ms
10.2.1.3からの応答:bytes = 56 Sequence = 4 ttl = 126 time = 4 ms
10.2.1.3からの応答:bytes = 56 Sequence = 5 ttl = 126 time = 4 ms
--- huawei.com ping統計---
5パケット送信
受信した5パケット
0.00%のパケット損失
往復の最小/平均/最大= 4/4/6 ms
ルーターAでdisplay ip hostコマンドを使用して、静的DNSエントリのホスト名とIPアドレスの対応を表示します。
<RouterA> display ip host
Host Age Flags Address
serverB 0 static 10.4.1.1
serverC 0 static 10.4.1.2
RouterAでdisplay dns dynamic-hostコマンドを使用して、動的キャッシュ内の動的DNSを表示します
エントリー情報。
<RouterA> display dns dynamic-host
Host TTL Type Address(es)
huawei.com 114 IP 10.2.1.3
構成ファイル
RouterA構成ファイル
sysname RouterA
ip host serverB 10.4.1.1
ip host serverC 10.4.1.2
#
DNS解決
DNSサーバー10.3.1.2
DNSドメインネット
DNSドメインcom
#
インターフェイスGigabitEthernet1 / 0/0
IPアドレス10.1.1.2 255.255.0.0
#
OSPF 1
エリア0.0.0.0
ネットワーク10.1.0.0 0.0.255.255
#
戻る
================================================== ==============
RouterBの構成ファイル
#
sysname RouterB
#
インターフェースLoopBack0
IPアドレス10.4.1.1 255.255.255.255
#
インターフェイスGigabitEthernet1 / 0/0
IPアドレス10.1.1.1 255.255.0.0
#
インターフェイスGigabitEthernet2 / 0/0
IPアドレス10.2.1.1 255.255.0.0
#
OSPF 1
エリア0.0.0.0
ネットワーク10.1.0.0 0.0.255.255
ネットワーク10.2.0.0 0.0.255.255
ネットワーク10.4.1.1 0.0.0.0
#
戻る
================================================== =====================
RouterCの設定ファイル
#
sysname RouterC
#
インターフェースLoopBack0
IPアドレス10.4.1.2 255.255.255.255
#
インターフェイスGigabitEthernet1 / 0/0
IPアドレス10.3.1.1 255.255.0.0
#
インターフェイスGigabitEthernet2 / 0/0
IPアドレス10.2.1.2 255.255.0.0
#
OSPF 1
エリア0.0.0.0
ネットワーク10.2.0.0 0.0.255.255
ネットワーク10.3.0.0 0.0.255.255
ネットワーク10.4.1.2 0.0.0.0
#
返す
WeChat相談WeChatパブリックアカウント