Azure 云服务的连接和网络问题:常见问题解答 (FAQ)

本文包含 Azure 云服务的常见连接和网络问题。 还可以参阅云服务 VM 大小页面,了解大小信息。

如果本文未解决你的 Azure 问题,请访问 MSDN 和 CSDN 上的 Azure 论坛。 你可以在这些论坛上发布你的问题。 此外,还可以通过在 Azure 支持站点上选择“获取支持”来发出 Azure 支持请求。

无法在多 VIP 云服务中保留 IP

首先,请确保已打开想要为其保留 IP 的虚拟机实例。 其次,请确保为过渡和生产部署使用保留 IP。 请勿在部署升级过程中更改设置。

设置了 NSG 时,如何使用远程桌面?

将规则添加到 NSG,允许端口 338920000 上的流量。 远程桌面使用端口 3389。 云服务实例经过负载均衡,因此无法直接控制要连接到哪个实例。 RemoteForwarder 和 RemoteAccess 代理管理 RDP 流量,允许客户端发送 RDP cookie 和指定要连接到的单个实例。 RemoteForwarderRemoteAccess 代理要求打开端口 20000(如果创建了 NSG,此端口可能已被阻止)。

是否可以 ping 云服务?

否,使用普通的 "ping"/ ICMP 协议是行不通的。 不允许通过 Azure 负载均衡器使用 ICMP 协议。

若要测试连接,我们建议执行端口 ping。 Ping.exe 使用 ICMP,而 PSPing、Nmap 和 telnet 等其他工具可以测试特定 TCP 端口的连接。

有关详细信息,请参阅使用端口 ping 而不是 ICMP 来测试 Azure VM 连接

如何阻止未知 IP 地址向云服务发起的、可能表示某种恶意攻击的数千次访问?

Azure 实施多层网络安全性来防范其平台服务遭到分布式拒绝服务 (DDoS) 攻击。 Azure DDoS 防御系统是 Azure 持续监视过程的一部分,已通过渗透测试持续得到改善。 此 DDoS 防御系统不仅能够承受外部的攻击,而且也能承受其他 Azure 租户的攻击。 有关更多详细信息,请参阅 Microsoft Azure 网络安全

还可以创建一个启动任务,以便有选择性地阻止某些特定的 IP 地址。 有关详细信息,请参阅阻止特定 IP 地址

尝试通过 RDP 连接到云服务实例时收到消息“用户帐户已过期”。

如果绕过 RDP 设置中配置的过期日期,则可能会收到错误消息“此用户帐户已过期”。 可以在门户中执行以下步骤来更改过期日期:

  1. 登录到 Azure 管理控制台 (https://manage.windowsazure.cn),导航到你的云服务,然后选择“配置”选项卡。
  2. 选择“远程”。
  3. 更改“过期”日期,然后保存配置。

现在,应该能够通过 RDP 连接到计算机。

负载均衡器为何不能以均等的方式均衡流量?

有关内部负载均衡器工作原理的信息,请参阅 Azure 负载均衡器的新分配模式

使用的分配算法是将流量映射到可用服务器的 5 元组(源 IP、源端口、目标 IP、目标端口和协议类型)哈希。 它仅在传输会话内部提供粘性。 同一 TCP 或 UDP 会话中的数据包会定向到负载均衡终结点后面的同一数据中心 IP (DIP) 实例。 客户端从同一源 IP 关闭再重新打开连接或启动新会话时,源端口会更改,并导致流量定向到其他 DIP 终结点。

如何将发往云服务的默认 URL 的传入流量重定向到自定义 URL?

可以使用 IIS 的 URL 重写模块将传入到云服务的默认 URL(例如 *.chinacloudapp.cn)的流量重定向到某个自定义 DNS 名称/URL。 由于 URL 重写模块默认在 Web 角色上启用并且其规则是在应用程序的 web.config 中配置的,因此,无论是否重新启动/重置映像,它都始终可用。 有关详细信息,请参阅:

如何阻止/禁用发往云服务的默认 URL 的传入流量?

可以通过在云服务定义 (*.csdef) 文件中的站点绑定配置下将主机标头设置为自定义 DNS 名称(例如 www.MyCloudService.com),阻止发往云服务的默认 URL/名称(例如 *.chinacloudapp.cn)的传入流量,如下所示:

<?xml version="1.0" encoding="utf-8"?> 
<ServiceDefinition name="AzureCloudServicesDemo" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2015-04.2.6"> 
  <WebRole name="MyWebRole" vmsize="Small"> 
    <Sites> 
      <Site name="Web"> 
        <Bindings> 
          <Binding name="Endpoint1" endpointName="Endpoint1" hostHeader="www.MyCloudService.com" /> 
        </Bindings> 
      </Site> 
    </Sites> 
    <Endpoints> 
      <InputEndpoint name="Endpoint1" protocol="http" port="80" /> 
    </Endpoints> 
    <ConfigurationSettings> 
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" /> 
    </ConfigurationSettings> 
  </WebRole> 
</ServiceDefinition> 

因为通过 csdef 文件强制实施了此主机标头绑定,所以,只能通过自定义名称“www.MyCloudService.com”访问该服务,而发往“*.chinacloudapp.cn”域的所有传入请求都将失败。 话虽如此,但是,如果在服务中使用了自定义 SLB 探测或内部负载均衡器,则阻止服务的默认 URL/名称可能会干扰探测行为。

如何确保云服务面向公众的 IP 地址(aka、VIP)永不改变,以便少数特定的客户端通常可以将其列入白名单?

为了将云服务的 IP 地址列入白名单,建议将一个保留 IP 与服务进行关联,否则,如果删除了部署,则会从订阅解除分配由 Azure 提供的虚拟 IP。 请注意,为使 VIP 交换操作成功,需要为生产槽和暂存槽设置单独的保留 IP,如果缺少这些 IP,交换操作会失败。 请根据以下文章来保留 IP 地址并将其与云服务进行关联:

只要有多个实例用于你的角色,将 RIP 与云服务进行关联就应该不会导致任何停机时间。 另外,还可以将你的 Azure 数据中心的 IP 范围列入白名单。 可以在此处找到所有 Azure IP 范围。

此文件包含 Microsoft Azure 数据中心使用的 IP 地址范围(包括计算、SQL 和存储范围)。 每周都将发布更新的文件,反映当前已部署的范围和任何即将对 IP 范围进行的更改。 数据中心至少在一周后才会使用文件中显示的新范围。 请每周下载新的 xml 文件,并在网站上执行必要的更改以正确地标识 Azure 中运行的服务。 快速路由用户可能会注意到,此文件用于在每个月第一周更新 Azure 空间的 BGP 播发。

如何将 Azure 资源管理器 VNet 与云服务一起使用?

不能将云服务置于 Azure 资源管理器 VNet 中,但可以通过对等互连将 Azure 资源管理器 VNet 与经典 VNet 连接起来。 有关详细信息,请参阅虚拟网络对等互连