macOSでDNSキャッシュを削除する

いつも忘れるヤツです。 結論から言うと以下のコマンドをTerminalから実行するだけです。

$ sudo killall -HUP mDNSResponder

コマンドでクリア

Terminalから削除する

冒頭で紹介したコマンドです。Yosemite以降のmacOSはこれを実行します。

$ sudo killall -HUP mDNSResponder

Yosemiteよりも以前のmacOSの場合はコマンドが変わりますのでAppleが公開しているドキュメントを参照してください。

aliasに登録しておく

忘れないようにbashやzsh等のaliasに登録しておきます。

$ vi ~/.zshrc
alias dnsclear='sudo killall -HUP mDNSResponder'

$ source ~/.zshrc

私はzsh使っているので.zshrcを編集しましたが、bashの方は.bashrc.bash_profileなどを編集してくださいね。

クライアント側でクリア

Google Chrome

新しいウィンドウまたはタブを開き、以下のURIへアクセスします。

右側にClear host cahcheというボタンが表示されているのでこれをクリックします。

特に何の反応もないので不安になりますがこれで消えているハズです。

Safari

Safari自体にはDNSキャッシュをクリアする専用の機能は見当たりませんでした。前述のコマンドを実行して削除してやります。

参考ページ