魔法なしのDNS:A、AAAA、CNAME、MX、TXT
DNSレコードの種類、それぞれの違い、TTLの読み方、変更がインターネットに反映されたかの確認方法を説明します。
更新日 2026年8月23日
DNSはディレクトリのようなものです。名前を渡すと、アドレスまたは別の名前を返します。DNSのエラーは「サイトが開かない」という形で現れますが、マシン自体は正常に動作しています。各レコードタイプが何を担っているかを理解しておくと、トラブルシューティングが容易になります。
主なタイプ
| タイプ | 含まれる内容 | 必要な場面 |
|---|---|---|
| A | IPv4アドレス | ウェブサイトやあらゆるサービスの基本レコード |
| AAAA | IPv6アドレス | Millida VDSマシンでは使用しません。IPv6は提供されていません |
| CNAME | 別の名前 | www → メインドメインなどのエイリアス |
| MX | メールサーバーと優先度 | ドメインのメール受信 |
| TXT | 任意のテキスト | SPF、DKIM、DMARC、所有権の確認 |
| NS | ゾーンのネームサーバー | ドメインの委任 |
最もよくつまずくルール:ドメインのルートにCNAMEを他のレコードと並べて配置することはできません。ルート(example.com)にはAのみを設定できます。CNAMEエイリアスはサブドメイン用です。
実際の設定例
example.com. A 203.0.113.10
www.example.com. CNAME example.com.
mail.example.com. A 203.0.113.10
example.com. MX 10 mail.example.com.
example.com. TXT "v=spf1 mx -all"
アドレスはコントロールパネルの「概要」(/hosting/vds/m/<id>) から取得します。紐付けの実践的な部分は、記事ドメインをマシンに紐付けるで説明しています。
TTLとキャッシュ
TTLは、レコードをキャッシュに保存できる時間を秒単位で表します。値が3600の場合、編集後もプロバイダーやブラウザーが古い応答を1時間提供し続ける可能性があります。
計画的な移行の手順:1日前にTTLを300に下げ、待機し、レコードを変更し、すべてが動作することを確認してから、以前のTTLに戻します。
確認
dig example.com A +short
dig www.example.com CNAME +short
dig example.com MX +short
dig example.com TXT +short
dig @8.8.8.8 example.com A +short
最後のコマンドは特定のパブリックリゾルバーに問い合わせるため、ローカルキャッシュを回避します。解決経路を含む全体像は次のとおりです。
dig +trace example.com
よくあるエラー
| 症状 | 原因 | 解決策 |
|---|---|---|
| どこからでもドメインが開かない | NSレコードが必要なプロバイダーを指していない | レジストラで dig example.com NS を確認する |
| 自分では動作するが、他の人では動作しない | キャッシュに古い応答が残っている | TTLの期限が切れるのを待ち、@8.8.8.8 経由で確認する |
www が開かない | サブドメインのレコードがない | ルートへのCNAMEを追加する |
| メールが届かない | MXがない、またはCNAMEを指している | MXはAレコードを持つ名前を指す必要があります |
| SPF編集後にメールが消えた | ゾーンにSPFレコードが2つある | v=spf1 の行を1つだけ残す |
レコードは一度に1つずつ変更し、
digコマンドで結果を確認してください。ゾーンをまとめて編集してから「なぜ全部落ちたのか」と悩むと、トラブルシューティングに3倍の時間がかかります。
メールを受信するには、正しい逆引きアドレスレコードも必要です。