开发者社区> 阿里云支持与服务> 正文

云服务器 ECS 服务器访问异常问题排查指引

简介: 因各种因素,用户通过私网或本地公网访问云服务器 ECS 上相关业务时,可能出现访问异常的情况。本文先对整个链路上,可能引发访问异常的相关因素及症状进行说明,然后阐述了出现异常时的排查思路及处理办法。最后对工单提交时的注意事项进行了说明。
+关注继续查看

因各种因素,用户通过私网或本地公网访问云服务器 ECS 上相关业务时,可能出现访问异常的情况。本文先对整个链路上,可能引发访问异常的相关因素及症状进行说明,然后阐述了出现异常时的排查思路及处理办法。最后对工单提交时的注意事项进行了说明。

 注:本文相关说明不考虑阿里云 CDN 或第三方 CDN 网络相关因素的影响。

 

ECS 访问异常关联因素及症状示意图


从客户端到服务端的整个链路上,可能引发访问异常的相关因素主要如下ECS 访问异常关联因素示意图所示

相关因素可能导致的症状,主要如下ECS 访问异常症状对应图所示:

 

ECS 访问异常关联因素说明


通过私网访问异常时关联因素说明

如果客户端是通过私网访问,则其链路相对简单。可能引发访问异常的因素及导致的客户端症状包括:

  1. 源服务器内部配置
    • 因素说明:
      源服务器内部防火墙、安全软件等安全策略,或系统中毒等操作系统内部问题导致访问异常。
    • 可能症状及原因:
      • ping 丢包:源服务器中毒等操作系统内部问题导致网络异常。
      • ping 不通:源服务器系统内安全软件等安全策略禁止外 ping
      • 所有端口 telnet 都不通:源服务器中毒等操作系统内部问题导致网络异常。
      • 只有部分端口 telnet 不通:源服务器系统内安全软件等安全策略禁止了对部分端口的访问。
  2. 源服务器安全组配置
    • 因素说明:
      源服务器归属安全组规则阻断了对目标服务器的访问。
    • 可能症状及原因: 
      • ping 不通:源服务器出方向配置了禁 ping 规则。
      • 所有端口 telnet 都不通:源服务器出方向为指定端口配置了 drop 规则。
      • 只有部分端口 telnet 不通:源服务器出方向为所有端口配置了 drop 规则。
  3. 负载均衡白名单
    • 因素说明:
      如果目标服务器是负载均衡,则相应监听端口开启白名单后,只有指定的 IP  IP 段地址才能对其访问。
    • 可能症状及原因: 
      • 只有部分端口 telnet 不通:源服务器 IP 不在白名单之内,导致无法访问相应监听端口。
  4. 目标服务器安全组配置
    • 因素说明:?目标服务器归属安全组规则阻断了源服务器的访问。
    • 可能症状及原因: 
      • ping 不通:目标服务器入方向配置了禁 ping 规则。
      • 所有端口 telnet 都不通:目标服务器入方向为指定端口配置了 drop 规则。
      • 只有部分端口 telnet 不通:目标服务器入方向为所有端口配置了 drop 规则。
  5. 目标服务器内部配置
    • 因素说明:目标服务器内部防火墙、安全软件等安全策略,或系统中毒等操作系统内部问题导致访问异常。
    • 可能症状及原因: 
      • ping 丢包:目标服务器中毒等操作系统内部问题导致访问异常。
      • ping 不通:目标服务器系统内安全软件等安全策略禁 ping
      • 所有端口 telnet 都不通:目标服务器中毒等操作系统内部问题导致访问异常。
      • 只有部分端口 telnet 不通:目标服务器系统内安全软件等安全策略禁止了对部分端口的访问。

通过公网访问异常时关联因素说明

如果客户端通过公网访问,则涉及的关联因素较多,包括:

客户端网络环境

对于客户端网络环境,可能引发访问异常的因素及导致的客户端症状包括:

  1. 用户本地网络
    • 因素说明:
      如果用户本地网络存在异常,可能会导致部分 IP 或所有 IP 均无法正常访问。
    • 可能症状及原因:
      • 非阿里云服务 IP 也无法访问:不仅是目标服务器无法访问,其它非阿里云 IP 也无法访问。
  2. 本地 DNS 劫持
    • 因素说明:
      用户本地网络或当地运营商有 DNS 劫持行为,导致访问目标服务器关联业务时,出现非正常跳转或者被插入广告。
    • 可能症状及原因:
      • 非正常跳转:DNS 劫持导致访问目标服务器关联业务时,跳转到了其它无关联网站。
      • 被插入广告:DNS 劫持导致访问目标服务器关联业务时,页面被插入广告。

