DNSは、readmeファイル:私は、ドメイン名のための家を見つける方法

コンピュータを使用することを学ぶために生まれ、私たちはインターネット世代あるため。私たちは、ブラウザのアドレスバーに入力した直面しているときwww.baidu.comの時間を、Baiduのホーム・ページが前面に表示されます。しかし、あなたは今まで私たちが入力理由を疑問に思っているwww.baidu.comBaiduのホームを開くことができますか?この短いスパンの間に、最終的に何が起こったのか?今日、私はこれが起こったすべての背後に解明するあなたを見てみましょう。

我々が開始する前に、我々は理解しておく必要がありますたびに私たちは、ウェブページを訪問しますが、(例えば:www.baidu.com)ドメイン名を使用するすべての方法を。しかし、コンピュータのために、その最後の訪問(:10.102.201.253など)IPに対応するドメイン名にしました。私たちは、ただ一つのことを明確にするため、実際には、このすべての話を今日のよう:DNSは、ドメイン名に対応するIPアドレスを見つける方法です。

ブラウザのDNSキャッシュ

私たちは、ブラウザのアドレスバーにドメイン名を入力すると、ブラウザが最初に対応するドメイン名レコードがあるかどうかを見つけるキャッシュ、独自のDNSに行きます。もしそうであれば、対応するサーバに直接アクセスします。

別のブラウザでは、それは2〜30分の間、一般的に、別のDNSキャッシュ時間を設定します。DNSキャッシュは、有効にすることのアクセスを発見したりしない場合は、あなたがシステムを変更する場合は、ブラウザでDNSキャッシュをクリアしようとすることができます。

DNSキャッシュシステム

場合は、ドメイン名に対応するレコードは、独自のブラウザのキャッシュ、レコードを見つけるために行くDNSキャッシュシステムで見つけることができません。Windowsシステムでは、DNSキャッシュ情報が保存さC:/windows/system32/drivers/etc/hostsに。マックOSXのシステムでは、DNSキャッシュ情報はに保存され/etc/hostsたファイル。

しかし、IPのマッピングは、ファイルの形式は、ドメイン名であるシステムに関係なく対応しています。各行は、対応するドメイン名に続いて、対応するIPアドレスの前に、マッピングです。

127.0.0.1 www.baidu.com
192.168.1.1 www.google.com

上記の例で示したように、我々が訪れたとき、あなたはそれを設定www.baidu.comする我々の直接アクセス、127.0.0.1機械。私たちが訪れたときwww.google.com、私たちはへのアクセス直接192.168.1.1マシンを。

私たちは地元のデバッグに任意のドメイン名を設定することができますので、多くの時間は、限り、対応するドメイン名があるように、IPサービスを対応することができます。例えば、書き込み記事のプログラマへの愛、私のように、私は、ドメイン名のマッピングのセットを記述します。

127.0.0.1 top-writer.google.com

上のマシンにアクセスするとtop-writer.google.com、時間、要求は、ドメイン名の所有者でない場合でも、このマシンの性質に転送されます。

ローカルDNSサーバ

あなたがドメイン名システムのDNSのレコードを見つけることができない場合は、ブラウザは、記録上のドメイン名を見つけるために、ローカルのDNSサーバー(LDNS)に行きます。ここでLDNSは、一般的に、マシンに設定されたDNSサーバーのアドレスを指します。例えば、私のコンピュータ、対応するDNSアドレスで:10.xxx.xxx.253。そして、ブラウザはDNSサーバ上の対応するレコードにドメイン名を探します。

見つかったLDNSがサーバーに記録されている場合は、直接返すことができます。レコードが見つからない場合は、その後、さらに綿密な顔をしています。

DNSルートサーバー

ときLDNSサーバかどうかは、レコードに対応するドメイン名を雇う、それは対応するレコードを検索し、ルートDNSサーバーのドメイン名になります。世界中のDNSルートサーバー1つのルートDNSサーバーのIPアドレスリストの死を書きますのみ13単位なので、確立LDNSサーバ、。

