我正在为TCP连接的自动化编写脚本,我有一个问题。当您致电(例如)时,是否有获取目的地IP地址的选项:
Invoke-WebRequest google.com
问题是,当我调用此命令时,目标IP地址总是不同,所以我不能使用像''test-connection''这样的命令。我想听听进一步的解释。我知道Google有多个公共地址,但为什么在我致电Invoke-WebRequest
或Test-Connection
时它们有所不同?
示例:
1。 Destination IP from wireshark capture
2。
来自Test-Connection
命令的IP地址:
google.com 172.217.18.78
问候
答案 0 :(得分:-1)
Google拥有巨大的用户群。他们希望通过多个地址可以访问,因为它提供了强大的连接和一些负载平衡。该技术称为DNS Round Robin。如果多个IP地址中的一个无法正常工作,大多数现代浏览器都会automatically try and use其他地址。
如果您想测试与特定IP的连接,可以进行名称查找并选择其中一个结果。像这样,
# Get a list of all Google IPs
$googles = [Net.Dns]::GetHostAddresses("www.google.com")
# Use IP address for the 1st entry
test-connection $googles[0].IPAddressToString