1.ドメインとは
インターネット上の住所でIPアドレスのネットワーク部の役割を持つ(例:example.co.jp)。
なお、ホスト部に当たるのがホスト名(例:www.)。
ネットワーク部とホスト部を合わせたのがFQDN(例:www.example.co.jp)。
インターネットを介してあるPCにデータ転送をするとき、IPアドレスを指定するが、IPアドレスは人間には判別しにくい。そのため、IPアドレスに対応する文字列に変換し人間が扱いやすい状態にした方がいい。この変換した文字列がFQDN(例:192.198.0.001↔︎www.example.co.jp)。
なお、FQDN→IPアドレスに変換するのが正引き、IPアドレス→FQDNに変換するのが逆引きという。
2.変換の仕組み
IPアドレスとFQDNの対応表を管理しているDNSサーバに問い合わせることで変換を実現している。DNSサーバはドメイン情報等をレコードという単位で管理している。
主なレコードは以下の通り。
レコード | 説明 |
---|---|
Aレコード | ホスト名と対応するIPv4アドレス。 |
AAAAレコード | ホスト名と対応するIPv6アドレス。 |
SOAレコード | ドメイン自体の情報。 |
NSレコード | ドメインを管理するDNSサーバの情報。 |
MXレコード | ドメインに所属するメールサーバの情報。 |
3.ホストPCのDNSサーバ問い合わせ設定
ホストPCがどのDNSサーバに問い合わせるかや、問い合わせ順序、リトライ回数等の設定は「/etc/resolv.conf」ファイルに記載されている。現在の設定を確認するときはcatコマンド等でファイルを照会するのが良い。
<例>
DNSサーバ DNSサーバのIPアドレス
nameserver 192.168.0.1
※「domain」行がある場合、ホストが所属するドメイン名を意味する。
※「search」行がある場合、ホスト名の解決時に付加されるドメイン名を意味する。
4.名前解決の流れと各セクション
名前解決をするためには以下のようなセクションを踏む必要がある。
- QUESTION
→IPアドレス等をDNSサーバへ名前解決依頼。 - AUTHORITY
→どのDNSサーバが対象IPアドレス等を管理しているかをホスト名(NSレコード)で返却。※キャッシュDNSが知っていれば省略される。 - ADDITIONAL
→AUTHORITYではホスト名だけしか返ってこないため、IPアドレスも付与する。 - ANSWER
→最終的な対象IPアドレス等の名前解決の結果。