Webサイトを公開したり、サーバーを運用したりする際に必ず関わってくるのが「Aレコード」です。
DNSの設定を行う場面では最も基本的なレコードタイプであり、仕組みを理解しておくことはサーバー管理の第一歩といえます。
この記事では、DNSのAレコードの意味・役割・設定方法について、IPアドレスやドメイン・名前解決といったキーワードを交えながらわかりやすく解説していきます。
DNSの基礎を固めたい方にも、実務でAレコードを扱う方にも参考になる内容です。
AレコードとはドメインをIPv4アドレスに対応付けるDNSレコードのこと
それではまず、AレコードのAの意味と基本的な役割について解説していきます。
Aレコードの「A」は「Address(アドレス)」の頭文字であり、ドメイン名をIPv4アドレスに対応付けるDNSレコードのことを指します。
たとえば「example.com」というドメインに「203.0.113.1」というIPv4アドレスを紐付けるのがAレコードの役割です。
ユーザーがブラウザにドメインを入力したとき、DNSはAレコードを参照してIPアドレスを返し、目的のサーバーへ接続を導きます。
AレコードはDNSレコードの中で最も基本的かつ重要なレコードです。
WebサーバーへのアクセスやメールサーバーのIP解決など、インターネット上のあらゆる通信の出発点となります。
AレコードとAAAAレコードの違い
Aレコードと似たものに「AAAAレコード」があります。
AレコードはIPv4アドレス(32ビット)に対応し、AAAAレコードはIPv6アドレス(128ビット)に対応しています。
| レコード種別 | 対応するIPバージョン | アドレス例 |
|---|---|---|
| Aレコード | IPv4 | 203.0.113.1 |
| AAAAレコード | IPv6 | 2001:0db8::1 |
現在のインターネット環境ではIPv4とIPv6が共存しており、多くのドメインが両方のレコードを設定しています。
IPv4アドレスの枯渇問題からIPv6移行が加速しているため、AAAAレコードの重要性も高まっています。
Aレコードが使われる主な場面
Aレコードは、インターネット上のさまざまな場面で使われています。
代表的な用途としては、WebサーバーへのHTTP・HTTPSアクセス、メールサーバーのホスト名解決、FTPサーバーへの接続、VPNサーバーやゲームサーバーへのアクセスなどが挙げられます。
つまり、ドメイン名からサーバーのIPアドレスを特定する必要があるすべての場面でAレコードが活躍しています。
Webサイトの公開やサービスの運用において、Aレコードの設定は避けて通れないでしょう。
複数のAレコードを設定することの意味
1つのドメインに対して複数のAレコードを設定することも可能です。
これにより、複数のIPアドレス(サーバー)にアクセスを分散させる「DNSラウンドロビン」が実現できます。
DNSラウンドロビンは、負荷分散やサーバー冗長化の簡易的な手法として広く使われています。
ただし、障害検知の機能は持たないため、本格的な負荷分散にはロードバランサーとの併用が推奨されるでしょう。
Aレコードの名前解決の仕組み
続いては、Aレコードを使った名前解決がどのように行われるかを確認していきます。
具体的な流れを把握することで、DNS全体の仕組みへの理解が深まります。
名前解決のステップ
ユーザーがブラウザにドメインを入力してからWebページが表示されるまでの名前解決の流れは、以下のとおりです。
①ユーザーがブラウザに「example.com」を入力する
②スタブリゾルバがキャッシュDNSサーバーに問い合わせる
③キャッシュがなければ、ルートDNSサーバー→TLDサーバー→権威DNSサーバーへと順に問い合わせる
④権威DNSサーバーがAレコードを参照し、対応するIPv4アドレスを返す
⑤ブラウザが取得したIPアドレスにHTTPリクエストを送信する
このプロセス全体がわずか数百ミリ秒以内に完了するのが、DNSの優れた設計によるものです。
TTLとAレコードの関係
Aレコードには必ずTTL(Time To Live)という値が設定されています。
TTLはキャッシュの保持期間を秒単位で指定するもので、この時間が過ぎると再度DNSへの問い合わせが発生します。
TTLを短く設定するとIPアドレス変更が素早く反映されますが、DNSサーバーへの問い合わせ頻度が増加します。
逆にTTLを長く設定すると負荷は下がりますが、変更の反映に時間がかかるため、用途に応じた適切な値の設定が重要でしょう。
Aレコードとリバース引き(PTRレコード)の関係
Aレコードが「ドメイン名→IPアドレス」の変換を行うのに対し、PTRレコードは「IPアドレス→ドメイン名」の逆引き解決を担います。
メールサーバーでは、送信元IPアドレスからドメイン名を逆引きして正当性を確認する場面があるため、PTRレコードの設定がスパム判定に影響することがあります。
AレコードとPTRレコードは対になる存在として、サーバー運用では両方を意識することが大切です。
Aレコードの設定方法と注意点
続いては、実際にAレコードを設定する方法と、設定時に気をつけるべきポイントを確認していきます。
Aレコードの基本的な設定項目
Aレコードを設定する際には、主に以下の項目を指定します。
| 設定項目 | 内容 | 例 |
|---|---|---|
| ホスト名(名前) | 対象のドメインまたはサブドメイン | example.com / www |
| レコードタイプ | Aレコードを選択 | A |
| 値(IPアドレス) | 対応付けるIPv4アドレス | 203.0.113.1 |
| TTL | キャッシュの保持期間(秒) | 3600(1時間) |
ドメインレジストラやDNSホスティングサービスの管理画面から、これらの項目を入力して設定します。
設定変更時の反映時間(DNS浸透)
Aレコードを変更した場合、変更内容がインターネット全体に反映されるまでには時間がかかります。
この反映過程を「DNS浸透(DNSプロパゲーション)」と呼び、TTLの設定値や各キャッシュDNSサーバーの状況によって、数分から最大72時間程度かかる場合があります。
IPアドレス変更の前にTTLを短縮しておくと、変更後の反映を早めることができるためおすすめの手順です。
Aレコード設定時のよくあるミス
Aレコードの設定でよく起こるミスとして、IPアドレスの入力間違い・TTLの設定忘れ・ワイルドカード設定との競合などが挙げられます。
また、サブドメイン(wwwなど)と親ドメインのAレコードをそれぞれ正しく設定していないと、一方のURLでしかアクセスできないという問題が発生します。
設定後はnslookupコマンドやdigコマンドを使って、意図したIPアドレスに解決されているかを必ず確認しましょう。
確認コマンド例(Windowsの場合)
nslookup example.com
確認コマンド例(Mac・Linuxの場合)
dig example.com A
まとめ
この記事では、DNSのAレコードの意味・名前解決の仕組み・設定方法と注意点について解説しました。
AレコードはドメインとIPv4アドレスを紐付けるDNSの基本レコードであり、Webサイトの公開からサーバー運用まで幅広い場面で欠かせない存在です。
TTLの適切な設定やDNS浸透の仕組みを理解しておくことで、サーバー移行やIPアドレス変更時のトラブルを防ぎやすくなります。
Aレコードへの理解はDNS全体の理解につながるため、ネットワーク管理やサーバー運用に携わる方はぜひ本記事を参考にしてみてください。