DNS学習のまとめ


一、DNSの原理
 DNSは人間の記憶IPの困難を解決するために現れたのです。 DNSは、ツリー状に階層的に付与された構造である。ルートで 「.」 出発点として、次はトップドメインです。 (トップ vel domain TLD) トップドメインの下には二級ドメイン名があります。 この階層的な授権は各級の行政機関と類似している。ルートドメインを担当するサーバはトップドメインの名前だけを記録して解析し、トップドメインのサーバ記録と解析を担当する。 例を挙げると、一台のPCがあります。 マシン A解析したい wwww.abc.net という名前で、この要求をDNSサーバB,Bに送信します。 まずその名前のドメインをチェックします。 abc.net それが責任を負うかどうか、  担当すると解析ファイルをチェックして応答します。  担当していない場合は、キャッシュに答えがあるかどうかを確認します。   もしあるなら、この答えをAに返します。   なければ    もしBがnetドメインのDNSサーバーを担当するなら、エリア解析ファイルに基づいてabc.netを探します。 のDNSサーバーを利用して、wwww.abc.netのAレコードを要求します。    もしBがネットドメインのDNSサーバーを担当していないならば     キャッシュにabc.netドメインのNS記録があるかどうかを確認し、      ある場合は、その記録に基づいて解析を担当します。 abc.net のサーバー送信 wwww.abc.netに対して のクエリ要求      もしないならば、キャッシュの中でnetドメインのNS記録があるかどうかを検査します。        もしあるならば、キャッシュの記録によってネットドメインのDNSサーバーを担当してwww.abc.netのA記録を要求して、netドメインのDNSサーバーを担当して帰ってきます。 abc.net のNSレコード       なければ 「.」 ドメインの解析ファイルは、ルートドメインを担当するDNSサーバの一つにwww.abc.netに対して送信されます。 オンラインのDNSサーバーのIPアドレスを返します。
二、DNS 設定
 メインプロファイル /etc/named.com nf (この構成ファイルは/etc/named.rfc 1912.zones、/etc/named.root.keyを含む) options セグメントはグローバルのデフォルトの構成を定義し、(ゾーンごとに上書きできますか?) メインプロファイルとゾーンプロファイルはいずれもC言語スタイルのコメントを使用しています。 末尾にセミコロンをつける 括弧の内容とかっこの中にはスペースが必要です。括弧の中にも番号を付けて終わる必要があります。
 重要なオプションの紹介:
listen-on port 53 { 127.0.0.1; };
// 傍受のIPv 4アドレスとポートを設定し、デフォルトではローカルのLOポートのみを傍受します。修正が必要であればクライアントのクエリを受け付けます。IPアドレスを設定しないと、すべてのアドレスを傍受するという意味です。    
listen-on-v6 port 53 { ::1; };
// 待ち受けのIPv 6アドレスとポートを設定します。  ディレクトリー       「/var/named」   //namedプロセスのワークディレクトリを指定します。プロファイルで使用する相対パス名はここで指定されたディレクトリに対して使用されます。
allow-query     { localhost; };
 //どのクライアントの問い合わせを受け付けますか?実際の必要に応じて修正します。
recursion yes;
 //再帰的なクエリを受け入れるかどうか
forward only;
//クエリーのみ転送し、クライアントのために繰り返しクエリを行いません。DNSサーバをキャッシュするために使用します。キャッシュにクエリーの結果がない場合、自分はクライアントとして以下に設定します。 forwarders 再帰クエリ要求を送信し、結果を得たらクライアントに戻りキャッシュする。
forwarders { IP1;IP2; };
  //クエリーを誰に転送するかを設定します。
allow-transfer { SLAVE_IP; };
  //設定により、それらのIPを接続して領域転送を行うことができます。zoneに対して設定することができます。  
notify yes|no;
  //エリア解析ファイルの変更は、メインサーバからサーバーに通知されますか? zone定義:
zone "." IN {
type hint;
file "named.ca";
};
  ここでは、ルートドメインを定義し、転送されたDNSサーバだけが必要ではない。 
include "/etc/named.rfc1912.zones";
 //このファイルは通常他のzoneを定義するために使用されます。 ゾーン(zone解析ファイル  DNSサーバにおいて、ドメイン名とIPのマッピング関係は、$TTLとIPを除いて、領域プロファイルに記録されている。 $ORIGIN また、ゾーンプロファイルは主に SOA,NS,A,CNAME,PTR,MX などの資源記録(RR)からなる。
  $TT キャッシュの肯定応答の生存時間を設定し、 minimum-TL キャッシュの否定応答の生存時間を指定します。拡張子がない場合、デフォルトの時間単位は秒です。  $ORIGIN ドメイン名を設定するための設定コマンドを使用します。ドメイン設定ファイルには使用されていません。 ORIGIN DomainName" ドメイン名を定義すると name d 会将 named.com nf にある zone DomainName" で定義された名前はデフォルトのドメイン名として使用されます。任意のリソース記録において、定義されたホスト名がドメイン名を規範化していない場合、すなわちドメイン名ではなく .  最後に、namedはドメイン名をホスト名の後ろに付けて、FQDNを形成します。主な構成ファイルのドメイン名は . 終了しましたが、ゾーン設定ファイルには、 . エンディングにはドメイン名が追加されます。  expire パラメータは、サーバからホストサーバに連絡がつかない場合に記録されたコピーの権威の持続時間を指定します。
  解析ファイルではセミコロンで終わる必要はありませんが、行末コメントが必要な場合は、コメントの前にセミコロンを付ける必要があります。  SOA 5つの値を記録します。行をまたぐ場合は、丸括弧内で改行できます。  領域解析ファイルの例:
    
