memo: DNSを始めよう

先日AWSのRoute53で使用されているサードパーティDNS provider で名前解決ができなくなる障害が発生した。

同一ドメインにアクセスするユーザーの中でも当該障害の影響を受けるユーザーと受けないユーザーがいたが、この原因がわからなかったのでさらっとDNSの概要を掴み直したいと思って、この本を読んだのでそのメモ。画像はこの本から利用させてもらってます。

www.amazon.co.jp

ドメインの入手方法

[evernote:9fb4a7f65c8a1c5d170b0653724a6e3f アップロード中]

一意性を担保するため、TLDはそれぞれ唯一のレジストリによって管理されている
TLD = jp の場合、日本レジストリサービスのみが管理
 

サブドメイン

 

Who is...?

JPRSが 提供するドメイン名登録情報検索サービス
ドメイン名を所有している組織や担当者の氏名がわかる
 

DNSとは

  1. ネームサーバ = DNSコンテンツサーバ = 権威 DNSサーバ
  2. フルリゾルバ = DNSキャッシュサーバ = フルサービスリゾル
 

フルリゾル

ドメイン名に紐づくIPアドレスをネームサーバに問い合わせて取得する
一定期間はその結果をキャッシュする
Google Public DNS 8.8.8.8 や Cloudflareの 1.1.1.1 など、誰でも使えるオープンリゾルバもある
 

ページが表示されるまで

 
ポイントは移譲ゾーン
.fun(というゾーン)のことについては、a.nic.funに任せる(移譲)
startdns.fun(というゾーン)のことについては、 dns.onamae.comに任せる(移譲)

リソースレコード

TTL

Time to Live キャッシュの保持時間のこと
DNSの変更の浸透に時間がかかるのではなく、TTL経過まではキャッシュが使用される
親リゾルバのTTLが使用されるのか、子リゾルバのTTLが使用されるのかは実装依存
 
Aレコード...ドメインに紐づくIPアドレス
dig aaa.example.com a +short
133.242.53.94
 
MXレコード...メールサーバ
dig medpeer.co.jp mx +short
 
5 alt1.aspmx.l.google.com.
5 alt2.aspmx.l.google.com.
1 aspmx.l.google.com.
10 alt3.aspmx.l.google.com.
10 alt4.aspmx.l.google.com.
 
CNAME...CDNロードバランサーで使われる
 
nits
ドメイン名の大文字小文字の区別はない
 
プライベートIPの範囲