PowerShell を使用してホスト名から IP アドレスを解決する

Rohan Timalsina 2023年6月20日
  1. Resolve-DnsName コマンドレットを使用して、PowerShell でホスト名から IP アドレスを解決する
  2. Dns.GetHostAddresses メソッドを使用して、PowerShell でホスト名から IP アドレスを解決する
PowerShell を使用してホスト名から IP アドレスを解決する

www.example.com などのホスト名は、インターネット上の Web サイトまたはホストを識別します。 ホスト名には IP アドレスが割り当てられます。

ホスト名またはその逆から IP アドレスを取得する必要がある場合があります。 これは、PowerShell を使用して簡単に実行できます。

このチュートリアルでは、PowerShell を使用してホスト名から IP アドレスを解決する方法、またはホスト名から IP アドレスを解決する方法を説明します。

Resolve-DnsName コマンドレットを使用して、PowerShell でホスト名から IP アドレスを解決する

Resolve-DnsName コマンドレットは、指定された名前の DNS 名前クエリ解決を実行します。

次のコマンドは、ホスト名 delftstack.com を解決します。

Resolve-DnsName delftstack.com

出力:

Name                                           Type   TTL   Section    IPAddress
----                                           ----   ---   -------    ---------
delftstack.com                                 A      60    Answer     3.6.118.31
delftstack.com                                 A      60    Answer     3.6.18.84

ご覧のとおり、IP アドレスとともに他の情報も出力されます。 IP アドレスのみを取得するには、次のコマンドを使用します。

(Resolve-DnsName delftstack.com).IPAddress

出力:

3.6.18.84
3.6.118.31

IP アドレスからホスト名を解決するには、コマンドに IP アドレスを指定します。

Resolve-DnsName 3.6.118.31

出力:

Name                           Type   TTL   Section    NameHost
----                           ----   ---   -------    --------
31.118.6.3.in-addr.arpa        PTR    300   Answer     ec2-3-6-118-31.ap-south-1.compute.amazonaws.com

Dns.GetHostAddresses メソッドを使用して、PowerShell でホスト名から IP アドレスを解決する

Dns クラスの GetHostAddresses メソッドは、指定されたホストの IP アドレスを表示します。

次の例は、ホスト delftstack.com の IP アドレスを返します。

[System.Net.Dns]::GetHostAddresses('delftstack.com')

出力:

Address            : 1410467331
AddressFamily      : InterNetwork
ScopeId            :
IsIPv6Multicast    : False
IsIPv6LinkLocal    : False
IsIPv6SiteLocal    : False
IsIPv6Teredo       : False
IsIPv4MappedToIPv6 : False
IPAddressToString  : 3.6.18.84

Address            : 527828483
AddressFamily      : InterNetwork
ScopeId            :
IsIPv6Multicast    : False
IsIPv6LinkLocal    : False
IsIPv6SiteLocal    : False
IsIPv6Teredo       : False
IsIPv4MappedToIPv6 : False
IPAddressToString  : 3.6.118.31

Address、AddressFamily、ScopeID などの追加情報が表示されます。 IP アドレスのみを出力するには、以下のコマンドを実行します。

[System.Net.Dns]::GetHostAddresses('delftstack.com').IPAddressToString

出力:

3.6.118.31
3.6.18.84

GetHostEntry メソッドは、IP アドレスからホスト名を解決します。

[System.Net.Dns]::GetHostEntry('3.6.118.31')

出力:

HostName                                        Aliases AddressList
--------                                        ------- -----------
ec2-3-6-118-31.ap-south-1.compute.amazonaws.com {}      {3.6.118.31}

このチュートリアルで、PowerShell でホスト名から IP アドレスを解決する方法、またはホスト名から IP アドレスを解決する方法を理解していただければ幸いです。

著者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website