WindowsでPowerShellを使って「dig」コマンドのようなDNSクエリを行う方法

パソコンパソコン・スマホ教室
スポンサーリンク

パソコンを使っていると、「ウェブサイトが開かない」「メールが届かない」といったトラブルに遭遇することがあります。そんなとき、DNS(ドメインネームシステム)に関する情報を調べることで、問題の原因を特定できることがあります。今回は、Windows環境でPowerShellを使って、LinuxやmacOSでおなじみの「dig」コマンドと同様のDNSクエリを行う方法をご紹介します。

スポンサーリンク

PowerShellの「Resolve-DnsName」コマンドレットとは?

Windowsのイメージ

Windowsのイメージ

PowerShellには「Resolve-DnsName」というコマンドレットがあり、これはLinuxやmacOSで使われる「dig」コマンドと似た機能を持っています。具体的には、ウェブサイトのIPアドレスを調べたり、メールサーバーの情報を確認したりすることができます。

例えば、ウェブサイト「google.com」のIPアドレスを調べるには、以下のように入力します。

Resolve-DnsName -Name google.com

これで、google.comに関連するDNS情報が表示されます。

主なDNSレコードの種類とその確認方法

DNSにはさまざまなレコードタイプがあり、それぞれ異なる情報を提供します。以下に代表的なレコードとその確認方法を示します。

ここがポイント!

  • Aレコード: ドメイン名に対応するIPv4アドレスを取得します。
  • AAAAレコード: ドメイン名に対応するIPv6アドレスを取得します。
  • MXレコード: メールサーバーの情報を取得します。
  • NSレコード: ドメイン名を管理するネームサーバーの情報を取得します。
  • TXTレコード: ドメインに関連するテキスト情報を取得します。

これらのレコードを確認するには、以下のように「-Type」オプションを使用します。

Resolve-DnsName -Name google.com -Type A

このコマンドで、google.comのAレコード(IPv4アドレス)が表示されます。同様に、他のレコードタイプも確認できます。

特定のDNSサーバーを指定してクエリを実行する方法

通常、DNSクエリは自分のコンピュータが設定しているDNSサーバーを通じて行われます。しかし、特定のDNSサーバーを指定してクエリを実行したい場合もあります。例えば、GoogleのパブリックDNS(8.8.8.8)を使用するには、以下のように入力します。

Resolve-DnsName -Name google.com -Server 8.8.8.8

これで、指定したDNSサーバーを通じてgoogle.comの情報が取得できます。

PowerShellスクリプトで複数のドメインのDNS情報を一括取得する方法

複数のドメインのDNS情報を一度に取得したい場合、PowerShellのスクリプトを使用すると便利です。以下は、複数のドメインのAレコードを取得し、結果をCSVファイルに保存するスクリプトの例です。


$domains = @('google.com', 'yahoo.com', 'microsoft.com')
$results = @()

foreach ($domain in $domains) {
$result = Resolve-DnsName -Name $domain -Type A
$results += @{
Domain = $domain
IPAddress = $result.IPAddress
}
}

$results | Export-Csv -Path 'dns_records.csv' -NoTypeInformation

このスクリプトを実行すると、指定したドメインのAレコードが「dns\_records.csv」というファイルに保存されます。

今すぐ解決したい!どうしたらいい?

LINE公式

いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」

あなたはこんな経験はありませんか?

✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦

平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。

LINEでメッセージを送れば即時解決!

すでに多くの方が私の公式LINEからお悩みを解決しています。

最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。

誰でも無料で使えますので、安心して使えます。

問題は先のばしにするほど深刻化します。

小さなエラーがデータ消失重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。

あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。

相談しに行く

ぜひ、あなたの悩みを私に解決させてください。

まとめ

Windows環境でも、PowerShellの「Resolve-DnsName」コマンドレットを使用することで、LinuxやmacOSでおなじみの「dig」コマンドと同様のDNSクエリを行うことができます。これにより、ウェブサイトのアクセス障害やメールの不具合など、ネットワークに関する問題の診断が容易になります。

他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。

コメント

タイトルとURLをコピーしました