$TTL 1D
$ORIGIN abc.net.
@       IN SOA  ns1.abc.net. admin.gmail.com ( ;         SOA    
2013081401  ; serial,            ,               
1D          ; refresh,                  
1H          ; retry,             ,            
1W          ; expire,                                    
3H )        ; minimum,          。
IN      NS       ns1.abc.net.
ns1.abc.net.   IN      A        192.168.9.11
www.abc.net    IN      A        192.168.9.13
  @現在のドメイン名を表します。 指定された値、ORIGIN 1つの設定ファイルでは複数回使用できます。    エリア解析ファイルにはセミコロンが必要ではありませんが、セミコロンで終了を表し、その後にコメントを付けます。  全時間単位のデフォルトは s(秒)  各記録の第二のフィールドはTTLを指定しますが、省略できます。省略すれば使用します。 $TT 指定された値  最初のフィールドが空の場合、その値は前の行の最初のフィールドと同じです。
三、キャッシュDNSサーバ キャッシュサーバとは、自身がエリアデータファイルを持っていない(local hostなどを除く)ことで、ドメイン名の解析作業を任意の領域で維持するDNSサーバのことです。 キャッシュサーバは、クライアントの代わりに他のドメイン名サーバに照会要求を送信し、要求結果をキャッシュし、キャッシュが期限切れ前に同じ名前の解析を要求したクライアントがある場合、キャッシュ中の結果をクライアントに返すことができます。これにより、クライアントの対応速度を速くし、トラフィックを節約し、クライアントのインターネットへのアクセスを制御することもできます。 キャッシュサーバの設定のポイントは 
recursion yes;
forward ( first | only );
forwarders [ port integer ] {
( ipv4_address | ipv6_address ) [ port integer ]; ...
};
 
 もしそうならば forward only のキャッシュサーバ .の hintファイルは全部四、メインサーバが必要ではありません。
 メインサーバはエリアに対して、 zone ステートメントで定義 「タイプ」 マスター" メインサーバです。管理者はメインサーバ上の領域解析ファイルを維持します。領域解析ファイルが修正され(かつシーケンス番号が増加している)場合、メインサーバから通知されます。 yes,これはデフォルト設定です。サーバから領域転送を行います。メインサーバは領域解析ファイルに記載されているDNSサーバ(すなわち関連NSレコードとAレコードがあります。)のみを通知します。5、サーバから サーバから zone  ステートメントで定義されています 「タイプ」 slaave" のDNSサーバ サーバーからメインサーバに領域解析ファイルを同期させ、サーバから領域解析ファイルを編集してはいけません。サーバからドメイン名解析の六、ACLをホストサーバと一緒に負担してもいいです。 ACL文で名前付きのアクセス制御リストを定義できます。他の文とオプションで参照するには、ACLを先に定義してから参照する必要があります。 システムには4つのACLが内蔵されています。 any:どのホストにマッチしますか? none:どのホストにもマッチしていません。 local host:本機のすべてのネットワークインターフェースに合致するIPアドレス locanets:本機のいずれかのネットワークインターフェースと一致するIPアドレスが同じネットワークにあるホストと一致する。 ACL の使い方 
acl acl-name { IP; ... };
 例えば
acl trust-net { 172.16.9.0/24; };
 これは和むべきです cisco のACLと同様、172.1.69.0/24 的に命中する /24。 ワイルドカードマスクの役割を果たしています。マッチングしたホストのIPアドレスマスクは必ずしも/24ではありません。でも試したことがありません。 IPとネットワークの前に追加できます。 ! 否定の意を表す。 ビュー viewはクライアントのIPによってもいいです。 の違いは異なる解析ファイルで応答を与えます。通常はCDNに適用されます。 使ったら ビュー、 すべての zone すべて含まなければなりません ビュー に含まれる 「.」 。 ビュー のキーステートメントは
match-clients { address_match_element; ... };
 ビッド クライアントのIPとviewを 語句 のmatch-clientsとマッチしています。マッチングが成功すれば、このviewの中のzoneファイルを使って応答します。マッチングはトップダウンです。8、その他
権威のある答えはキャッシュレスの答えです。
コマンド:dig -t タイプ 名前 @SERVER
ビュー  すべてのzoneは必ずいます。 ビュー 内部
下のような配置
www     IN      A       172.16.9.11     ;
ftp     IN      CNAME   www     ;
ftp     IN      A       172.16.9.12     ;
エラーの原因になります 「CNAME and other ダタ「
しかし、このように配置することができます。
www     IN      A       172.16.9.11     ;
ftp     IN      A       172.16.9.11    ;
ftp     IN      A       172.16.9.12     ;