LoginSignup
0
0

More than 1 year has passed since last update.

DNSの勉強始めました

Posted at

まずは用語の整理

ドメイン空間

.comや.jp等のトップレベルドメインを含む「ドメイン」で表現されるツリー構造の全てを表現する言葉

ゾーン

ゾーンはドメイン空間の中の一部を表す言葉。example.jpゾーンは/jp/example配下の空間を表現する。

ネームサーバ

ドメインを問い合わせると、紐づけられた情報を返却するサーバの総称。主として二つの機能を持つが、どちらも同じプロトコルを用いる

権威サーバ

ゾーンについての一次情報を返却する。

キャッシュサーバ

自身ではゾーンを管理せず、他のDNSサーバ(権威サーバまたはキャッシュサーバ)に再問合わせを行い、結果を返却する。
一度問い合わせた結果は「一定時間」保持し、再度問い合わせを受付けた場合は別のDNSサーバに問い合わせることなく、有効期限内のゾーン情報を返却する。
キャッシュの機能を持たず、再問合わせを行うシステムは特に「リゾルバ」と呼ばれる。

ラベル

63バイト以下
ドメイン名の最小構成要素。
[名前] == [ラベル].[ラベル].[ラベル]

名前

255バイト以下

TTL

符号付32bitの整数。正の値に限定される。(なんで符号付なんや……)

UDPメッセージ

512バイト以下

リソースレコード(RR)

特定のドメイン名における情報。実際にDNSをユーザが使用する際にはここを参照する事を目的にしている事が多い。
一つのRRは少なくとも[タイプ][クラス][TTL]の三要素以上で構成される

タイプ
A

一番よく使うアレ。ドメイン名とIPアドレスを直接紐づける。IPv6はAAAAを用いるが今回はIPv4を考えるため気にしない。

CNAME

昔はよく使ったアレ。Aレコードに対してシンボリックリンクのように別名をつけるのに使う。
一つのIPアドレスに対して複数のAレコードが設定できるため、実はあまり使い道が無い。

HINFO

ホストが使用するCPUとOSを表現する。こんなの使ったことない。

MX

電子メールのエクスチェンジを設定する。MXレコードはさらに優先度を設定する。数値が小さいほうが優先のため、優先度0が最優先。

PTR

別のゾーンを含む、ドメイン名空間の別の場所へのポインタ(これではちょっと意味が分からない……)
一般的には逆引きアドレスを表現するのに用いられる。

SOA

このRRが所属するゾーンの情報が記載される。

 [権威サーバ(MNAME)] [管理者メールアドレス(RNAME)] (
    [シリアル(SERIAL)]
    [リフレッシュ時間(REFRESH)]
    [リトライ時間(RETRY)]
    [有効期限(EXPIRE)]
    [ネガティブキャッシュの有効期限(MINIMUM)]
)
  • SERIAL: 大きければ優先。整数のみ
  • REFRESH: ゾーン情報の有効期限
  • RETRY: REFRESHが失敗した場合、何秒後に再取得を試みるか
  • EXPIRE: REFRESHが失敗した場合、何秒間古い情報を持ち続けるか
  • MINIMUM: 存在しないドメインについての情報について「存在しない」という情報を何秒間持ち続けるか
CLASS

プロトコルを指定する。インターネット用にはINが用いられるので、普段見るのはINのみのはず。

IN

インターネットシステム。よく見る。

CH

CHAOSシステム。
ちょっと意味が分からないので後でもうちょい調べる。


今回の目的はGSuiteの無料版使ってて個人利用申請し忘れてたので、自前でサービス作るのに必要かな、というところなのでこの辺で。
MX,A,NSとラベル,RRの概念を理解できれば大丈夫。

でもDKIMとかSPFもDNS使った技術なのよね。
この辺はDNSというより電子メール関連の技術扱いなのか。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0