digコマンドは便利です
DNSレコードを確認したい時、「nslookup」ではなく「dig」コマンドが使えるととても便利です。
レコード変更をする時はTTLが気になりますね。ですがnslookupでTTLを確認するのは結構面倒です。digを使えばデフォルトで出力されますので手間いらず。
他にも、コマンドの引数をスペース区切りで追加していくだけで、デフォルト以外のDNSサーバーへ問い合わせ、レコード種別の指定、回答の出力形式変更など豊富な機能を利用できるので、一度使うともう手放せないコマンドです。
Windowsでdigコマンド?
Linux環境ではパッケージをインストールすればdigが利用できますが、Windows上で使いたい場合はどうしたらいいでしょう?
Windows10以降であればWSL(Windows Subsystem for Linux)でUbuntuなどの環境を作り、そこにdigをインストールすることができます。
CygwinでLinux環境を作るのと似たやり方ですが、WSLはMicrosoft標準のパッケージだけで作れますので取っつきやすいかと思います。
また、Ubuntu仮想環境を作るので、digに限らずwhoisやcurlといったLinuxのコマンドラインツールもWindows上で利用できるようになります。
WSLのインストールは、「WSL自体のセットアップ」⇒「WSLディストリビューション(仮想OS)のイントール」の順番で行います。
まず管理者権限でPowershellを起動し、
wsl --install
とコマンドを実行してWSLをセットアップします。
Windows10のバージョン、インストール状況によっては「wsl --install」の実行が失敗する場合があります。その場合は、コントロールパネルから必要な機能を有効化できます。
- 設定アプリの「アプリと機能」から「プログラムと機能」をクリックしてコントロールパネルを開く
- 「Windowsの機能の有効化または無効化」をクリックし、「Linux 用 Windows サブシステム」と「仮想マシン プラットフォームにチェックボックスを入れて「OK」
次にWSLディストリビューションをインストールしますが、その前に「WSLデフォルトバージョンの変更」を行います。
インストール後のデフォルトは「WSL2」なのですが、現状では外部へのDNS名前解決に問題が出る場合が多く、挙動が安定している「WSL1」に切り替えます。
wsl --set-default-version 1
これで「WSL1」の仮想環境が作成されるようになります。
ここまで準備ができたら、
wsl --install -d Ubuntu
とコマンドを実行すると、Ubuntu仮想環境のインストールが始まります。
OSのインストールが終わると、Unixユーザーのユーザー名・パスワードを決めるようプロンプトが出るので、お好みの内容を設定して下さい。
これで、Windows上ですぐ起動するUbuntu環境が完成しました。
Ubuntu環境はWindowsのスタートメニューに登録されるので、そこから起動できます。
また、Windwos Terminalを使っている場合は環境情報が自動登録され、タブから起動できるようにもなります(※スタートメニューやWindwos Terminal関係の動作は、Windowsのバージョンや環境設定によって異なる場合があります)。
WSLについてはネット上に多くの情報がありますので、そちらも検索してみていただければと思います。Ubuntu以外の様々なOSもセットアップできますよ。
デフォルトインストールのWSL Ubuntuにはdigコマンドが入っていませんので、aptコマンドでソフトウェアパッケージをインストールします。
「dnsutils」というパッケージにdigコマンドが含まれていますので、
sudo apt install dnsutils
と実行するとインストールされます。sudoのパスワードには、Ubuntuインストール時に決めたパスワードを入力しましょう。
これで、WindowsPCローカルの環境でdigコマンドが使えます。
こんな時に便利
ローカル環境なので、例えば
「出張作業でノートPC1台だけ持って行くけど、いつもの作業サーバーには接続できないからLinuxが使えない……」
そんな場合でもWSLをセットアップしていれば、使い慣れたLinuxコマンド群を利用できます。dig以外にも色々便利に使えて重宝しますので、ぜひお試しください。