しかし、実際には、ルートDNSサーバーのみトップレベルドメインを保存されているすべてのドメイン名解決レコードの情報を格納しないでください。私たちの訪問のためにそのドメイン名はwww.baidu.com、ルートDNSサーバーが私たちに教えてくれないwww.baidu.com、これはIPに対応するドメイン名の数である、それは私たちだけを伝えることができ.com、このトップレベルドメインを探さなければならない解決した後、対応する最上位のDNSサーバーのIPアドレスを教えてくれるためにどのようなDNSサーバ。

トップDNSサーバ

私たちは、ドメイン名を訪問しwww.baidu.com、DNSルートサーバーは、対応する見つけるために私たちに語った.comトップレベルのDNSサーバを。:しかし、実際には、最上位のDNSサーバーは、それだけであなたを伝えることができ、二次ドメイン名アドレスを解決できるbaidu.comDNSサーバーのドメイン名を探しているべきである解決します。

这里我们从顶级 DNS 服务器解析 baidu.com 这个域名得到的 DNS 服务器,其实就是你买域名时用于管理解析的服务器。而且也是你设置域名 NS 记录时,设置的 DNS 服务器的地址。

注:关于什么是 NS 记录,可以在公众号后台回复「域名解析类型」,查看我写的另一篇文章。

域名DNS服务器

上一步我们知道 baidu.com 这个顶级域名应该找哪台 DNS 服务器去解析,其实这台 DNS 服务器就是我们购买域名时设置的用于解析的 DNS 服务器。在这台 DNS 服务器上,我们通过设置一条 A 记录(A 记录就是域名到 IP 地址的映射)就可以让某个域名与 IP 联系起来。

当浏览器去请求 baidu.com 对应的 DNS 服务器时,其会尝试寻找解析类型为 A ,并且主机名为 www 的解析记录。如果找到了,那么就返回对应的 IP 地址。否则就报告 DNS 解析错误,其不会再去其他 DNS 服务器上寻找了。

总结

看到这里,相信大家都清楚了 DNS 寻址的整个流程了。总的来说,DNS 寻址的顺序为:

  • 浏览器 DNS 缓存
  • 系统 DNS 缓存
  • 本地 DNS 服务器
  • 根 DNS 服务器
  • 顶级 DNS 服务器
  • 域名 DNS 服务器

如果到最后还是找不到解析记录,那么就直接报域名解析错误。在这个过程中,我们还可以学到两个重要的知识点,即:

第一,域名 DNS 服务器就是 NS 记录设置的地址。 我们在域名服务商可以设置 NS 记录,将域名托管给另外一台 DNS 服务器进行解析,这个时候顶级 DNS 服务器注册的域名 DNS 服务器,就是我们 NS 记录配置的值。

上图我为 doc.csyimg.com 子域名设置了一条 NS 解析记录。那么当我访问 doc.csyimg.com 的时候,当解析到顶级 DNS 服务器时,顶级 DNS 服务器应该是返回 csyimg.com 对应的域名 DNS 服务器地址。接着浏览器访问 csyimg.com 对应的域名 DNS 服务器时,发现是要访问 doc.csyimg.com 域名,因为设置了 NS 记录,于是告诉它去 ns.baidu.com DNS 服务器上去寻找对应的解析记录。

注:这里说的找 ns.baidu.com 解析,其实应该是该域名对应的 IP,这里为了表述方便,没有做过多解释。

第二,域名最终得到的 IP 地址,是通过域名的 A 解析类型。 通过上面的解释,你会发现无论怎样设置,最终都会有一台 DNS 服务器去解析该域名。而在该 DNS 服务器上,必然存在一条解析类型为 A 的解析记录。如下图所示,我设置的是一条针对 hello.csyimg.com 域名的 A 记录,其指向了 192.168.1.1 这个 IP。如果最终找不到 A 记录,那浏览器就会报 DNS 解析错误。

第三,域名是由:主机名.二级域名.顶级域名.根域名组成的。 例如:www.baidu.com 中,www 就是主机名,.baidu 就是二级域名,.com 就是顶级域名。而在 .com 后面省略的 . 就是根域名。

通过这两个知识点,你会发现域名的解析类型与 DNS 的解析原理息息相关的。如果你感兴趣可以在公众号后台回复「域名解析类型」,查看我写的另一篇文章。

おすすめ

転載: www.cnblogs.com/chanshuyi/p/head_first_of_dns.html