vcs*_*nes 53
如果您想获取IP地址以便可以使用该地址,则可以执行以下操作:
$ips = [System.Net.Dns]::GetHostAddresses("yourhosthere")
Run Code Online (Sandbox Code Playgroud)
您可以像这样迭代它们:
[System.Net.Dns]::GetHostAddresses("yourhosthere") | foreach {echo $_.IPAddressToString }
Run Code Online (Sandbox Code Playgroud)
服务器可能有多个IP,因此这将返回一个IP数组.
小智 21
这很简单,并获得所有节点.
$ip = Resolve-DNSName google.com
$ip
Run Code Online (Sandbox Code Playgroud)
也尝试输入IP而不是域名,并检查这些结果!
小智 9
使用Resolve-DnsName cmdlet.
Resolve-DnsName computername | FT Name, IPAddress -HideTableHeaders | Out-File -Append c:\filename.txt
Run Code Online (Sandbox Code Playgroud)
PS C:\> Resolve-DnsName stackoverflow.com
Name Type TTL Section IPAddress
---- ---- --- ------- ---------
stackoverflow.com A 130 Answer 151.101.65.69
stackoverflow.com A 130 Answer 151.101.129.69
stackoverflow.com A 130 Answer 151.101.193.69
stackoverflow.com A 130 Answer 151.101.1.69
PS C:\> Resolve-DnsName stackoverflow.com | Format-Table Name, IPAddress -HideTableHeaders
stackoverflow.com 151.101.65.69
stackoverflow.com 151.101.1.69
stackoverflow.com 151.101.193.69
stackoverflow.com 151.101.129.69
Run Code Online (Sandbox Code Playgroud)
PS C:\> Resolve-DnsName -Type A google.com
Name Type TTL Section IPAddress
---- ---- --- ------- ---------
google.com A 16 Answer 216.58.193.78
PS C:\> Resolve-DnsName -Type AAAA google.com
Name Type TTL Section IPAddress
---- ---- --- ------- ---------
google.com AAAA 223 Answer 2607:f8b0:400e:c04::64
Run Code Online (Sandbox Code Playgroud)
我会使用vcsjones评论的解决方案,但由于在具有多个IP地址的主机名上使用他的解决方案的结果将是一个IP数组,这将导致进一步ping/tracert的问题.
我使用的解决方案如下:
$ping = New-Object System.Net.NetworkInformation.Ping
$ips = $($ping.Send("yourhosthere").Address).IPAddressToString
Run Code Online (Sandbox Code Playgroud)
这将显示单个IP字符串(在$ips变量中),从单个ICMP回复中解析,从而阻止具有多个IP的主机名的IP阵列.
| 归档时间: |
|
| 查看次数: |
92883 次 |
| 最近记录: |