DNS
Domain Name System
DNSは多数のDNSサーバーで構成される分散型データベース
https://gyazo.com/f5253ff08ae8fc6a14f49b4fd0be7757
words
FQDN (完全修飾ドメイン名) = ホスト名 + ドメイン名 ICANNによってドメイン名やIPアドレス割当が管理されている 可用性の向上のために2台以上設置する
プライマリ
セカンダリ
ゾーン転送(プライマリDNSからセカンダリDNSに同期する)が行われている
リソースレコード
Address
名前に対するIPアドレスを指定する
例
www.example.com IN A 119.3.2452.4613
IPv6の場合 www.example.com IN A 1008::dfd::ff99:33:739f
ドメインがわかっている場合サブドメインのみに省略可能
Mail eXchanger
ドメインのメールサーバーを指定する
例
code:MX
example.com IN MX 10 mx1.example.com.
example.com IN MX 20 mx2.example.com.
Name Server
ドメイン名の委任先を表す
自分のドメイン、下位のドメインに関するDNSサーバーのホスト名
フォーマット example.com IN NS ns1.example.com.
Canonical Name
別名をつけるレコード
フォーマット web.example.com IN CNAME www.example.com
Start Of Authority
オーソリティ情報
任意の文字列を特定のドメインに紐付けられる
メールの送信元
証明書を発行できる認証局を指定
など、他にも色々ある
名前解決の流れ
キャッシュサーバー
ルートヒント(ルート権威サーバーのリスト)を持っていて問い合わせる TTLを最大にキャッシュする
ルート権威サーバー -> domain の権威サーバーをツリー状に見ていく
子に委任していくことで分散管理されている
ref
https://youtu.be/fMURJhG601k