DNSレコードのリソースファイル(ゾーンファイル)は、ドメイン名とそのドメインに関連する様々なリソースレコード(RR)を定義するために使用されます。
DNSゾーンファイルサンプル
short version
$TTL 86400 ; 24 hours could be shorter
@ IN SOA ns1.example.com. admin.example.com. (
2023020501 ; serial
7200 ; refresh (2 hours)
900 ; retry (15 minutes)
1209600 ; expire (2 weeks)
86400 ; minimum (1 day)
)
; Define the nameservers
@ IN NS ns1.example.com.
@ IN NS ns2.example.com.
; Define the mail servers for example.com
@ IN MX 10 mail.example.com.
@ IN MX 20 mail2.example.com.
; Define IP address for the nameservers
ns1 IN A 192.0.2.1
ns2 IN A 192.0.2.2
; Define IP address for mail servers
mail IN A 192.0.2.3
mail2 IN A 192.0.2.4
; Define A record for example.com
@ IN A 192.0.2.5
; Define a CNAME record
www IN CNAME @
; Define additional TXT record for SPF to prevent email spoofing
@ IN TXT "v=spf1 ip4:192.0.2.5 ~all"
long version
$TTL 86400 ; 24 hours could be shorter
example.com. IN SOA ns1.example.com. admin.example.com. (
2023020501 ; serial
7200 ; refresh (2 hours)
900 ; retry (15 minutes)
1209600 ; expire (2 weeks)
86400 ; minimum (1 day)
)
; Define the nameservers
example.com. IN NS ns1.example.com.
example.com. IN NS ns2.example.com.
; Define the mail servers for example.com
example.com. IN MX 10 mail.example.com.
example.com. IN MX 20 mail2.example.com.
; Define IP address for the nameservers
ns1.example.com. IN A 192.0.2.1
ns2.example.com. IN A 192.0.2.2
; Define IP address for mail servers
mail.example.com. IN A 192.0.2.3
mail2.example.com. IN A 192.0.2.4
; Define A record for example.com
example.com. IN A 192.0.2.5
; Define a CNAME record
www.example.com. IN CNAME example.com.
; Define additional TXT record for SPF to prevent email spoofing
example.com. IN TXT "v=spf1 ip4:192.0.2.5 ~all"
解説
$TTL
: このゾーンでのデフォルトの生存時間。ここでは24時間に設定。SOAレコード
: ゾーンの権威情報。更新管理に使用される。NSレコード
: このゾーンのDNSサーバー。ここではns1.example.com
とns2.example.com
が使用されている。MXレコード
: メールの配送先サーバーとその優先順位。mail.example.com
が優先。Aレコード
: ドメイン名をIPv4アドレスに変換。DNSサーバーやメールサーバーのIPアドレスを指定。CNAMEレコード
: エイリアス(ここではwww
)を実際のドメイン(@
は現在のゾーンを指す)にマッピング。TXTレコード
: ドメインに関連するテキスト情報。例えば、SPFレコードがこれに含まれる。
DNSレコード設定一覧
SOAレコード(Start Of Authority)
「権威の開始」という意味
MNAME(ns1.example.com.) ・ゾーンファイルの基となるデータを持つDNSサーバの名前 ・プライマリのDNSサーバを指すこともある
RNAME(admin.example.com.) ・このドメインの管理者のメールアドレス(責任者のEメール) ・ DNS のサーバがこのアドレスを使うことはないが、人がゾーンの管理者と連絡を取りたい際に使う ・メールアドレスをそのまま書くのではなく、「@」記号を「.」に置き換えて記載 ・例えば、「admin@example.jp」が管理者のメールアドレスであれば、「admin.example.jp」と記載する
Aレコード(IPv4アドレス)
example.com. IN A 192.0.2.1
AAAAレコード(IPv6アドレス)
example.com. IN AAAA 2001:db8::1