2018-07-14

これだけは知っておきたいDNSレコードの種類

ドメインを活用するために必ず必要になるのがDNSの設定。Webサイトやメールアドレスでドメインを使用するためには、DNSレコードの設定が必須です。今回はこのDNSで設定するDNSレコードの種類をご紹介します。

DNSとは?

DNSDomain Name Systemの略称で、インターネット上の住所録のような役割を果たします。これは宛先となるIPアドレス(216.58.197.174など)に対して、わかりやすく覚えやすい名称(google.comなど)を紐付けるものです。

通常ではインターネットに接続されているコンピューターにはそれぞれIPアドレスの数字が割り当てられています。このIPアドレスを元にインターネット上での通信を行うのですが、その際に数字の代わりに文字列を使って通信の対象となるコンピューターの宛先を覚えやすくするものがDNSの仕組みです。例えばブラウザのURL欄に216.58.197.174を入力してアクセスするとGoogleのトップページが出てきますが、これをgoogle.comと入力しても同じ結果を得られるようにするのが、DNSの役割の一つです。

ここでは、このDNSを使う上で重要となるDNSレコードの種類とその例についてご紹介させていただきます。

Webサイトやメールでの使用に必要なDNSレコード

まずはWebサイトやメールでの使用に最低限必要なDNSレコードを紹介させていただきます。

A(Address)レコード

Aレコードは、ドメインのサービスをホストするサーバーのIPアドレスを指定します。

例えば、google.comのAレコードには172.217.26.14が設定されています。

AAAA(Quad A)レコード

AAAAレコードは、IPv6のIPアドレスをAレコードと同様に設定する場合に使用します。

例えば、google.comのAAAAレコードには2404:6800:4004:809::200eが設定されています。

CNAME(Canonical Name)レコード

CNAMEレコードは、wwwmailなどのサブドメイン名をホスト名のエイリアスとして指定する場合に使用します。

MX(Mail Exchange)レコード

MXレコードは、メールの送信に使用するサーバーのレコードをここで指定します。一般的にMXレコードでは複数のサーバーを優先順位を指定した上で設定します。もし最も優先順位の高いサーバーと通信ができなかった場合は、次に優先順位の高いサーバーに通信を行います。

例えばGoogleのG Suiteでメールを使用する場合は、下記のMXレコードを設定します。

優先度ホスト名
1ASPMX.L.GOOGLE.COM.
5ALT1.ASPMX.L.GOOGLE.COM.
5ALT2.ASPMX.L.GOOGLE.COM.
10ALT3.ASPMX.L.GOOGLE.COM.
10ALT4.ASPMX.L.GOOGLE.COM.

TXTレコード

TXTレコードは、DNSサーバー上にテキストの情報を設定する際に使います。例えば、Webサービスで使用する際にドメインの所有を認証したり、SPF、DKM、DMRACなどのメールのセキュリティ目的などに使用します。

DNSレコード基本情報

次に、DNSレコードの設定において必須な情報ですが、特にユーザー側で編集する機会の少ないDNSレコードについて紹介させていただきます。これらのDNSレコードは、サービスプロバイダ側でデフォルトで値が設定されることが殆どで、ここを編集する必要はあまりないかと思われますが、それぞれのDNSレコードの目的を理解しておくことで後々のトラブル対応などにも活かせる可能性があります。

SOA(Start of Authority)レコード

SOAレコードは、ドメインのゾーン情報を設定するために使用します。ここでは、ドメインのDNSサーバ名(mname)、ドメイン管理者のメールアドレス(rname)、ゾーンファイルのバージョンを表すシリアル番号(serial)、ゾーン情報の更新間隔(refresh)、refresh失敗時の再試行間隔(retry)、ゾーン情報の有効期限(expire)、TTL(minimum)の設定を行います。

NS(Name Server)レコード

NSレコードは、DNS情報を参照するサーバーを指定します。一般的には複数のNSレコードを指定します。

TTL

TTL(Time to Live)は、それぞれのDNSレコードに対してキャッシュDNSサーバーにおいてそのレコード情報を保持する期間の値を設定します。ここで指定した期間を経過したレコードについては、キャッシュDNSサーバは次にそのレコードに対する問い合わせがあった際に、DNSサーバーに対して最新の情報と問い合わせて更新します。

例えばこの値を86400に設定すると、24時間そのレコード情報を保持することとなり、新しくレコードの設定を更新した場合は、その更新内容が各キャッシュDNSサーバーに行き渡るまで最大で24時間を要することになります。

その他のDNSレコード

ここからは、メールのセキュリティや、特殊なサービスなどでドメインを使用する際に必要なレコードを紹介させていただきます。

SPF(Sender Policy Framework)

SPFは、スパマーが第三者のドメイン名を使用してスパムを送信するのを防止するために使用します。SPFを必須とするメール受信者においては、このSPFレコードが正しく設定されていないドメインから送信されたメールをスパムメールとして認識します。

SPFレコードでは、対象となるドメインを使用してメールを送信する際のメールサーバーのIPアドレスを指定します。SPFレコードは一つのドメインに対して一つのレコードのみを設定することが推奨されています。メールの受信者は、メールを受信する際にメールの送信元のDNSにSPFレコードを問い合わせ、指定されたIPアドレス以外から送られてきたメールをスパムメールとして認識し、受信を拒否することができます。

SPF参考リンク

http://www.ietf.org/rfc/rfc4408.txt

http://salt.iajapan.org/wpmu/anti_spam/admin/tech/explanation/spf/

DKIM(DomainKeys Identified Mail)

DKIMは、メールの送信におけるドメインの認証の仕組みです。このレコードを使って送られてきたドメインがドメインの所有者によって認証されたものであるかを確認することができます。スパムメールやフィッシングのメールにおいて送信者が偽装されたメールの送信を防止します。

SPFレコードではIPアドレスを使ってメール送信者の確認を行いますが、DKIMではここで電子署名を使って送信者の確認を行います。

DKIM参考リンク

http://www.dkim.org/

http://salt.iajapan.org/wpmu/anti_spam/admin/tech/explanation/dkim/

DMARC(Domain-based Message Authentication, Reporting & Conformance)

DMARCは、SPFとDKIMの両方で認証に失敗した場合に受信サーバ側でどのような処理を行うかを設定します。例えば未認証のメールに対してSPFとDKIMの両方で認証に失敗した場合、受信側で処理を決める、受信サーバで隔離する、完全に拒否するなどの設定を行います。

DMARC参考リンク

https://dmarc.org/

PTR(Pointer)レコード

PTRレコードは、IPアドレスからホスト名を参照する場合の逆引き(reverse lookup)に使用するために使用します。

SRV(Service)レコード

SRVレコードは、特定のサービスをホストしているコンピューターや、そのポート番号を指定する場合に使用します。SIPやXMPPなどのプロトコルを使用する場合には必須のレコードです。レコードの優先度や重み付けを指定することができます。

SRVレコード参考リンク

https://tools.ietf.org/html/rfc2782

DNSレコードについてのまとめ

DNSレコードの設定はとても奥が深く、この設定次第で様々な活用を行うことができます。せっかく取得されたドメインをうまく活用するためにも、DNSの設定についてはより深く理解していただくことをお勧めします。

PSI-Japanでは、DNSレコードの設定方法に関するお問い合わせも受け付けております。なお、これらのDNSレコードで実際に設定する値については、使用されるホスティング事業者やサービスプロバイダーにお問い合わせください。