この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)
出典検索?: "DNSサーバ"
DNSサーバ(ディーエヌエスサーバ)は、コンピュータ・ネットワークにおいて、Domain Name System(DNS)の「名前解決」機能が実装されたサーバである。 DNSサーバには、後述するように2種類があり、それぞれ全く異なる働きをするので、「DNSサーバはこのようなことを行う」と説明することはできない。そのためここでは、Domain Name Systemの役割をまず説明する。 インターネットでの通信に際し、URLの中やメールアドレスの中などでの相手先は、IPアドレスが直接指定されることはまず無く、ドメイン名などといった「名前」が使われている。そういった名前から、IPアドレスなど[注 1]を得る「解決」を行うシステムがDomain Name Systemである。 あるコンピューターが他のコンピュータとインターネットプロトコル(IP)を介して通信する際には、通信の相手となるコンピュータに付与されたIPアドレスを知る必要がある。一方、URLなどには(IPアドレスを、直接指定することもできるが)、もっぱらドメイン名を使って対象を記述する。ドメイン名から、IPアドレスなどといった必要な情報を得る(名前を解決する)ために、ネットワーク上で情報を提供する仕組みがDomain Name Systemであり、それを担う各サーバがDNSサーバである。 DNSサーバは分散型データベースの1ノードとして機能している。DNSサーバには以下の2種類がある。 DNSサーバが持つ「ゾーン情報」(ゾーンファイル)を他のDNSサーバから取得し、同期する仕組みを「DNSゾーン転送」と言う。 DNSサーバは、ドメインの持ち主が情報を提供するための「DNSコンテンツサーバ」と、ネットワークの利用者(ドメイン名システム(DNS)の利用者)が名前解決に利用するための「DNSキャッシュサーバ」の2種類に大別できる。 両者は全く違うものだが、これらを総称して「DNSサーバ」と呼ぶ。コンテンツサーバはドメインの持ち主が管理することもできるが、多くの場合、プロバイダやレンタルサーバ業者などが提供しているものを利用する[注 2]。キャッシュサーバは、接続プロバイダなどがほとんどの場合に用意しており、「インターネットを利用するための機器の設定」にその設定が含まれていたり、あるいはDHCPでIPアドレス等と一緒に自動的に設定してしまうことが専らであるが、ユーザのLAN内に(あるいは端末自身の中のサーバとして)用意して、そちらを使うこともできる(分散システム的な観点からは、そのほうが望ましい)。DNSの仕組み上キャッシュすることが前提の設計になっているため、キャッシュを持っていて「キャッシュサーバ」と専ら呼ばれるのであるが、中継するのみでキャッシュしない、いわゆるプロキシ的な動作をするものもある。 BINDなどのDNSサーバソフトウェアでコンテンツサーバとキャッシュサーバの両方の設定が行えるため、誤った設定によりセキュアでない状態で運用されてしまうことが指摘されている。[1] DNSコンテンツサーバの役割は、Domain Name Systemにおいて、ドメインの管理情報、すなわち、自ゾーンの管理するサーバのIPアドレスなどの各種リソースレコード(RR)と、ドメインの委任に関する情報を保持し、問い合わせ要求があったときに応答することである。 DNSサーバが保持する「ゾーン情報」(ゾーンファイル)内のリソースレコード(資源レコード)の種類の例を以下に示す。詳細は「DNSレコードタイプの一覧」を参照 など。 なお、ドメイン名からIPアドレスを検索する事を正引きと呼び、反対にIPアドレスからドメイン名を検索することを逆引きと呼ぶ。 コンテンツサーバの役割での「プライマリサーバ」と「セカンダリサーバ」は、マスタとスレーブの関係にある。類似の用語である、オペレーティングシステムのネットワーク構成で指定する「DNSサーバ設定」の「優先」「代替」とは全く無関係であり、混同しないよう注意したい(#OSで指定する「DNSサーバ」)。 DNSサーバが応答不能になれば、管理しているゾーン内のコンピューターが提供しているサービスを利用できなくなり、誤った情報を回答するとクライアントコンピューターは意図していないノードにアクセスしてしまう[注 3]ことになる。 健全な利用環境を確保するために、DNSサーバのリソースレコードの改ざんやDoS攻撃を防ぐよう、DNSサーバソフトウエアおよびOSの設定やセキュリティ更新プログラムの適用、コンテンツサーバの多重化(セカンダリサーバを公開し、プライマリサーバは非公開とするなど)、ファイアウォールや侵入防止システムの導入などにより対策を講じる必要がある。 電子署名を用いてDNSの応答が正しいことを検証する「DNSSEC」機能が提供されている。 DNSSECにおいて、電子署名の正当性検証に使われる最上位の暗号鍵である「ルートゾーンKSK」を更新する際に、EDNSによるIPフラグメンテーションが発生するほどのサイズの応答データが発生するが、通信設定が対応できていないDNSで通信ができず、DNSSECによる正当性検証ができなくなり、インターネットの利用に問題が発生する。 これは、「ルートゾーンKSK」が2016年まで更新されてこなかったために問題になっていなかったが、2016年10月から2018年3月にかけて、 順次変更を行うことになったために顕在化した問題である。特に2017/09/19、2017/12/20、2018/01/11から始まる更新では、IPフラグメンテーションが発生しない1280bytesを超える1414?1424Bytesの応答データが発生するために、問題が発生する。 基本的には、DNSの運用責任者がソフトウェアのアップデートや設定変更で対応すべきものであるが、一般消費者向けのルータに内蔵されているDNS Proxyでも問題が発生する可能性があり、インターネットの利用に問題が発生する場合がある。 DNSキャッシュサーバの役割は、DNSクライアント(ウェブブラウザなど、ドメイン名を利用する何らかのアプリケーション等)からの再帰的問い合わせによって名前解決の依頼を受け、非再帰的問い合わせを行い名前を解決することである。たとえば、Webブラウザで、www.wikipedia.orgなどを入力した際、そのコンピュータがまず名前解決しに行くのがDNSキャッシュサーバである。 DNSキャッシュサーバ自身については、直接なんらかの方法でそのIPアドレスを設定する。近年のLinux環境などでの典型としては、ネットワークインタフェースの立ち上げ時に、DHCPによって受け取ったかネットワーク設定スクリプトに書き込まれているものが、設定ファイル(典型的には /etc/resolv.conf )に書き込まれる。
概要
#DNSコンテンツサーバ - 自らの「ゾーン」(ドメイン名空間)について、情報を管理し問い合わせに回答する。独自のドメイン名をドメインレジストラで登録する際、「そのドメイン名を管理するDNSサーバ」として指定するのがDNSコンテンツサーバである。
社内専用など、一般に公開しないゾーンを管理するコンテンツサーバというようなものもある。当然ながら、レジストラへの登録の必要はない。
コンテンツサーバについては、「権威DNSサーバ」という用語もある。コンテンツサーバという語は上記のような役割のサーバ全般の総称であるのに対し、権威DNSサーバは例えば「wikipedia.orgドメインの(wikipedia.orgドメインが管理・委譲している情報を持っている(それに関して権威がある))権威DNSサーバ」といったように、個々のドメインとの関係を意味する。
#DNSキャッシュサーバ - 依頼された問い合わせに応じて、コンテンツサーバへ必要な問い合わせを行い、結果を依頼元に返す。結果を再利用できるよう、一定期間自らキャッシュする。
フルリゾルバ・フルサービスリゾルバ・キャッシュDNSサーバとも呼ばれる。
コンテンツサーバとキャッシュサーバ
DNSコンテンツサーバ
リソースレコードの例
Aレコード
名前に対するIPv4アドレス
AAAAレコード
名前に対するIPv6アドレス
PTRレコード
逆引き(IPアドレスに対する名前)たとえば 198.51.100.234 というIPアドレスを逆引きするには 234.100.51.198.in-addr.arpa という名前のPTRレコードを問い合わせればよい
NSレコード
そのゾーンの権威あるDNSコンテンツサーバの名前
MXレコード
詳細は「MXレコード」を参照そのゾーンのメールサーバの名前
SOAレコード
ゾーンそのものの情報
CNAMEレコード
その名前に対する別名
TXTレコード
テキスト情報
DNSKEYレコード/RRSIGレコード
DNSSECのための公開錠/署名
wikipedia.orgのDNSコンテンツサーバの例
このDNSコンテンツサーバは、ja.wikipedia.orgやwww.wikipedia.orgなどwikipedia.orgゾーンの各種リソースレコードを保持している。ただし、orgゾーンに保持されているIPアドレスは知らない(間違った設定によってorgのNSレコードをキャッシュで答えてしまうサーバも実際には多く存在する)。このDNSコンテンツサーバは、ja.wikipedia.orgのIPアドレスを教えるよう要求を受けると、自らが保持しているコンテンツから、ja.wikipedia.orgのIPアドレスを探し、その情報を含めた返答を返す。
プライマリサーバとセカンダリサーバ
プライマリサーバ
ゾーン情報を自ら管理し、自らのゾーン情報に関する問い合わせに回答したり、セカンダリサーバへ配信したりする。Windows Server同梱のDNSサービスにある動作モード「Active Directory統合ゾーン」は、プライマリサーバとしての役割に機能拡張[2]がされたものである。
セカンダリサーバ
担当するゾーンに関する問い合わせに回答するが、自らはゾーン情報を管理せずプライマリサーバから受け取ったゾーン情報を保持している。
セキュリティ
KSKロールオーバー問題
DNSキャッシュサーバ
Size:25 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)』
担当:undef