DNS nameserver の種類と設定:1.1.1.1・8.8.8.8 などパブリックDNS一覧

スポンサーリンク

DNS nameserver の種類と設定:1.1.1.1・8.8.8.8 などパブリックDNS一覧

DNS(Domain Name System)はドメイン名を IP アドレスに変換する仕組みです。どの DNS サーバーを使うかは /etc/resolv.conf で確認・設定できます。


/etc/resolv.conf の見方

cat /etc/resolv.conf
nameserver 1.1.1.1
nameserver 8.8.8.8
search local
設定 説明
nameserver 使用する DNS サーバーの IP アドレス。複数行書けば上から順に試される
search ホスト名だけで検索したときに補完されるドメイン

nameserver に現れる特殊なアドレス

アドレス 意味
0.0.0.0 未設定・無効な状態。名前解決できない
127.0.0.53 systemd-resolved(Linux)がローカルで受け取るアドレス
127.0.0.1 ローカルホスト。Pi-hole など自前の DNS を動かしている場合
192.168.x.x ルーターの DNS(ホームネットワークでよく見られる)

nameserver 0.0.0.0 が設定されている場合は DNS が正しく設定されていない状態です。Colima や Docker の環境でネットワーク設定が崩れたときに現れることがあります。


主要パブリック DNS 一覧

提供元 プライマリ セカンダリ 特徴
Cloudflare 1.1.1.1 1.0.0.1 高速・プライバシー重視。応答速度が世界最速クラス
Google 8.8.8.8 8.8.4.4 安定性が高く最も広く使われている
Quad9 9.9.9.9 149.112.112.112 悪意あるドメインをブロックするセキュリティ機能あり
OpenDNS 208.67.222.222 208.67.220.220 フィルタリング機能あり。Cisco 傘下

開発環境では 1.1.1.1(Cloudflare)か 8.8.8.8(Google)を指定することが多いです。


dig で特定の DNS サーバーを使って確認する

@ でクエリ先の DNS サーバーを指定できます。

# Cloudflare の DNS で example.com を引く
dig @1.1.1.1 example.com

# Google の DNS で引く
dig @8.8.8.8 example.com

# 現在の nameserver 設定で引く(デフォルト)
dig example.com

DNS を変更したあと、意図した DNS サーバーで正しく解決できるかを確認するときに使います。


macOS で DNS を一時的に変更する

# /etc/resolv.conf を直接編集(再起動で元に戻る場合がある)
sudo sh -c 'echo "nameserver 1.1.1.1" > /etc/resolv.conf'

macOS では「システム設定 → ネットワーク → DNS」から変更するのが確実です。


まとめ

目的 使う DNS
速度重視 1.1.1.1(Cloudflare)
安定性重視 8.8.8.8(Google)
セキュリティ重視 9.9.9.9(Quad9)
DNS 未設定の状態 0.0.0.0(名前解決不可)

DNS の動作確認コマンドについては「dig・nslookup入門:DNS名前解決とレコード確認コマンド」も参照してください。