由于防火墙的限制,我处理的服务器不会回复ping,而是提供IP地址
例如,如果我这样做:
ping myhost.com
我得到了
Pinging myhost.com [192.1.1.1] with 32 bytes of data:
Request Timed Out.
如何从PowerShell获取服务器的IP?我知道如果服务器响应ping(Test-Connection或Ping-Host),它可以通过各种方式完成,但是当它忽略ping请求时我无法识别它
答案 0 :(得分:4)
您可以使用System.Net.Dns.GetHostAddresses方法。 此方法将返回System.Net.IPAddress个对象的数组。
用法示例:
$ipAddresses = [System.Net.Dns]::GetHostAddresses('google.com')
列出所有地址:
$ipAddresses | %{$_.IPAddressToString}
抓住数组中的第一个地址:
$ipAddresses[0].IPAddressToString
答案 1 :(得分:1)
您可以尝试通过DNS解决它:
[System.Net.Dns]::GetHostByName('google.com').AddressList