macOS で DNS サーバを変更する方法


macOS で使用する DNS サーバを System Preferences と Terminal から変更する方法を紹介します.

そもそも DNS サーバとはプライマリ DNS サーバとセカンダリ DNS サーバの 2 つから成ります.

なので DNS サーバを変更する時は, その 2 つの DNS サーバを変更する必要があります.

今回は Wi-Fi の DNS サーバを変更したいと思います.

macOS のバージョンは 10.13.5 でコードネームは High Sierra になります.

System Preferences から変更する

まず System Preferences を開いて, Network をクリックします.

すると左側の欄に Wi-Fi を使われている方だったら, 既に Wi-Fi が選択されていると思いますので, その状態のままにします.

そしたら左下のロックのアイコンをクリックして, 現在のユーザのパスワードを入力してアンロックします.

そしたら Advanced... > DNS とクリックします.

次のような画面になります:

Dns

DNS サーバを設定する

僕は DNS サーバをルータの管理ページで, Google Public DNS として, プライマリを 8.8.8.8, セカンダリを 8.8.4.4 と設定しているのでこのように既に表示されています.

なので, System Preferences > Network > DNS で既に設定してあるということではありませんので, まずプライマリを設定するために + を押します:

Plus button click

そして今回は例として Google Public DNS の 8.8.8.88.8.4.4 を設定したいと思いますので, まず 8.8.8.8 と入力します:

Input primary

そして Enter を押して確定させます:

Confirmation of inputting primary

同じ要領で 8.8.4.4 も設定します:

Confirmation of inputting secondary

こんな感じで DNS サーバを設定できます.

設定し終えたら OK をクリックして, Network の Apply をクリックして適用させます.

これで DNS サーバの設定を反映できます.

DNS サーバを削除する

設定した DNS サーバを削除する場合は, まず DNS サーバを選択してから:

Selecting primary

- を押すと, その DNS サーバを削除できます.

Deleting primary

同じ要領で, 残った DNS サーバも削除できます:

Deleting secondary

ただ僕の場合は, 元から 8.8.8.88.8.4.4 がルータで設定されているので, 削除されたのかどうかわかりにくいですが, プライマリもしくはセカンダリの DNS サーバをクリックして選択しようとしても選択できないので, DNS サーバが削除されたとわかります.

削除したら同じように OK をクリックして, Network の Apply をクリックして適用させます.

もう Network の設定をこれ以上変更しないということであれば, セキュリティのために Network の左下のアンロックされたアイコンを再度クリックしてロックさせます.

Terminal から変更する

今度は少しアドバンスな Terminal から変更する方法を紹介します.

同じように Wi-Fi の DNS サーバを変更したいと思います.

DNS サーバを確認する

まず次のコマンドで DNS サーバがすでに設定されているかどうか確認できます:

networksetup -getdnsservers Wi-Fi

すると次のように表示されます:

There aren't any DNS Servers set on Wi-Fi.

このように DNS サーバは設定されていないと確認できます.

DNS サーバを設定する

例として Google Public DNS を設定してみたいと思いますので, プライマリを 8.8.8.8, セカンダリを 8.8.4.4 とします.

なので次のように入力するとその Google Public DNS を設定できます:

networksetup -setdnsservers Wi-Fi 8.8.8.8 8.8.4.4

先ほどのコマンドで DNS サーバが設定されているかどうか確認すると:

networksetup -getdnsservers Wi-Fi

次のように表示されます:

8.8.8.8
8.8.4.4

このように Google Public DNS が設定されていると確認できます.

DNS サーバを削除する

設定してある DNS サーバは次のコマンドで削除できます:

networksetup -setdnsservers Wi-Fi empty

次のコマンドで確認すると:

networksetup -getdnsservers Wi-Fi

次のように表示されるので, DNS サーバが削除されたと確認できます:

There aren't any DNS Servers set on Wi-Fi.

まとめ

DNS サーバを System Preferences から変更する方法と, Terminal から変更する方法との 2 つの方法を紹介させていただきました.

DNS サーバを変更する場合, いずれの方法でも DNS サーバのアドレスが正しいかどうか注意しながら入力する必要があります.

Google Public DNS の IPv4 アドレスは 8.8.8.8, 8.8.4.4 と分かりやすいのでいいですが, IPv6 アドレスは 2001:4860:4860::8888, 2001:4860:4860::8844 と手で入力するには大変になるので, コピペが無難かと思います.

Google Public DNS に関する詳しい情報は次の URL から参照できます:

https://developers.google.com/speed/public-dns/