运营商网络环境

对于运营商网络环境,可能引发访问异常的因素及导致的客户端症状包括:

  1. 运营商网络策略
    • 因素说明:
      运营商根据其策略,可能会进行 DNS 劫持,或阻断某些 IP、域名或端口的访问。
    • 可能症状及原因:
      • 被插入广告:DNS 劫持导致访问目标服务器关联业务时,页面被插入广告。
      • 域名无法访问但 IP 访问正常:运营商对某些违规域名的访问做了阻断。
      • 所有端口 telnet 都不通:运营商对某些违规 IP 的访问做了阻断。
      • 只有部分端口 telnet 不通:运营商对某些高危端口的访问做了阻断。
  2. 备案
    • 因素说明:
      对于境内服务器,根据行政管控要求,需要进行备案。
    • 可能症状及原因:
      • 非正常跳转:目标服务器关联域名未备案,导致访问关联业务时,跳转到了备案提示页面。
      • 域名无法访问但 IP 访问正常:目标服务器关联域名未备案,导致访问时,跳转到了备案提示页面,但通过 IP 访问无影响。

阿里云网络环境

对于阿里云网络环境,可能引发访问异常的因素及导致的客户端症状包括:

  1. 云盾-肉鸡关停
    • 因素说明:
      目标服务器因肉鸡、中毒等问题,持续对外攻击,被云盾关停。
    • 可能症状及原因:
      • ping 不通:服务器被关停导致无法 ping 通。
      • 所有端口 telnet 都不通:服务器被关停导致所有端口都不通。
  2. 云盾-访问拦截
    • 因素说明:
      源服务器因持续扫描探测、攻击等行为,被云盾阻断。
      注意:如果源服务器本地网络是通过 NAT 共享方式访问公网的,则攻击源不一定是客户自身服务器,而可能是同网络内其它服务器。由于共享相同的公网 IP,导致云盾阻断相应 IP 后,源服务器的访问也受到了波及和影响。
    • 可能症状及原因:
      • ping 不通:源服务器 IP 被云盾拦截,导致禁 ping
      • 所有端口 telnet 都不通:源服务器 IP 被云盾拦截,导致所有端口都无法访问。
  3. 绿网-违规屏蔽
    • 因素说明:
      目标服务器相关 URL 存在违规内容,访问被阻断。
    • 可能症状及原因:
      • 非正常跳转:源服务器业务异常,导致相关访问跳转到了 DDos 高防或 Web 应用防火墙源站异常提示页面。
      • 部分 URL 无法访问:被 Web 应用防火墙规则命中的相应 URL,客户端无法正常访问,会跳转到了相应的阻断提示页面。
  4. DDos 高防和 Web 应用防火墙
    • 因素说明:
      目标服务器业务异常,或者源服务器相关访问行为被 DDos 高防或 Web 应用防火墙拦截规则命中,导致访问异常。
    • 可能症状及原因:
      • ping 不通:服务器被关停导致无法 ping 通。
      • 所有端口 telnet 都不通:服务器被关停导致所有端口都不通。
  5. 负载均衡白名单
    • 因素说明:
      如果目标服务器是负载均衡,则相应监听端口开启白名单后,只有指定的 IP  IP 段地址才能对其访问。
    • 可能症状及原因:
      • 只有部分端口 telnet 不通:源服务器 IP 不在白名单之内,导致无法访问相应监听端口。
  6. 目标服务器安全组配置
    • 因素说明:
      目标服务器归属安全组规则阻断了源服务器的访问。
    • 可能症状及原因:
      • ping 不通:目标服务器入方向配置了禁 ping 规则。
      • 所有端口 telnet 都不通:目标服务器入方向为指定端口配置了 drop 规则。
      • 只有部分端口 telnet 不通:目标服务器入方向为所有端口配置了 drop 规则。

目标ECS服务器内部环境

对于目标 ECS 服务器自身相关环境,可能引发访问异常的因素及导致的客户端症状包括:

  1. 目标服务器欠费停机
    • 因素说明:目标服务器欠费停机导致无法访问。
    • 可能症状及原因:
      • ping 不通:目标服务器欠费停机导致无法 ping 通。
      • 所有端口 telnet 都不通:目标服务器欠费停机导致所有端口无法访问。
  2. 目标服务器内部配置
    • 因素说明:
      目标服务器内部防火墙、安全软件等安全策略,或系统中毒等操作系统内部问题导致访问异常。
    • 可能症状及原因:
      • ping 丢包:目标服务器中毒等操作系统内部问题导致访问异常。
      • ping 不通:目标服务器系统内安全软件等安全策略禁ping
      • 所有端口 telnet 都不通:目标服务器中毒等操作系统内部问题导致访问异常。
      • 只有部分端口 telnet 不通:目标服务器系统内安全软件等安全策略禁止了对部分端口的访问。
  3. 软件源地址访问控制
    • 因素说明:
      目标服务器内部业务软件对源 IP 做了访问控制,导致源服务器无法访问。
    • 可能症状及原因:
      • 只有部分端口 telnet 不通:相应端口对应业务软件对源 IP 做了访问控制,阻断了源服务器的访问。

