🌍
DNSドメイン設定はどう反映されるのか?
onamae.comのようなサイトでドメインを設定すると実際に何が起こるのか
DNSはインターネットで最も基本的かつ重要なインフラです。ブラウザに「example.com」と入力すると、実際には複雑なDNS照会プロセスを経てそのサーバーのIPアドレスを見つけます。onamae.com、Cloudflare、Route 53のようなDNS管理サービスでレコードを設定すると、この情報が世界中のDNSサーバーに伝播(propagation)され、誰でもそのドメインでアクセスできるようになります。
構造ダイアグラム
DNS階層構造(ドメイン照会フロー)
👤
ユーザー(ブラウザ)
myapp.com
↓
🔍
DNS Resolver
例: 8.8.8.8(Google)
↓ ステップ1
🌐
ルートサーバー(.)
世界に13個
.comはここ →
↓ ステップ2
📂
TLDサーバー(.com)
Verisign
NS情報を返却
↓ ステップ3
🏢
権威ネームサーバー
ns1.onamae.com
A: 76.76.21.21を返却
↓
🖥️
Webサーバー(Vercel)
76.76.21.21
onamae.comで設定すると起こること
1
ドメイン購入
onamae.com → Verisign(.comレジストリ)に登録リクエスト
2
ネームサーバー(NS)設定
デフォルトNS(onamae)使用またはCloudflare/Route 53に変更
3
DNSレコード追加
A myapp.com → 76.76.21.21
CNAME www.myapp.com → cname.vercel-dns.com
CNAME www.myapp.com → cname.vercel-dns.com
4
DNS伝播(Propagation)
世界中のDNSサーバーに伝播(Aレコード: 数分〜数時間 / NS変更: 最大48時間)
# digコマンドでDNS照会確認
$ dig myapp.com +short
76.76.21.21
$ dig myapp.com
;; ANSWER SECTION:
myapp.com. 300 IN A 76.76.21.21
^^^ TTL (秒)
76.76.21.21
$ dig myapp.com
;; ANSWER SECTION:
myapp.com. 300 IN A 76.76.21.21
^^^ TTL (秒)
核心ポイント
•
DNSは「階層的委任」構造 — ルート → TLD → 権威NSの順で責任分散
•
onamae.comで設定するのは「権威ネームサーバーのレコード」を編集すること
•
TTLを下げると伝播速度↑、ただしDNSサーバー負荷↑ — 変更後に戻すこと
動作フロー
1
ユーザーがブラウザにmyapp.comと入力
2
OSがローカルDNSキャッシュを確認 → なければ設定されたDNSリゾルバ(例: 8.8.8.8)に照会
3
DNSリゾルバがルートサーバー(.)に照会 → .com TLDサーバーアドレスを取得
4
.com TLDサーバーに照会 → myapp.comの権威ネームサーバー(NS)アドレスを取得
5
権威ネームサーバー(例: ns1.onamae.com)に照会 → Aレコード(IPアドレス)を取得
6
DNSリゾルバが結果をTTL時間分キャッシュしてブラウザにIPを返却
7
ブラウザが該当IP(例: 76.76.21.21)にHTTP/HTTPS接続
メリット
- ✓ 世界中どこからでもドメイン名でアクセス可能
- ✓ IPアドレス変更時にDNSレコードのみ修正すればOK(サービス無中断)
- ✓ CNAMEで柔軟なトラフィックルーティングが可能
- ✓ TXTレコードでドメイン所有権証明、SPF/DKIM設定が可能
デメリット
- ✗ DNS伝播に最大48時間所要(特にNS変更時)
- ✗ TTLキャッシュにより即時反映不可
- ✗ DNSスプーフィング/キャッシュポイズニング攻撃の可能性(DNSSEC未適用時)
- ✗ レジストラ障害時にドメイン設定変更不可
ユースケース
カスタムドメイン接続(Vercel、Netlify、Herokuなど)
メールサーバー設定(Google Workspace、Microsoft 365)
CDN接続(Cloudflare、AWS CloudFront)
SSL証明書ドメイン認証(DNS-01チャレンジ)
サブドメイン分離(api.myapp.com、blog.myapp.com)