I.概要
DNSはドメインネームシステム(DomainNameSystem)、ドメインのコンピュータおよびネットワークサービスへの組織階層に名前を付けるために使用されるシステムのための頭字語です。ドメイン名は、単語や略語の列からなるドットで区切られ、各ドメイン名は、ドメイン名とIPアドレス間のインターネット上で固有のIPアドレスに対応するDNSドメインネームサーバが解決すべきである、一から一です。DNS名は、インターネットや他のTCP / IPネットワークのための、ユーザーフレンドリーな名前を通じてコンピュータやサービスを見つけます。DNSは、ドメイン名の分散データベースとして機能し、IPアドレスが相互にマッピングすることができ、インターネット・サービス・コアです。
DNSプロトコルは、プロトコルのドメイン名にIPアドレスを変換することも、当然のことながら、プロトコルのドメイン名をIPアドレスに解決することが可能に使用されています。
システム内の各ホストのIPとホスト名の対応関係を維持し、組織のシステム権限、
新しいコンピュータアクセスネットワークの場合、この情報はデータベースに登録されます
ユーザーがドメイン名を入力すると、自動的にDNSサーバーを照会します、DNSサーバは、対応するIPアドレスを取得するためにデータベースを検索します
私たちは、あなたのホストがコマンドからファイルを見ることができます。cat / etc / hostsに、優先順位はまだドメイン名解決の過程でhostsファイルの内容を見つけることになります。
それはUDPおよびTCPプロトコルに基づいて、DNSプロトコル、ポート番号53、UDPを使用して、サーバへのユーザ、DNSサーバーは、TCPを使用して通信します
大規模な事業者、インターネット機関は、例えば、公衆にGoogleのアリババ223.5.5.5の223.6.6.6 8.8.8.8 8.8.4.4を無料DNSサービスを提供します
DNSサーバーがダウンしている場合は、あなただけのIPアドレスを使用してサービスにアクセスすることができます
1.1ドメイン構造
ドメインネームシステムは、一意である必要があります。
インターネットのネーミングのユニークさの目的を達成するために命名階層を使用する場合:
1.各ドメイン(本明細書で説明のみ英語名)標識(ラベル)の配列で、文字(AZ、AZ、ケース当量)、数字(0-9)とハイフン( - )の組成
前記符号シーケンスは、ドットラベル(ラベル)の数に分割されない以上255文字以下であること
各ラベルは、各学年の63文字以内でなければなりません3.ドメイン名として見ることができます。
左側に書かれた4最低レベルドメイン名、右側に書かれた最高レベルのドメイン名
階層のドメイン名は、以下に示すように:
説明:www.baidu.com
1. COM :.レベルドメインが、これはビジネスのドメイン名であることを示しています。だけでなく、(ネットワーク・プロバイダ)「ネット」、「組織」の同じレベル(便利な非営利団体で来る)というように。
2.百度:セカンダリドメイン名、会社名を参照します。
3. WWW:ちょうどイディオム。
1.2、ドメイン分類
たとえば、次のようにxxx.yyy.zzz.com
comのトップレベルドメインから左側に権利があるさ:2人のドメイン名、ドメイン名3、4人のドメイン名
分類ドメイン:ドメインは、種々のサブドメインに分割することができ、サブドメインは、このようにトップレベルドメイン、二つのフィールド、三つのフィールド、等を形成する、サブドメインのサブドメインに分割し続けることができます
全国トップレベルドメイン、のgTLD、逆ドメイン名:トップレベルドメインが分かれているところ。
全国トップレベルドメイン、のgTLD、逆ドメイン名:トップレベルドメインが分かれているところ。
トップレベルドメイン | 中国:CN、アメリカ合衆国:私たち、イギリスの英国... |
---|---|
gTLD | 政府、int型の国際機関、ミル軍事、ネットネット、orgの非営利団体をGOVコム企業、EDU教育機関、... |
ドメイン名を逆に | ARPA、PTRクエリの(ドメイン名へのIPアドレス) |
1.3、ドメインネームサーバ
ドメイン名は階層構造が、また、対応するドメインネームサーバの階層です。
ドメイン構造により、また、ドメインネームサーバを解決する必要性により、世界中のドメイン名を解決するためのものを持っている必要があり、ドメインネームサーバは、実際にホストドメイン名システムが装備されています。
高から低階層的に次のカテゴリに分類できます。
1、ルートネームサーバ
メインルートサーバーは、インターネットのホームディレクトリを管理するために使用されます。
すべてのルートサーバーは、米国政府によって管理されている割り当てられた名前と番号、グローバルなインターネットのドメインネームルートサーバー、ドメインネームシステムとIPアドレスの管理を担当する統一された管理のICANNの数、のためのインターネット株を付与されました。
世界中の13台のルートサーバがあります。米国に配置されたルート・サーバとしてのメインルートサーバアーキテクチャ、。残りの12は日本で、アジアで米国、欧州では2、英国、スウェーデン、1に配置されたルートサーバ、9により補充しました。メインルートサーバーシステムと、より高度な、隠されたマスターサーバーでは、もちろん、また、米国では、全世界のトップレベルドメインを決定し、このサーバーの親であると言われています。
中国は、ルートサーバーを持っていません。中国本土の内側(F、I(3台)、J、L)をミラーリングのみ6グループルートサーバーです。あなたはルートサーバに要求を送信すると、要求は、お近くのミラーサーバーのルートサーバーにルーティングされます。
2、トップレベルドメインネームサーバ
セカンドレベルドメインのすべての管理を担当
3、ドメイン・ネーム・サーバーの権限
地域の管理を担当します。ドメイン・ネーム・サーバーの権限がクエリに最終的な答えを与えることができない場合は、DNSクライアントは、次のステップは、ドメインネームサーバの権限を見つけるためにあるべき照会要求を処理する教えてくれます。
4、ローカルドメインネームサーバ
デフォルトドメインネームサーバとして見ることができた後に、DNSクライアントプロセスがホストから送信されたドメイン名を受け取り、最初のドメインネームサーバへのクエリ要求を送信します
注:米国はルートDNSサーバを制御し、それが対応するドメイン名とIPアドレスのすべてを制御し、他の国には、死を免れ危険があることは明らかです。1日、米国は国のドメイン名をシールドする場合は、そのIPアドレスは、インターネットから消えますサイトを指しているこれらのドメイン名のうち、解決されません。そこで協会は、「.CN」ドメイン名がシステムから削除された場合、中国でも、それをキャンセルするためにIPアドレスを使用するように割り当てられます、中国は国際的な観客のバックボーンとなります。
だから、インターネットを閲覧する国家安全保障の観点から、我々はルートサーバを必要としています。中国政府は外国のウェブサイトは、全体として我が国の国家安全保障のために、言っていないブロックされたにも関わらず、インターネットで発言する権利は、中国インターネットネットワークインフォメーションセンター、CNNICは、ルートサーバのためにICANNに適用しようとしてきた、中国のウェブサイトをすることができ保護。
第二に、DNS
2.1、解決プロセス
一般的に、DNSは、2つのステップに分けることができ、
最初のステップは、ユニットがメッセージを照会するドメイン名を運ぶローカルドメインネームサーバへのDNS要求パケットを行うことです。
第二段階は、ドメイン名に対応するIPアドレスが含まれているDNSネイティブの応答パケットにローカルドメインネームサーバ応答です。次からjocent.me
ドメイン名解決パケットそれがこの2つのステップは明らかであろう。注意:第二の大きなステップは、反復クエリを使用して、実際には、以下のプロセスの分析で説明するように、小さなステップが多く含まれています。
DNSは、プロセスに関する一般的に分けることができます。
(1)。自分のデータベースをデータを検索するために、独自の対応するドメインネームサーバ、ドメインネームサーバホストのための最初の外観をドメイン名を入力し
、優れたドメインネームサーバを見つけるために、(2)の場合ではない、というように
、バックルーツへ(3)アップドメインネームサーバ、ドメイン名のIPアドレスを見つけることが必ず
ドメイン名と対応するIPアドレスをキャッシュし訪れたいくつかのキャッシングを、行います、それは発見プロセスをスピードアップすることができます(4)ドメインネームサーバ自体
次のように詳細を説明します。
1.ホスト再帰はXianxiangローカルドメインネームサーバ照会し
、ローカルドメインネームサーバが反復クエリを使用して、ルートネームサーバに問い合わせ2.を
3.ルートネームサーバがローカルネームサーバは、次のトップレベルドメインのサーバーのIPアドレスを照会するよう指示
4。ローカルドメインネームサーバは、TLDのネームサーバー照会
5.トップレベルドメインサーバ語っローカルドメインネームサーバ、次のサーバのIPアドレスの問い合わせ権限を
サーバーへ6.地方自治体のドメインネームサーバクエリ
7.サーバがホスト地方自治体のドメインネームサーバクエリを伝えますIPアドレス
8.最後に、ローカルドメインネームサーバのクエリ結果は、ホストを伝えます
再帰クエリ、および反復クエリ
(1)再帰クエリを:それは、ローカルドメインネームサーバへの最終結果を待って、クエリ要求を発します。ローカルドメインネームサーバは、マシンへの最後のIPアドレスまで、DNSクライアントとして他のネームサーバに、独自のクエリを解決できない場合は
(2)反復クエリ:ローカルドメインネームサーバは、ルートネームサーバに照会し、ルートネームサーバは、それを伝えるために次それをチェックし、それは各クエリへのクライアントサーバのアイデンティティであるたびに行く、問い合わせを行きます。
三、DNSパケットフォーマット
あなたは、Wiresharkのケースを経由してDNSフィルタを実際のパケットキャプチャを表示することができます
3.1、ヘッダとデータ
3.1.1ヘッド
1、会话标识(2字节):是DNS报文的ID标识,对于请求报文和其对应的应答报文,这个字段是相同的,通过它可以区分DNS应答报文是哪个请求的响应
2、标志(2字节):
QR(1bit) | 查询/响应标志,0为查询,1为响应 |
opcode(4bit) | 0表示标准查询,1表示反向查询,2表示服务器状态请求 |
AA(1bit) | 表示授权回答 |
TC(1bit) | 表示可截断的 |
RD(1bit) | 表示期望递归 |
RA(1bit) | 表示可用递归 |
rcode(4bit) | 表示返回码,0表示没有差错,3表示名字差错,2表示服务器错误(Server Failure) |
3、数量字段(总共8字节):Questions、Answer RRs、Authority RRs、Additional RRs 各自表示后面的四个区域的数目。Questions表示查询问题区域节的数量,Answers表示回答区域的数量,Authoritative namesversers表示授权区域的数量,Additional recoreds表示附加区域的数量
3.1.2、正文
1、Queries区域
a》查询名:长度不固定,且不使用填充字节,一般该字段表示的就是需要查询的域名(如果是反向查询,则为IP,反向查询即由IP地址反查域名),一般的格式如下图所示。
b》查询类型
类型 | 助记符 | 说明 |
1 | A | 由域名获得IPv4地址 |
2 | NS | 查询域名服务器 |
5 | CNAME | 查询规范名称 |
6 | SOA | 开始授权 |
11 | WKS | 熟知服务 |
12 | PTR | 把IP地址转换成域名 |
13 | HINFO | 主机信息 |
15 | MX | 邮件交换 |
28 | AAAA | 由域名获得IPv6地址 |
252 | AXFR | 传送整个区的请求 |
255 | ANY | 对所有记录的请求 |
c》查询类:通常为1,表明是Internet数据
2、资源记录(RR)区域(包括回答区域,授权区域和附加区域)
该区域有三个,但格式都是一样的。这三个区域分别是:回答区域,授权区域和附加区域
a》域名(2字节或不定长):它的格式和Queries区域的查询名字字段是一样的。有一点不同就是,当报文中域名重复出现的时候,该字段使用2个字节的偏移指针来表示。比如,在资源记录中,域名通常是查询问题部分的域名的重复,因此用2字节的指针来表示,具体格式是最前面的两个高位是 11,用于识别指针。其余的14位从DNS报文的开始处计数(从0开始),指出该报文中的相应字节数。一个典型的例子,C00C
(1100000000001100,12正好是头部的长度,其正好指向Queries区域的查询名字字段)。
b》查询类型:表明资源纪录的类型,见1.2节的查询类型表格所示
c》查询类:对于Internet信息,总是IN
d》生存时间(TTL):以秒为单位,表示的是资源记录的生命周期,一般用于当地址解析程序取出资源记录后决定保存及使用缓存数据的时间,它同时也可以表明该资源记录的稳定程度,极为稳定的信息会被分配一个很大的值(比如86400,这是一天的秒数)。
e》资源数据:该字段是一个可变长字段,表示按照查询段的要求返回的相关资源记录的数据。可以是Address(表明查询报文想要的回应是一个IP地址)或者CNAME(表明查询报文想要的回应是一个规范主机名)等。
3.2、基础命令
- Windows环境下清空DNS缓存的命令是
ipconfig/flushdns
也可以通过重启DNS client 和 DHCP client 两项服务清空DNS缓存 - Windows环境下可以用命令
ipconfig /displaydns
来查看DNS缓存的内容 nslookup
命令可以用来查看域名对应的IP地址