ECS 服务器访问异常问题排查流程图


对于 ECS 访问异常问题,基本排查思路如下ECS 服务器访问异常问题排查流程图所示:

 

ECS 访问异常问题排查思路及处理办法


对于 ECS 访问异常问题,参照前图,其排查思路说明如下:

通过私网访问异常时排查思路

如果客户端通过私网访问,则访问异常时,可通过如下步骤进行判断、排查分析和处理:

  1. 所有服务器访问目标服务器均存在异常?
    即从其它不同服务器同时访问目标服务器做对比测试。
    • 1-A 是(所有服务器访问目标服务器均存在异常):

      如果所有服务器访问均存在异常,则推断是目标服务器归属安全组、或服务器内部自身存在异常所致。需要做进一步排查分析。

      • 1-A.1 服务器内部访问是否正常?
        即通过 管理终端 进入服务器,在服务器内部使用 127.0.0.1 做对比访问测试,看是否正常。

        • 1-A.1-A 是(目标服务器内部访问也存在异常):
          如果目标服务器内部访问也存在异常,则需要联系业务提供商或者业务运维人员,检查代码配置、软件运行状态。

        • 1-A.1-B 否(目标服务器内部访问正常):
          如果服务器内部访问是正常的,则需要检查目标服务器归属安全组和操作系统内相关安全软件的安全配置,排查是否对源服务器做了阻断。
          安全组的常见使用问题,可以参阅安全组使用FAQ
          如果排查分析安全组和操作系统内安全软件配置后,均未见明显异常,则需要参阅文档网络异常时抓包操作说明,在出现异常时,从客户端和服务端同时并发抓包,然后提交抓包结果,联系售后技术支持

    • 1-B 否(只有源服务器访问目标服务器存在异常):
      如果只有源服务器访问存在异常,则推断是源服务器归属安全组、服务器内部自身存在异常或源服务器到目标服务器之间的网络存在异常所致。需要做进一步排查分析。

      • 1-B.1 telnet 端口测试是否正常?
        即从源服务器访问目标服务器是否只是 ping 不通而端口访问正常。

        • 1-B.1-A 是(源服务器 ping 不通目标服务器,但 telnet 端口测试正常):
          如果只是 ping 不通,但端口访问正常,则需要检查目标服务器归属安全组和操作系统内相关安全软件的安全配置,是否对源服务器做了禁ping
          安全组的常见使用问题,可以参阅安全组使用FAQ

        • 1-B.1-B 否(源服务器到目标服务器, telnet 端口测试及 ping 测试均异常):
          如果 ping  telnet 端口测试均有异常,则需要进一步排查:

          • 1-B.1-B.1 到源服务器网关 ping 是否正常
            即从源服务器内部 ping 自身网关,看是否正常。

            • 1-B.1-B.1-A】 否(源服务器 ping 自身网关也异常):
              如果源服务器 ping 自身网关也存在异常(不通或丢包),则需要通过系统日志等检查源服务器自身运行状态,比如服务器负载、网络配置等。

            • 1-B.1-B.1-B 是(源服务器 ping 自身网关正常):
              如果源服务器 ping 自身网关正常。则需要进一步排查:

              • 1-B.1-B.1-B.1 到目标服务器网关 ping 是否正常?
                即从源服务器内部 ping 目标服务器网关,看是否正常。

                • 1-B.1-B.1-B.1-A 否(源服务器 ping 目标网关正常):
                  如果源服务器 ping 自身网关和目标服务器网关都正常,则需要通过系统日志等检查目标服务器自身运行状态,比如服务器负载、网络配置等。

                • 1-B.1-B.1-B.1-B 是(源服务器 ping 目标网关也不正常):
                  如果源服务器 ping 自身网关正常,但 ping 目标服务器网关存在异常(不通或丢包),则判断可能是中间网络异常所致。则需要参阅文档网络异常时抓包操作说明,在出现异常时,从客户端和服务端同时并发抓包,然后提交抓包结果,联系售后技术支持

通过公网访问异常时排查思路

