muku.のプロフィール
dns記事画像

「DNSをはじめよう」読了。DNSをなんとなくの理解で済ませない。

2020.9.25

「DNS。なんとなくで理解しているけどもう少し詳しく知りたい。」と思った時に良さそうな書籍を発見したので読んでみました。

それがこちら。「DNSをはじめよう」です。

書籍「DNSをはじめよう」の記事用画像

ここでは書籍を読んで学んだ点・良かった点を目次毎にまとめてみました。

目次毎の学び

1章. ドメイン名とWhois

1章はまずドメイン名の購入についてから始まります。

お名前.comやゴンベエドメイン、名付けてねっとなど、異なるサイト・値段でドメイン名の品質は異なるのか、解説されています。
僕もこのブログ「mukunoblog.com」のドメイン名を取得する時、この疑問が浮かんでいたのですっきりしました。

またドメイン名を売るお店はレジストラ(登録事業者)リセラ(再販事業者)の2種類があり、その違いについて述べています。 レジストラ・リセラがドメインを仕入れるレジストリ(登録管理組織)についても言及しています。

僕がドメイン取得の時に頭を悩ませたWhois情報についても書かれています。 (正確に言うとお名前.comの仕様上、Whois情報公開代行についての設定なのか代行メール転送オプションの設定なのかがわかりづらかったと言う点でですが。)

更新されなかった価値あるドメイン名を即座に取得して悪用する行為をドロップキャッチと言うそうです。 (ある有名店のサイトが更新されず売りに出されたとき、そのドメイン名を即座に買取り詐欺サイトを貼り付けて誘導する。など。) ドメイン名を開放した後のことも考慮しなければならないので、サイト運営者側にとっては迷惑な話ですね。

この章では実際にお名前.comでの購入手順も解説されています。 これから購入を考えている方にも参考になると思います。


2章. DNSの仕組み

2章では本題のDNSについて学びます。

DNSの実態であるネームサーバフルリゾルバによってどのように名前解決が行われるかが解説されています。 ゾーンリソースレコードhostsファイルと言った用語について知りたい方は要チェックです。

またDNSリソースレコードの種類についてはこちらの記事も参考になるかと思います。 →DNSとは? 全体像とDNSレコードの種類 ちなみにこの書籍内でも4章でdigコマンドを叩きながら、各リソースレコードについて解説されています。


3章. AWSのRoute53を使ってみよう

3章ではAWS Route53を使って自分のドメイン名のゾーン、リソースレコードの作成を実際に行います。 AWSの登録から、Route53の使用方法まで丁寧に解説されていました。

また、よく「DNS変更時には浸透するのに時間がかかる」と曖昧な表現が使われますが、その実態について書かれています。 若干ネタバレすると、TTL(Time To Live)=キャッシュ保有時間が関係しています。 この部分を読むことで「DNSが浸透するのにたぶん1日くらいかかります。たぶん。」と曖昧に答えずに済むようになります。


4章. digとwhoisを叩いて学ぶDNS

4章ではdigコマンドwhoisコマンドを実際に叩いてドメイン名や持ち主、有効期限などを確認する方法を学びます。

NSレコードや、CNAMEレコードなどのリソースレコードの種類別の解説もありました。 こんな問題が起きたときはこのコマンドで調べる、といった風に具体的な事例が載っていてコマンドを使用する場面がイメージしやすかったです。


5章. トラブルシューティング

最後の章ではあるあるなトラブルとその解決方法・未然防止方法が紹介されていました。

・URLはwwwありなしどちらか ・「.dev」で終わるテストサイトが見られなくなる ・A社からB社へサイト移管する場合のやること、注意点 ・リニューアル後のサイトが人によって表示されない(「浸透」の問題) ・サブドメインを追加したのにサイトが見られない(ネガティブキャッシュ) ・CAAレコードによりSSL証明書が発行できない ・AWSで突然ドメイン名が引けなくなった(AmazonDNSについて) ・ラブライブ!のオフィシャルサイトが乗っ取られた(レジストリロックサービス) といった具体例を取り扱っています。

これまでの内容で取り上げなかった点の落穂拾い的な章ともなっていました。

CAA(Certification Authority Authorization)レコード ・ドメイン名の証明書を発行できる認証局を登録することでSSlサーバ証明書を第三者が勝手に発行することを防ぐ仕組み

まとめ

DNSについてなんとなくで理解していた点を改めて確認でき、具体的な事例毎にdigコマンドでどのように調べれば良いか学ぶことができたので良かったです。

個人的にはリソースコードについての理解が浅かった点・digコマンドについて知らなかった点を補填することができたので良かったです。

「DNSをはじめよう」の著者@mochikoAsTechさんはこの続編として「AWSをはじめよう」や「SSLをはじめよう」を出版されているので、また今度読んでみようと思います。

今後も僕がエンジニア関連で学んだこと・読んだ書籍についての記事を書いていく予定です。 もしよかったらツイッターのフォローもよろしくお願いします。@mmuu_kkuu

DNSをはじめよう