--- title: "DNS伝播とTTLとは|設定変更が反映されるまでの仕組みと時間を短縮する方法" description: "DNS設定を変更してもすぐに反映されない理由と、TTL(Time To Live)の仕組みを解説します。サーバー移行・ドメイン移管・メール設定変更時の反映時間の目安と、切り替えを素早く行うための準備方法をまとめました。" date: 2026-07-04 category: DNS・ドメイン tags: [DNS, TTL] related_tools: [dns] draft: false --- DNSレコードを変更しても、世界中のユーザーにすぐ反映されるわけではありません。「変更したのにまだ古いサイトが表示される」「自分には新しいサイトが見えているが他の人には見えない」——これがDNS伝播の問題です。 ## なぜDNS変更はすぐ反映されないのか インターネット上にはDNSサーバーが無数に存在します。あなたのサイトのDNS情報は、全世界のDNSサーバーに順番にキャッシュ(一時保存)されています。 あなたがDNSを変更しても、すでにキャッシュしているDNSサーバーは一定時間古い情報を使い続けます。**このキャッシュが全世界で更新されるまでの期間がDNS伝播(DNS propagation)** と呼ばれます。 ``` あなたのドメイン ↓ 権威DNSサーバー(あなたが設定を変更するサーバー) ↓ 伝播 世界中のリゾルバ(ISPや企業のDNSサーバー) ↓ キャッシュ 各ユーザーのPC・スマートフォン ``` 途中のキャッシュ(リゾルバ)が古い情報をTTLの時間だけ保持するため、同じ時刻でも「新しいサイトが見えるユーザー」と「古いサイトが見えるユーザー」が混在する期間が生じます。 ## TTL(Time To Live)とは **TTL** は「このDNSレコードを何秒間キャッシュしてよいか」を指定する数値です。単位は秒です。 | TTL値 | 意味 | 伝播の速さ | |---|---|---| | 300 | 5分 | 速い(変更後5分で反映) | | 3600 | 1時間 | 普通 | | 86400 | 24時間 | 遅い | | 604800 | 7日間 | 非常に遅い | **設定例**: ``` example.com. 300 IN A 203.0.113.1 ^^^ TTL(秒) ``` TTLが86400(24時間)に設定されている場合、変更前にキャッシュしたDNSサーバーは最大24時間古い情報を返し続けます。 ## 一般的な反映時間の目安 「最大48時間」と言われますが、実際は以下の要因によって変わります。 | 条件 | 反映時間 | |---|---| | TTLが短い(300〜600秒) | 変更後5〜10分 | | TTLが標準(3600秒) | 変更後1〜数時間 | | TTLが長い(86400秒)| 変更後最大24〜48時間 | | ネームサーバー自体を変更した場合 | 最大48〜72時間(追加でNS伝播が発生) | ネームサーバー(NS)を変更する場合は、さらに時間がかかります。NSレコード自体もキャッシュされているためです。 ## TTLを事前に短くして伝播を速める サーバー移行やDNS切り替えを計画している場合は、**作業の24〜48時間前にTTLを短くしておく**ことで、切り替え後の伝播時間を大幅に短縮できます。 **手順**: ``` 作業の24〜48時間前: 現在のTTLを確認(例:86400) TTLを300〜600に変更 → 24〜48時間後(現在のキャッシュが期限切れになってから): DNSレコード(Aレコードなど)を変更 伝播は5〜10分で完了 → 切り替え安定後(1〜2日後): TTLを元の値(3600〜86400)に戻す ``` **注意点**:TTLを短くするだけでは何も変わりません。TTLが短い状態で既存キャッシュが期限切れになってから実際のレコード変更を行う必要があります。 ## 現在の伝播状況を確認する方法 ### コマンドラインで確認 ```bash # Aレコードを確認 nslookup yourdomain.com 8.8.8.8 # Google DNSで問い合わせ nslookup yourdomain.com 1.1.1.1 # Cloudflare DNSで問い合わせ # TTLを確認 dig yourdomain.com A +ttl ``` 異なるDNSサーバーに問い合わせることで、伝播が進んでいるか(返ってくるIPアドレスが変わっているか)を確認できます。 ### オンラインツールで確認 「DNS Propagation Checker」などのサービスを使うと、世界各地のDNSサーバーで現在どのIPアドレスが返っているかを一覧確認できます。 DNSレコード確認ツールでドメインを入力すると現在の設定値も確認できます。 ## よくある混乱と対処法 ### 「自分には見えるが他の人には見えない」 自分のPCがすでに新しいIPをキャッシュしているが、他のユーザーのISPはまだ古いキャッシュを持っている状態です。これはDNS伝播の途中段階であり、時間が経てば解消します。 ### 「変更したはずなのに古いIPが返ってくる」 自分のPCやルーターが古いキャッシュを持っている可能性があります。 ```bash # Windowsでのキャッシュクリア ipconfig /flushdns # MacのDNSキャッシュクリア sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder ``` ### ネームサーバー変更後になぜか繋がらなくなった ネームサーバーを変更した後、新しいネームサーバーにAレコードやMXレコードが設定されていないケースです。ネームサーバー変更前に、新しいDNSサーバーに全レコードをコピーしておく必要があります。