基礎しか記載できない!これを理解した上で深掘った問題が出る感じかと。
最初にFQDNについて理解
www.example.com.
部分 | 説明 |
---|---|
www | ホスト名(サーバー名など) |
example | セカンドレベルドメイン |
com | トップレベルドメイン(TLD) |
. (ピリオド) | ルートドメイン(省略されることもある) |
※最後の .
は省略されることが多いが、厳密なFQDNでは省略しない
一般にドメイン名の前にホスト名を加えたものが完全修飾ドメイン(FQDN)という。
DNSレコード一覧
レコード種別 | 読み方 | 主な用途・説明 |
---|---|---|
A | エー | ホスト名 → IPv4アドレスの対応付け |
AAAA | クアッドエー | ホスト名 → IPv6アドレスの対応付け |
CNAME | シーネーム | ホストの別名(別名 → 正式名への対応) |
MX | メールエクスチェンジ | ドメイン宛メールの配送先サーバーを指定(優先度も設定可) |
NS | ネームサーバー | ドメインの権威DNSサーバーを指定 |
SOA | ソウア(Start of Authority) | ゾーンの管理情報を定義(最初のレコード) |
PTR | ピーティーアール | IPアドレス → ホスト名(逆引き用) |
TXT | テキスト | SPFやDKIMなどのメール認証情報、任意のテキスト情報 |
SRV | サービス | 特定サービスの提供ホストとポート番号を定義(例: SIP, LDAP) |
SPF | エスピーエフ | TXTで記述されるメール送信者の認証用情報(SPFレコードとも呼ぶ) |
NAPTR | ナプター | SRVと組み合わせて使用、VoIPやENUMで利用 |
DNSKEY | ディーエヌエスキー | DNSSECで使われる公開鍵 |
RRSIG | アールアールシグ | DNSSECの署名情報 |
DS | ディーエス | 親ゾーンに登録するDNSSECの情報(Delegation Signer) |
※権威DNSサーバーとは、ゾーンの情報を保持し、他のサーバーに問い合わせることなく応答を返すことができるサーバー。持ち主ですね。
レコードの記載例
レコード種別 | 記述例 | 説明 |
---|---|---|
A | www.example.com. IN A 192.0.2.1 | www.example.com のIPv4アドレス指定 |
AAAA | www.example.com. IN AAAA 2001:db8::1 | IPv6アドレス指定 |
CNAME | mail.example.com. IN CNAME www.example.com. | mail.example.com を www.example.com の別名に設定 |
MX | example.com. IN MX 10 mail.example.com. | ドメインexample.comに来たメールは mail.example.com に配送(優先度10) |
NS | example.com. IN NS ns1.example.net. | ドメインexample.comの権威DNSサーバーを指定 |
SOA | example.com. IN SOA ns1.example.com. admin.example.com. (2025051401 3600 600 604800 86400) | ゾーンの開始レコード。管理者メールは @ を . に変える(admin@example.com) |
PTR | 1.2.0.192.in-addr.arpa. IN PTR www.example.com. | 192.0.2.1 の逆引き。→ ホスト名 www.example.com |
TXT | example.com. IN TXT “v=spf1 ip4:192.0.2.0/24 -all” | SPF情報。192.0.2.0/24 だけが送信許可される |
SRV | _sip._tcp.example.com. IN SRV 10 60 5060 sipserver.example.com. | SIPサービスのTCP接続先を定義(優先度10、重み60、ポート5060) |
SPF (TXTと同様) | example.com. IN SPF “v=spf1 include:_spf.example.net ~all” | 古い書き方。今はTXTを使うのが主流 |
NAPTR | example.com. IN NAPTR 100 10 “U” “E2U+sip” “!^.*$!sip:info@example.com!” . | VoIPやENUMで使用される書き方 |
DNSKEY | example.com. IN DNSKEY 257 3 8 AwEAAZLJgQ== | DNSSECの公開鍵(詳細は割愛) |
RRSIG | www.example.com. IN RRSIG A 8 3 3600 20250514000000 20250414000000 12345 example.com. AwEAAbCd== | DNSSEC署名情報 |
DS | example.com. IN DS 12345 8 2 abcd1234abcd… | DNSSECの親ゾーンに登録するための署名情報 |
IN
はクラス(Internetの略)→ 常に使われるので省略されることもある
MX
や SRV
には 優先度 が付く(数字が小さい方が優先される)
PTR
は逆引きなので、IPアドレスを 逆順+in-addr.arpa 形式に変換する
SOA
のパラメータ(シリアル、リフレッシュなど)
代表的なレコードの記載例
- SOAレコードのパラメータ
example.com. IN SOA ns1.example.com. admin.example.com. (
2025051401 ; Serial
3600 ; Refresh
600 ; Retry
604800 ; Expire
86400 ; Minimum TTL
)
パラメータ | 説明 |
---|---|
Serial | ゾーン情報のバージョン番号。プライマリDNSでゾーンファイルを変更したときに増加させる。セカンダリDNSはこの番号を監視して更新を検知する。 |
Refresh | セカンダリDNSがプライマリDNSにゾーン情報の更新を問い合わせる間隔(秒単位)。 |
Retry | リフレッシュに失敗した場合、再試行するまでの待機時間(秒)。 |
Expire | セカンダリDNSがプライマリDNSと接続できない状態が続いた場合に、そのゾーン情報を無効と見なすまでの期間(秒)。 |
Minimum TTL | キャッシュDNSがゾーン内のレコードを保持する最小時間(秒)。古くは全レコードに適用されたが、現在は個別レコードにTTLが指定されるのが一般的。 |
2. SPF(TXT)レコードの主要パラメータ
example.com. IN TXT "v=spf1 ip4:203.0.113.0/24 include:_spf.google.com -all"
ドメインを最初に記載し、あとは次の通り。
パラメータ | 説明 |
---|---|
v=spf1 | SPFのバージョン指定。SPFレコードは必ずこのプレフィックスで始まる。 |
ip4: | このIPv4アドレスまたはネットワークからの送信を許可する。例: ip4:192.0.2.0/24 |
ip6: | このIPv6アドレスまたはネットワークからの送信を許可する。 |
include:<ドメイン> | 指定されたドメインのSPF設定を取り込む。他社のメールサービス(例:Gmail)を使うときに利用。 |
-all | 上記に一致しない送信元は拒否(Fail)。最も厳しい設定。 |
~all | 上記に一致しない送信元は「SoftFail(許容だが非推奨)」。 |
?all | 一致しない送信元は制限しない(Neutral)。検証を行わない。 |
コメント