DNS のバックアップ(No.9)
DNS とは †
名称 †
概要 †
- IPアドレスとドメイン名(ホスト名)の対応表を管理して、利用者から提示されるドメイン名に対応するIPアドレスを応答する仕組み
- ポート番号:
- 53/UDP ※サイズが512B以下の場合、またはサイズが512Bを超過してEDNS0を使う場合
- 53/TCP ※サイズが512Bを超過してTCPフォールバックを使う場合
DNSの利用 †
ゾーン †
ネームサーバ †
DNSの仕様 †
通信プロトコル(トランスポート層) †
- UDP
- 一般的なDNSサーバへの接続はUDPが使われている。
- 最大512B
- 1往復
- TCP
- TCPフォールバック
- UDPのサイズ(512B)に収まらない場合に限り、TCP fallbackされる仕様(RFC1123)
- 3往復(3 say handshake)
- EDNS0
- Extension mechanism for DNS version 0
- DNSの拡張機構
- UDPのパケットサイズを最大65,535Bまで拡張することを可能とする
- OPTリソースレコードでUDPパケットサイズを識別する
DNSリクエストの暗号化方式(クライアントとフルリゾルバ間) †
DNSリクエストの暗号化方式(フルリゾルバと権威リゾルバ間) †
ゾーン転送 †
- 権威サーバのプライマリとセカンダリが登録情報を同期させるために行う登録情報の転送機能のこと。
- ゾーン転送要求
- セカンダリからプライマリに対して行われる。
- TCP(53ポート)で行われる。
再帰的問い合わせと非再帰的問い合わせ †
再帰的問い合わせ †
- スタブリゾルバからフルサービスリゾルバに対して行われる問い合わせ
- 再帰的問い合わせを受けたフルサービスリゾルバは、名前解決が完結するまで権威サーバをたどって問い合わせをした結果を応答する
非再帰的問い合わせ †
- フルサービスリゾルバから権威サーバに対して行われる問い合わせ
- 非再帰的問い合わせを受けたフルサービスリゾルバは、自身が応答できる情報のみを応答する(他のDNSサーバへの問い合わせは行わない)
DNSの構成要素 †
リゾルバ †
- Resolver
- 名前解決を行う
- ホスト名とIPアドレスを紐づけ、ホスト名をIPアドレスに変換する機能。
- メールアドレスとメールサーバを紐づける機能。
- リゾルバには、スタブリゾルバとフルサービスリゾルバの2種類ある。
スタブリゾルバ †
- Stub Resolver
- 別称
- パソコンやスマホなどの端末上に搭載されている機能
- フルサービスリゾルバに対して名前解決を要求する(再帰的要求)
フルサービスリゾルバ †
- Full-Service Resolver
- 別称
- フルリゾルバ
- キャッシュサーバ、DNSキャッシュサーバ、キャッシュDNSサーバ
- 参照サーバ
- ネームサーバ、DNSサーバ
- スタブリゾルバからの名前解決要求を受けて、権威サーバに対して名前解決を要求し(非再帰的要求)、名前解決するまで他の権威サーバをたどって問い合わせを行う
- 名前解決した内容はキャッシュに保存し、次回の同じ名前解決要求があった場合は、キャッシュに保存されている内容を応答する
- ルートサーバのIPアドレスが記載された一覧(ヒントファイル)を保持する
権威サーバ †
- 別称
- 権威DNSサーバ
- ゾーンサーバ
- コンテンツサーバ、DNSコンテンツサーバ
- ネームサーバ、DNSサーバ
- 権威サーバは、ルートサーバを頂点とした階層構造で構成される。
- 自身が委任を受けたゾーンの情報と、自身が委任しているゾーンの委任情報を保持する。
- フルサービスリゾルバからの名前解決要求を受けて(非再帰的要求)、保持している情報を応答する。
- ゾーンの情報(ゾーンデータ)は、リソースレコードという形式で保持する。
ルートサーバ †
- 別称
- ドメイン名空間の頂点(TLS)に位置するサーバ。
- ドメイン名の名前解決において、TLDの名前解決を行う。
プライマリとセカンダリ †
- 権威サーバはプライマリとセカンダリの2台構成で運用する必要がある。
- 自社のプライマリDNSサーバに対して、上位プロバイダのDNSサーバをセカンダリDNSサーバにするのが一般的。
DNSサーバ †
- DNSサーバには、コンテンツ機能とキャッシュ機能がある。
コンテンツサーバ †
キャッシュサーバ(フルサービスリゾルバ) †
- 個人と企業
- 個人の場合は、契約しているISPが管理しているフルサービスリゾルバを利用する。
- 企業の場合は、情報システム部門が管理しているフルサービスリゾルバを利用する。
- フルリゾルバの設定(Linux)
- /etc/resolv.conf の「nameserver」で指定する。
名前解決の手順 †
- クライアントは自ドメインのDNSサーバに問い合わせをする。
- 自ドメインのDNSサーバは、ルートサーバから下位のDNSサーバに向かって問い合わせを繰り返す。
- 自ドメインのDNSサーバは、目的のホスト名のDNSサーバからIPアドレスを取得し、クライアントに応答する。
リソースレコード †
グルーレコード †
- DNSサーバのドメイン名に対応するIPアドレスを、問い合わせ対象のドメインの上位のDNSサーバに登録することで、上位のDNSサーバから問い合わせ対象のDNSサーバに繋がるようにすることで、名前解決できるようにすること。
DNSのサービス †
DNSサーバソフトウェア †
DNSサーバを使ったセキュリティ上の攻撃手法 †
DNSリクエストの暗号化 †
暗号化アプリ †
DNS関連のコマンド †
bind-util †
- yum -y install bind-utils
kdig †
mDNS †
関連サイト †
- (緊急)米国国土安全保障省によるDNS設定の改ざんに関する緊急指令の公開について(2019.1.28)
- ハッカーによる「DNSハイジャック」の急増が、インターネットの信頼性を破壊する (2019.4.18)
関連用語 †