IP 地址 168.63.129.16 是什么?

IP 地址 168.63.129.16 是虚拟公共 IP 地址,用于简化 Azure 平台资源的通信通道。 客户可以在 Azure 中为其专有虚拟网络定义任何地址空间。 因此,Azure 平台资源必须显示为一个唯一的公共 IP 地址。 此虚拟公共 IP 地址有助于执行以下操作:

  • 使 VM 代理能够与 Azure 平台通信,以表明它处于“就绪”状态。

  • 启用与 DNS 虚拟服务器的通信,以便为没有自定义 DNS 服务器的资源(如 VM)提供筛选的名称解析。 此筛选确保客户只能解析其自己资源的主机名。

  • 启用来自 Azure 负载均衡器的运行状况探测,以确定 VM 的运行状况状态。

  • 使 VM 能够从 Azure 中的 DHCP 服务获取动态 IP 地址。

  • 为 PaaS 角色启用来宾代理检测信号消息。

注意

在非虚拟网络场景(经典)中,使用专用 IP 地址而不是 168.63.129.16。 此专用 IP 地址是通过 DHCP 动态发现的。 特定于 168.63.129.16 的防火墙规则需根据需要进行调整。

IP 地址 168.63.129.16 的作用域

公共 IP 地址 168.63.129.16 用于所有区域和所有国家云。 Azure 拥有此特殊的公共 IP 地址,它不会更改。 建议在任何本地(在 VM 中)防火墙策略(出站方向)中都允许此 IP 地址。 此特殊 IP 地址和资源之间的通信是安全的,因为只有内部 Azure 平台才能从此 IP 地址获得消息。 如果阻止此地址,可能会在各种场景中出现意外行为。 168.63.129.16 是主机节点的虚拟 IP,因此不受用户定义的路由的限制。

  • VM 代理需要通过端口 80/tcp 和 32526/tcp 与 WireServer (168.63.129.16) 进行出站通信。 这些端口应在 VM 上的本地防火墙中打开。 在这些端口上进行的与 168.63.129.16 的通信不受配置的网络安全组的限制。 流量必须始终来自 VM 的主网络接口。

  • 168.63.129.16 可向 VM 提供 DNS 服务。 如果不需要 168.63.129.16 提供的 DNS 服务,则可在 VM 上的本地防火墙中阻止到 168.63.129.16 端口 53/udp 和 53/tcp 的出站流量。

    默认情况下,DNS 通信不受配置的网络安全组的限制,除非使用 AzurePlatformDNS 服务标记作为目标。 若要阻止通过 NSG 到 Azure DNS 的 DNS 流量,请创建一个出站规则来拒绝到 AzurePlatformDNS 的流量。 将“”指定为“任意”,将“目标端口范围”指定为“*”,将协议指定为“任意”,将操作指定为“拒绝”。

    此外,IP 地址 168.63.129.16 不支持反向 DNS 查找。 这意味着,如果在 168.63.129.16 上尝试使用反向查找命令(如 hostnslookupdig -x)检索完全限定域名 (FQDN),则不会收到任何 FQDN。

  • 如果 VM 是负载均衡器后端池的一部分,则应允许运行状况探测通信来自 168.63.129.16。 默认网络安全组配置有允许此通信的规则。 此规则使用 AzureLoadBalancer 服务标记。 如果需要,可以通过配置网络安全组来阻止此流量。 块的配置会导致探测失败。

排查连接问题

注意

运行以下测试时,必须以管理员 (Windows) 和 Root (Linux) 身份运行该操作,以确保结果准确。

Windows OS

你可以在 PowerShell 中使用以下测试来测试与 168.63.129.16 之间的通信。

Test-NetConnection -ComputerName 168.63.129.16 -Port 80
Test-NetConnection -ComputerName 168.63.129.16 -Port 32526
Invoke-RestMethod -Headers @{"Metadata"="true"} -Method GET -Uri http://168.63.129.16/?comp=versions

返回的结果应如下所示。

Test-NetConnection -ComputerName 168.63.129.16 -Port 80
ComputerName     : 168.63.129.16
RemoteAddress    : 168.63.129.16
RemotePort       : 80
InterfaceAlias   : Ethernet
SourceAddress    : 10.0.0.4
TcpTestSucceeded : True
Test-NetConnection -ComputerName 168.63.129.16 -Port 32526
ComputerName     : 168.63.129.16
RemoteAddress    : 168.63.129.16
RemotePort       : 32526
InterfaceAlias   : Ethernet
SourceAddress    : 10.0.0.4
TcpTestSucceeded : True
Invoke-RestMethod -Headers @{"Metadata"="true"} -Method GET -Uri http://168.63.129.16/?comp=versions
xml                            Versions
---                            --------
version="1.0" encoding="utf-8" Versions

你还可以使用 telnetpsping 测试与 168.63.129.16 之间的通信。

如果成功,telnet 应建立连接且创建的文件将为空。

telnet 168.63.129.16 80 >> C:\<<EDIT-DIRECTORY>>\168-63-129-16_test-port80.txt
telnet 168.63.129.16 32526 >> C:\<<EDIT-DIRECTORY>>\168-63-129-16_test--port32526.txt
Psping 168.63.129.16:80 >> C:\<<EDIT-DIRECTORY>>\168-63-129-16_test--port80.txt
Psping 168.63.129.16:32526 >> C:\<<EDIT-DIRECTORY>>\168-63-129-16_test-port32526.txt

Linux OS

在 Linux 上,你可以使用以下测试来测试与 168.63.129.16 之间的通信。

echo "Testing 80 168.63.129.16 Port 80" > 168-63-129-16_test.txt
traceroute -T -p 80 168.63.129.16 >> 168-63-129-16_test.txt
echo "Testing 80 168.63.129.16 Port 32526" >> 168-63-129-16_test.txt
traceroute -T -p 32526 168.63.129.16 >> 168-63-129-16_test.txt
echo "Test 168.63.129.16 Versions"  >> 168-63-129-16_test.txt
curl http://168.63.129.16/?comp=versions >> 168-63-129-16_test.txt

168-63-129-16_test.txt 中返回的结果应如下所示。

traceroute -T -p 80 168.63.129.16
traceroute to 168.63.129.16 (168.63.129.16), 30 hops max, 60 byte packets
1  168.63.129.16 (168.63.129.16)  0.974 ms  1.085 ms  1.078 ms

traceroute -T -p 32526 168.63.129.16
traceroute to 168.63.129.16 (168.63.129.16), 30 hops max, 60 byte packets
1  168.63.129.16 (168.63.129.16)  0.883 ms  1.004 ms  1.010 ms

curl http://168.63.129.16/?comp=versions
<?xml version="1.0" encoding="utf-8"?>
<Versions>
<Preferred>
<Version>2015-04-05</Version>
</Preferred>
<Supported>
<Version>2015-04-05</Version>
<Version>2012-11-30</Version>
<Version>2012-09-15</Version>
<Version>2012-05-15</Version>
<Version>2011-12-31</Version>
<Version>2011-10-15</Version>
<Version>2011-08-31</Version>
<Version>2011-04-07</Version>
<Version>2010-12-15</Version>
<Version>2010-28-10</Version>
</Supported>

后续步骤