如果客户端通过公网访问,则访问异常时,可通过如下步骤进行判断、排查分析和处理:

  1. URL 访问问题判断:
    1.1 被插入广告?
    即客户端访问目标服务器业务时,是否出现了页面被插入广告的情况。
    • 1.1-A 是(页面被插入广告):
      如果是页面被插入广告情况,则参阅如下步骤进一步排查:
      • 1.1-A.1 系统内部访问是否正常?
        即通过 管理终端 进入目标服务器,在服务器内部使用 127.0.0.1做对比访问测试看是否正常。
        • 1.1-A.1-A 是(目标服务器系统内部访问也存在异常):
          如果目标服务器内部访问也存在异常,则需要联系业务提供商或者业务运维人员,检查代码配置、软件运行状态。
        • 1.1-A.1-B 否(目标服务器系统内部访问正常):
          如果目标服务器内部访问正常,则判断是由于本地网络异常或者本地运营商劫持所致。用户可以尝试修改本地 DNS 服务器地址看问题能否解决。如果还有问题,建议联系本地网络部门排查分析,或向当地运营商进行问题反馈。
    • 1.1-B 否(页面没有被插入广告):
      如果不是页面被植入广告问题,则参阅后续步骤进一步排查分析。
      • 1.1-B.1 页面异常跳转?
        即客户端访问目标服务器业务时,相关 URL 是否出现了非正常跳转。
        • 1.1-B.1-A 是(页面出现了非正常跳转):
          如果是页面出现了非正常跳转,则参阅如下步骤进一步排查分析:
        • 1.1-B.1-B (页面没有出现非正常跳转):
          如果不是页面非正常跳转问题,则参阅后续步骤进一步排查分析。
  2. 问题范围判断:
    如果不是 URL 访问异常问题,则需要通过对比分析确定问题范围:
    2.1 所有网络访问都有异常?
    即通过第三方拨测平台,从全国各地做对比访问测试,判断是否所有网络访问目标服务器都存在同样异常。

    • 【2.1-A】 是(所有网络访问均存在异常):
      如果经过测试,所有外部网络访问均存在异常,则参阅如下步骤进一步排查分析:

      •  2.1-A.1 系统内部访问是否正常?
        即通过 管理终端 进入目标服务器,在服务器内部使用 127.0.0.1做对比访问测试看是否正常。

        • 【2.1-A.1-A】 否(目标服务器系统内部访问也存在异常):
          如果目标服务器内部访问也存在异常,则需要联系业务提供商或者业务运维人员,检查代码配置、软件运行状态。

        • 【2.1-A.1-B】 是(目标服务器系统内部访问正常):
          如果目标服务器内部访问正常,则需要检查目标服务器安全组及系统内安全配置,是否对源服务器的访问做了限制。
          安全组的常见使用问题,可以参阅安全组使用FAQ

    • 【2.1-B】 否(只有源服务器访问目标服务器存在异常)
      如果只有源服务器访问存在异常,则参阅后续步骤进一步排查分析。

  3. 问题现象判断:
    如果只有源服务器访问存在异常,则需要通过 ping  telnet 等测试做进一步排查分析。
    3.1 ping 是否正常?
    即客户端 ping 目标服务器 IP 地址是否正常。

    • 3.1-A】 否(ping 目标服务器正常):
      如果客户端 ping 目标服务器丢包或不通,则可能是中间链路或对端服务器存在异常所致,则需要通过 MTR 链路测试做进一步排查分析。
      链路测试操作说明可以参阅 ping 丢包或不通时链路测试说明

    • 3.1-B】 是(ping 目标服务器正常,但是端口访问不通):
      如果 ping 目标服务器正常,但是端口访问不通,则需要参阅后续步骤进一步排查分析。

      • 3.1-B.1 端口是否被目标服务器拦截?
        即目标服务器归属安全组或系统内部安全设置,是否有策略阻断了客户端对相应端口的访问。

        • 3.1-B.1-A】  (目标服务器阻断了客户端对某些端口的访问):
          如果确认有对源服务器的阻断策略,则需要进行相应调整。

          安全组的常见使用问题,可以参阅安全组使用FAQ

        • 3.1-B.1-B】 否(目标服务器没有阻断策略):
          如果目标服务器没有针对源服务器的阻断策略,则可能是相应被运营商拦截所致,则需要通过 tracetcp 等工具对端口阻断情况做进一步跟踪分析。
          端口可用性探测说明可以参阅  ping 通但端口不通时端口可用性探测说明

ECS 访问异常问题工单提交须知


如果经过前述步骤还是未能成功解决问题,请参阅如下步骤依次进行测试并记录测试结果,然后提交工单。

客户端通过私网进行访问

