MacのDNSを設定
ハマったのでメモメモ。
Macに自前のDNSを設定しようと、/etc/resolv.confにnameserverを追加してみた。
nameserver 172.16.232.131
でも一向に反映されない。digで調べても以前のDNSに問い合わせている。
ネットで調べたところ、Macのresolv.confは仮初めのもので、内部で管理している結果をはき出しているだけみたい。
で、本当に設定するには、「システム環境設定」->「ネットワーク」を開き
DNSサーバの欄に、IPアドレスをカンマ区切りで入れて「適用」を押せばOK。
えらい簡単だ♪
以下は、DNS関連のちょっとしたTips。
特定のドメインだけDNSを切り替える方法
参考:MacOS X でドメイン毎にDNSサーバを切り替える | 胡桃ヶ谷
Macの/etc/resolver以下に、DNSを変更したいドメインと同名のファイルを作成する。
(/etc/resolverディレクトリが存在しない場合は作成する)
中の書式はresolv.confと同じで、問い合わせたいDNSを指定できる。
# mkdir /etc/resolver/ # echo nameserver 192.168.1.1 > /etc/resolver/localnet.intra
この場合、localnet.intraにアクセスすると192.168.1.1のDNSに問い合わせるようになるよ。
DNSのキャッシュをクリアする
参考:試験管のなかのコード :: Mac OS X で DNS キャッシュのクリア
DNSの問い合わせ結果は内部でキャッシュされるため、変更してもすぐに反映されないことがある。
Leopard以降は、次のコマンドでキャッシュをクリアできる。
$ dscacheutil -flushcache