DNS
ドメイン名とIPアドレスなどの情報を対応づけ、問い合わせに応じて答える仕組み。世界中のDNSサーバが階層的に分担して管理している。
イマシルちゃんの解説
人間は「example.com」みたいな名前のほうが覚えやすいけど、
コンピュータが通信するには「192.0.2.1」みたいなIPアドレスが必要なんだ。
その名前と番号を結び付ける、インターネットの電話帳みたいな仕組みがDNS!
しかも、世界中に分かれて置かれた電話帳が、少しずつ担当を分け合っているんだよ。
より深い解説
定義
DNS(Domain Name System)は、ドメイン名とIPアドレスなどの情報(リソースレコード)を対応づけて管理する、分散型のデータベースの仕組みである。ドメイン名からIPアドレスを求めることを名前解決(正引き)、IPアドレスからドメイン名を求めることを逆引きという。ポート番号は53番で、主にUDPを使い、応答が大きい場合やゾーン転送ではTCPを使う。
階層構造
ドメイン名は、右から順に階層をたどる。
www.example.co.jp.
└ ルート(最後の「.」。通常は省略)
└ トップレベルドメイン(jp)
└ 第2レベルドメイン(co)
└ example.co.jp
└ www
それぞれの階層を担当するDNSサーバが、自分の下の階層の担当サーバを知っていて、管理を委任している。
2種類のDNSサーバ
| 種類 | 役割 |
|---|---|
| 権威DNSサーバ | 自分が管理するドメイン(ゾーン)の情報を持ち、それについて答える |
| フルサービスリゾルバ(キャッシュDNSサーバ) | 利用者からの問合せを受け、権威DNSサーバに順に問い合わせて答えを探し、結果を一時的に保存(キャッシュ)する |
利用者のPCなどにある、問合せを出すだけの仕組みはスタブリゾルバという。
名前解決の流れ
- PC(スタブリゾルバ)が、フルサービスリゾルバに www.example.co.jp のIPアドレスを問い合わせる(再帰的問合せ)
- フルサービスリゾルバは、キャッシュになければ、ルートサーバに問い合わせ、jpの担当サーバを教えてもらう
- jpの担当サーバに問い合わせ、co.jpの担当サーバを教えてもらう
- 同様にたどり、example.co.jpの権威DNSサーバから答えを得る(2〜4は反復問合せ)
- 結果をキャッシュし、PCに答える
キャッシュは、リソースレコードに付いているTTL(有効期間)の間だけ保存される。
セキュリティ
| 脅威 | 内容 | 主な対策 |
|---|---|---|
| キャッシュポイズニング | フルサービスリゾルバに偽の応答を覚えさせる | 送信元ポート番号のランダム化、DNSSEC |
| オープンリゾルバの悪用 | 誰からの問合せにも答えるDNSサーバを、DRDoS攻撃の反射に使う | 再帰的問合せを受け付ける範囲を制限する |
| 通信の盗聴 | 問合せの内容(見ようとしているサイト)を見られる | DNS over TLS(DoT)、DNS over HTTPS(DoH) |
実際の試験ではここに出る!
- ネットワークスペシャリスト 令和7年度 春期 午前Ⅱ 問20
- ネットワークスペシャリスト 令和7年度 春期 午後Ⅰ 問3
- ネットワークスペシャリスト 令和7年度 春期 午後Ⅱ 問1
- ネットワークスペシャリスト 令和4年度 春期 午前Ⅱ 問18
- ネットワークスペシャリスト 令和4年度 春期 午前Ⅱ 問21
- ネットワークスペシャリスト 令和3年度 春期 午前Ⅱ 問2
- ネットワークスペシャリスト 令和3年度 春期 午前Ⅱ 問9
- ネットワークスペシャリスト 令和3年度 春期 午前Ⅱ 問17
- ネットワークスペシャリスト 令和元年度 秋期 午前Ⅱ 問6
- ネットワークスペシャリスト 令和元年度 秋期 午前Ⅱ 問8
- ネットワークスペシャリスト 平成30年度 秋期 午前Ⅱ 問7
この用語が出てくる記事
- RARP
- RLO
- IP25B
- IPv6導入の設計
- EDNS
- HTTP/3
- SMTP
- SPF
- S/MIME
- FQDN
- OP25B
- 逆引き
- キャッシュメモリ
- 近隣探索プロトコル
- 権威DNSサーバ
- 権限委譲
- C&Cサーバ
- CDN
- ステートフルパケットインスペクション
- SLAAC
- 中間者攻撃
- DRDoS攻撃
- DHCP
- DHCPv6
- DNSSEC
- DNSラウンドロビン
- DMZ
- TLS
- TLSインスペクション
- DKIM
- TTL
- DMARC
- デジタル証明書
- デジタル署名
- デュアルスタック
- PACファイル
- ping
- Whois
- フルサービスリゾルバ
- ブロードキャストドメイン
- プロキシサーバ
- ポート番号
- UDP
- リソースレコード
- リバースプロキシ