如果客户端是通过私网进行访问的,则请参阅如下步骤依次进行测试并记录测试结果

  1. 通过不同服务器向目标服务器做相同的访问测试,看是否有同样的异常症状。
  2. ping 目标服务器 IP ,看是否正常。
  3. telnet 目标服务器相应端口,看是否正常。
  4. 源服务器 ping 自身网关,看是否正常。
  5. 目标服务器 ping 自身网关,看是否正常。
  6. 源服务器 ping 目标服务器网关,看是否正常。
  7. 目标服务器 ping 源服务器网关,看是否正常。
  8. (按情况可选)参阅网络异常时抓包操作说明,出现异常时同时从源服务器和目标服务器抓包。

 客户端通过公网进行访问

如果客户端是通过公网进行访问的,则请参阅如下步骤依次进行测试并记录测试结果

  1. 从不同地域不同网络环境,向目标服务器做同样的访问测试,看是否存在同样的异常症状
  2. 异常情况是否是页面被插入广告?
  3. 异常情况是否是页面出现了异常跳转?
  4. 客户端 ping 目标服务器,看是否正常。
  5. 客户端 telnet 目标服务器相应业务端口,看是否正常。
  6. 如果是 ping 存在异常(丢包或中断),则参阅 ping 丢包或不通时链路测试说明进行测试,并记录测试数据。
  7. 如果 ping 正常,但端口无法访问,则参阅  ping 通但端口不通时端口可用性探测说明 进行测试,记录测试数据。
  8. (按情况可选)参阅网络异常时抓包操作说明,出现异常时同时从源服务器和目标服务器抓包。

记录前述步骤的相关测试结果或数据,然后联系售后技术支持

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
用EIP直通车解决迁移到VPC后服务器内无公网IP的过程
背景: 经典迁移VPC对于目前的阿里云来说 是解决一个重大的历史遗留问题。在上古时期,公有云的租户不多,因为可以给每个实例分配一个EIP一个内网IP。隔离租户只用了安全组来实现,因此其实留下了蛮多问题的。
2169 0
SQL Server 服务器磁盘测试之SQLIO篇
原文:SQL Server 服务器磁盘测试之SQLIO篇       数据库调优工作中,有一部分是需要排查IO问题的,例如IO的速度或者RAID级别无法响应高并发下的快速请求。最常见的就是查看磁盘每次读写的响应速度,通过性能计数器Avg.Disk sec/Read(Write)我们可以很直观的看到他们。
830 0
阿里云轻量应用服务器评测
本文主要介绍了阿里云轻量应用服务器的购买和简单使用。购买前请先:领取阿里云幸运券,有很多优惠,下文中有领取链接。 购买建议多买几年,年数越多优惠越多。
2789 0
MySQL|主从延迟问题排查(一)
大查询长时间执行无法释放DML读锁,后续同步主库的DDL操作获取DML写锁资源被阻塞等待,导致后续同步主库的操作堆积,主从延迟增长严重。从同步延迟的监控来看,延迟从17:11开始,17:51:59进行kill大查询操作,直到17:53建议业务方将大查询kill掉后才结束。
2188 0
AsyncHttpClient放在子线程执行时抛出异常的解决方法
AsyncHttpClient放在子线程执行时抛出异常的解决方法
75 0
阿里云通用网络增强型sn2ne云服务器配置性能评测
阿里云通用网络增强型sn2ne云服务器是企业级高性能云服务器规格,sn2ne是100%独占资源的云服务器,码笔记分享通用网络增强型sn2ne实例的配置、性能评测及优惠信息: 一:通用网络增强型sn2ne实例特点 阿里云通用网络增强型sn2ne云服务器属于企业级高性能云服务器,个人用户和企业用户均可以购买。
2415 0
执行Socket socket = new Socket(ip, port);时抛出个异常:android.os.NetworkOnMainThreadException解决办法
首先,确认你的android版本是4.0之后再用此方法解决,因为在4.0之后在主线程里面执行Http请求才会报这个错,也许是怕Http请求时间太长造成程序假死的情况吧。Android在4.0之前的版本支持在主线程中访问网络,但是在4.0以后对这部分程序进行了优化,也就是说访问网络的代码不能写在主线程中了。
812 0
+关注
阿里云支持与服务
分享阿里云支持与服务团队最佳实践、经典案例与故障排查。
197
文章
4855
问答
来源圈子
更多
作为全球云计算的领先者,阿里云为全球230万企业提供着云计算服务,服务范围覆盖200多个国家和地区。我们致力于为企业、政府等组织机构提供安全可靠的云计算服务,给用户带来极速愉悦的服务体验。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载