記事「Web要求について」を開始する方法についてです
HTTP
リクエストを要求がステップのプロセスを開始するために、それは重要である-DNS
説明解決プロセスを渡している、この記事は続くDNS
解決プロセスをドメイン名を分析することですどのように解析します。
A、DNS名前解決の手順
以下にDNS
基本的な原理と解析手順について説明名前解決の例。
次DNS
の分析の手順は、後に追跡するために、コマンドラインの形で、説明するDNS
解決プロセスを。ユーザーがアドレスバーに入力するとwww.baidu.com
、キーとQiaoxia入力した後、DNSが始まりました。
ステップ1:ブラウザのキャッシュは、ドメイン名に対応するIPアドレスをキャッシュされたかどうかをチェック
ユーザがブラウザを介してWebサイトを訪問した後、ブラウザが自動的に対応するドメインキャッシュするIP
ユーザーのアクセスが再び、ブラウザがキャッシュから対応するIPアドレスを探しますときがあるのでアドレスを、キャッシュだけではありませんサイズ制限はなく、時間制限(ドメイン名はで、キャッシュされているTTL
プロパティを設定する)、対応するドメイン名がありますIP
見つけることができません。キャッシュからドメイン名に対応するサイトを見つけるために、ブラウザがするとIP
全体のアドレスDNS
分析プロセスが完了すると、見つからない場合は、次のステップになります。以下のためにIP
時間の問題をキャッシュ、時間をバッファリングするドメイン名が対応する場合には、あまりにも長い間、あまりにも長く設定すべきではないIP
変更が短すぎる場合、ユーザーは頻繁に解決ドメイン名で、その結果、適切にいくつかの時間のためのウェブサイトにアクセスすることはできません。
ステップ2:あなたは、ブラウザのキャッシュIPで見つからない場合、それはネイティブシステムを探し続けるがIPキャッシュされています
最初のステップは、ドメイン名の解決プロセスを完了しなかった場合は、ブラウザが対応するドメイン名を超えるシステムキャッシュシステムキャッシュするかどうかを調べるために行くIP
のアドレスシステム自体も名前解決への基本的な能力を持っているとして、理解することができます。ではWindows
システム、あなたが提供することができhosts
、手動でファイルに特異的に結合するドメイン名にIP
、hosts
ファイルの場所C:\Windows\System32\drivers\etc\hosts
。平均的なユーザーのために、手動で結合ドメインにはお勧めしませんとIP
、開発者のための、および結合ドメインを介してIP
、あなたは簡単に環境を切り替えることができ、それは、開発とテストのための開発環境にテスト環境から切り替えることができます。ではXP
システム、ハッカーは、多くの場合、自分のコンピュータを修正するhosts
ファイルを、ユーザーが多くの場合、ドメイン名が彼の指定にバインドされているアクセスIP
ローカル達成するために、上のDNS
これらのドメイン名ハイジャックにつながる、解像度を。ではLinux
またはMac
システムhosts
ファイル/etc/hosts
、ファイルは、同じ目的を達成するために変更することができます。
前两步都是在本机上完成的,所以没有在上面示例图上展示出来,从第三步开始,才正在地向远程DNS服务器发起解析域名的请求。
第三段階:ローカルDNSドメイン名解決サービスシステムへの要求を開始
あなたは、ドメイン名がマシンに完了し解決できない場合、システムは、ローカルドメインネームシステム解決するために、ローカルDNSサービスシステムを頼むことができるLDNS
ドメインネームサーバは、そのようなあなたが、その後、ドメインネームシステムに接続するキャンパスネットワークとして、地域で一般的にあなたのキャンパスの部屋、あなたがサービスを提供するために、それぞれの事業者テレコム、チャイナモバイルやChina Unicom社のネットワーク、地域内のローカルDNSサーバに接続している場合。ローカルの場合はDNS
、サーバアドレス、Windows
システムコマンドはipconfig
で、見ることができるLinux
とMac
直接コマンドを使用して、システムの下にcat /etc/resolv.conf
表示するLDNS
サービスアドレスを。LDNS
一般的には、ほとんどオーバーここでは、時間のキャッシュ有効期限の時間領域制御により、当然のことながら、分析作業のほとんどをドメイン名解決のほとんどの結果をキャッシュLDNS
分析作業のほとんどを担当します。
第四段階:ルートDNSサーバにDNS要求を開始
ローカルDNS
ドメイン名リゾルバは、ローカルDNSサーバがルートネームサーバを解決するための要求を開始し、まだ完全に解消されません。
ステップ5:ルートサーバが返すのgTLD DNSサーバアドレス
ローカルDNS
DNS解決要求ルートネームサーバを開始するために、ルートサーバは、ジェネリックトップレベルドメインチェックドメイン(返し、Generic top-level domain,gTLD
)アドレスを、そこに共通のgTLDは.com
、.cn
、.org
、.edu
のように。
ステップ6:サーバーのgTLDを解決するための要求を開始
ローカルDNSサーバは、サーバのgTLDにリクエストを送信します。
ステップ7:のgTLDサーバは要求を返すネームサーバーのサーバーを受け取ります
gTLD
サーバーは、ローカルドメインネームサーバは要求を開始し、解決のドメイン名に、必要に応じて受け取り、対応するドメイン名を見つけるName Server
ドメイン・ネーム・サーバは、通常の状況下では、このName Server
サーバーは、ドメイン・ネーム・サーバーを登録することで、サービスプロバイダのサーバーは、ドメイン名を登録仮定しますDNSタスク。
ステップ8:ネームサーバーのサーバーは、ローカルサーバーにIPアドレスを返します。
Name Server
対応するドメインネームサーバの検索IP
住所、IP
一緒にアドレスTTL
ローカルドメインネームサーバに返された値を。
ステップ9:ローカルドメインネームサーバは、解析の結果をキャッシュします
時間によってローカルドメインネームサーバのキャッシュリゾルバキャッシュの結果は、TTL
時間を制御します。
ステップ10:分析結果がユーザに返さ
解析結果は、システムがキャッシュする、ユーザーに直接戻されるIP
時間によってアドレスバッファをTTL
処理終了を解析し、このように、制御されます。
ここのための
DNS
ステップを解析するコマンドラインオプションでドメイン名解決のプロセスを解決するために、特に後に、簡単な分析です。
二、DNS名前解決プロセス分析
構文解析プロセス分析の公式開始する前に、最初はいくつかの基本的なドメイン名解決モードの概念を導入します。DNSレコードが分かれているA记录
、MX记录
、CNAME记录
、NS记录
とTXT记录
。
-
A记录
:A
それは表すAddress
の対応するドメインのために、IP
あろうような、アドレスmap.baidu.com
に割り当てることに割り当てられ、DNSの複数のできるように記録複数のIPアドレスにドメイン名をアドレスではなく、。180.97.34.157
zhidao.baidu.com
180.149.131.245
A
IP
-
MX记录
:MX
表現Mail Exchage
ドメイン名でメールサーバが自分に向けることができる、つまり、Mail Server
など、baidu.com
ドメイン名A
レコードIP
アドレス180.97.34.157
場合、MX
レコードが設定されて180.97.34.154
いること、[email protected]
ルーティングメールは、その後、DNS
意志にメッセージを送信し180.97.34.154
、サーバーが配置されている通常の間web
要求まだに解決A
IPアドレスレコード180.97.34.157
。 -
CNAME记录
:CNAME
を参照しCanonical Name
、指定したドメイン名を解決するための別名である別のドメイン名に解決することができ、ドメイン名と他のドメイン名はエイリアス、別名解像度と呼ばれる全体の解決プロセスを指定することです。例えば、それはなりbaidu.com
に解決解決するには、それがある、との別名。itlemon.cn
csdn.net
itlemon.cn
itlemon.cn
baidu.com
CSDN.net
-
NS记录
:特定のドメイン名用に指定されていることをDNS
解決するためのサーバー。 -
TXT记录
:のような、ホスト名またはドメイン固有の命令に設定itlemon.cn
されたTXTレコードのセット“Lemon的技术笔记”
、このTXT
レコードがされてitlemon.cn
説明。
上記の概念
IP
アドレスが理解の助けになっています。ドメイン名を解決することによって、以下のbaidu.com
更なるドメイン名解決処理を説明するために、例えば、。
ドメイン名は、直接結果を表示するには、コマンドすることができますnslookup
プラスのドメイン名を表示する:
上記の図は、Non-authoritative answer
非権限のあるサーバーからの分析結果、キャッシュからの結果は、完全にすべての解析プロセスを経験していないという意味を表し、キャッシュから読み込みます結果として、このように対応するドメイン名とその結果、ことを特定リスクがあるIP
アドレスは、より可変となっているが。
これは、単に迅速な分析結果である、あなたはすべての解析プロセスを確認する必要がある場合は、あなたが使用することができますdig
解決プロセスを表示するコマンドを。
分析チャートでDNS
解析処理、我々は見ることができます:
最初のステップ:ローカルからDNS
のDNSサーバーを取得するために13
、ルートDNS
ネームサーバ(.)
のホスト名に対応します。
ステップ2:から13
のルートネームサーバ1で(ここではh.root-servers.net
)トップレベルに到達するcom.
サーバーのIP
(図示せず)と名前。
第3のステップは:にcom.
ドメインサーバ192.43.172.30(i.gtld-servers.net)
要求解析、それが返しbaidu.com
、サーバドメインIP
(図示せず)とネームサーバ百度は、4つのトップレベルドメインを有します。
ステップ4:Baiduのトップレベルドメインサーバへの220.181.37.10(ns3.baidu.com)
要求はwww.baidu.com
、それが見つかりました。つまりwww
、個々の名前ではなく、ホストの別名www.a.shifen.com
。
通常の状況下では、DNS
別名への解決は、特定のに戻って、停止したIP
アドレスは、特定の見たい場合は、IP
アドレスを、エイリアスはさらに解析することができ、次のように、分析結果は以下のとおりです。
この分析の最終結果を参照するには時間があるさ180.97.33.107
と180.97.33.108
。エイリアスを解析する過程では、あなたが見つけることができるshifen.com
とbaidu.com
同じドメインネームサーバに指定されています。上記のドメイン名解決プロセス、最終分析結果との使用開始でnslookup
同じ結果。
Javaのウェブシリーズの研究ノートの記事リストの深さ分析内側:
ノートを読んで内部のJava Web技術の詳細な分析、Webリクエストの()分析
DNS名前解決プロセス技術インサイダーにJava Web読書ノート(B)の詳細な分析分析
より乾燥品シェア、私のマイクロチャンネル公衆番号への歓迎の注意:Javaの山(マイクロ・シグナル:itlemon)