业务接入高防后存在卡顿、延迟、访问不通等问题

问题描述

业务接入DDoS高防后,用户访问业务时存在异常卡顿、延迟、访问不通等问题。

问题分析过程

  1. 遇到这类问题时,需要您收集受影响的访问地址,并通过TracerouteMTR等工具进行链路测试,如下所示,定位是哪个节点的问题。

    说明
    mtr --no-dns [$IP]
    说明

    [$IP]为您收集受影响的访问地址。

    系统显示类似如下,发现有个节点存在延迟。业务接入DDoS高防后存在卡顿、延迟、访问不通等问题

  2. 分析延迟是否在正常范围内。

    由于DDoS高防采用代理机制,流量代理与安全监测等环节均会在一定程度上导致访问延迟增加,此外由于不同客户端所处地域以及所属运营商存在差异,实际产生的访问延迟也会各不相同,以下为接入DDoS高防后的时延参考值。

    • DDoS高防(中国内地):中国内地用户访问73~113ms,非中国内地用户访问约313ms。

    • DDoS高防(非中国内地):

      • 保险防护、无忧防护:非中国内地用户访问60~100ms,中国内地用户访问约300ms。

      • 加速线路、安全加速线路:网络延迟小于50ms。

    如果延迟在正常范围内,您可以从以下几个方面考虑减少延迟:

    • 选择距离较近的防护节点:根据源站的地理位置选择,使流量能够在离目标端更近的节点进行处理,减少数据传输的距离和跳数,从而降低延迟。DDoS高防提供了华北(北京)、华北、华东(杭州)节点供您选择,如需选择请联系商务经理。详细介绍,请参见购买DDoS高防实例

    • 使用DDoS高防流量调度器功能:源站是阿里云产品时,可以使用DDoS高防的流量调度器功能,网络流量仅在遭受攻击时经过DDoS高防,而在无攻击的正常情况下,流量可直接抵达源站。详细介绍,请参见流量调度器

    • 搭配使用CDN、DCDNGTM等网络加速产品:高防服务负责抵御DDoS等网络攻击,确保网络的安全性和稳定性;而CDN、DCDN 和 GTM 等产品则专注于优化网络性能,提高用户的访问速度和体验,从而降低延迟。但需要注意使用其他加速产品时您需要为加速产品付费。

  3. 延迟远超正常范围时,确认该延迟节点的Host值,是DDoS高防后端节点地址还是DDoS高防的地址。

解决方案

如果业务紧急,建议您先跳过高防,直接访问源站,优先保证业务正常运行,然后在参考以下步骤排查处理:

DDoS高防后端节点异常分析与处理

您需要根据DDoS高防后端节点的类型,选择对应的排查步骤。

源站类型

排查步骤

负载均衡SLB

  1. 使用TCPing工具,检测SLBIP地址和端口,查看是否有异常。详情请参见DDoS高防清洗事件分析与处理

  2. 检查SLB状态是否有异常,例如连接数是否超过规格默认最大连接数。

  3. 检查SLB是否设置了访问控制,或者其他的访问控制策略。

    如有,请确认已经放行了DDoS高防的回源IP网段。更多信息,请参见放行DDoS高防回源IP

  4. 检查SLB后端的服务器,确认是否有安全软件或其他IP封禁策略误拦截了DDoS高防的回源IP。如有,请确认已经放行了DDoS高防的回源IP网段。更多信息,请参见放行DDoS高防回源IP

    说明

    后端服务器配置SLB后,如果无法识别访问者的真实源IP(没有使用七层负载均衡),对后端服务器来说所有的请求都是来自高防回源IP段,因此分摊到每个回源IP上的请求量会增大很多,如果有安全软件进行恶意IP识别并阻断,则可能会误拦截高防集群本身的回源IP,而此类回源IP都需要放行。

  5. 确认SLB IP地址是否暴露,若无法判断或已暴露,建议您更换SLB,否则黑客可能会绕过DDoS高防直接攻击源站。

云服务器ECS

  1. 使用TCPing工具,检测ECS实例IP和端口,查看记录是否有异常。详情请参见DDoS高防清洗事件分析与处理

  2. 检查ECS实例是否有异常事件,例如服务器本身黑洞及清洗事件、CPU使用率高、数据库请求慢、出方向带宽高等。

  3. 检查ECS实例是否设置了安全组、安全软件或其他的访问控制策略。如有,请确认已经放行了DDoS高防的回源IP网段。更多信息,请参见放行DDoS高防回源IP

  4. 确认非网站业务是否添加真实源IP允许访问ECS实例的安全组,详情请参见非网站接入访问业务异常

  5. 确认ECS实例IP是否暴露,若无法判断或已暴露,黑客可能会绕过DDoS高防直接攻击ECS实例。建议您更换源站ECS实例IP。更多信息,请参见更换源站ECS公网IP

非阿里云服务器

  1. 使用TCPing工具,检测服务器IP和端口,查看记录是否有异常。详情请参见DDoS高防清洗事件分析与处理

  2. 检查服务器是否有异常事件,例如CPU高、数据库请求慢、出方向带宽满等。

  3. 检查服务器本身是否设置了黑、白名单,安全软件或者其他的访问控制策略。如有,请确认已经放行了DDoS高防的回源IP网段。更多信息,请参见放行DDoS高防回源IP

  4. 确认服务器IP是否暴露,若无法判断或已暴露,建议您更换服务器IP,不要使用之前已暴露的IP。否则黑客可能会绕过DDoS高防直接攻击服务器。

DDoS高防问题

您可以在DDoS高防控制台实例管理页面查看高防实例的状态。如果是出现以下状态,请选择对应的方法处理:

  • 清洗中

    当网络流量超过清洗阈值时,阿里云会开始对攻击流量进行清洗,此时可能会导致卡顿或者延迟问题。

  • 黑洞中

    假如您的服务器遭受大流量攻击而进入黑洞,那么除阿里云内部和该服务器同地域的云产品仍然能够正常连通该服务器外,其他所有来自外部的流量都会被丢弃。

DDoS高防清洗事件分析与处理

如下图所示,表示DDoS高防实例有清洗事件,问题可能是清洗事件引起。使用TCPing工具,分别对受攻击端口和未被攻击端口进行延迟和丢包的测试:实例状态

根据记录结果,对照下表定位并解决问题。

受攻击端口

有延时、丢包

未被攻击端口

有延时、丢包

问题分析处理

说明不是清洗策略的原因,清洗策略未导致误杀。

建议您查看后端服务器状态是否异常,确认后端服务器的抗攻击性能。若服务器抗攻击能力较弱,DDoS高防需要收紧防御策略。您可以根据以下参数,分析服务器抗攻击能力并调整DDoS高防的防御策略。

  • 正常用户访问情况

  • 业务主要交互过程

  • 应用对外服务能力

清洗策略导致出现问题。

说明不是清洗策略的原因,清洗策略正常。

一般不存在这种情况。

DDoS高防黑洞事件分析与处理

  1. 如下图所示,说明DDoS高防实例有黑洞事件。请确认进入黑洞的DDoS高防实例的IP,以及受影响的访问请求都经过该IP。实例状态-黑洞中

  2. 建议您使用DDoS高防的黑洞解封功能,解除黑洞状态。每个阿里云账号每天共拥有五次黑洞解封机会,具体操作请参见黑洞解封

更多信息

本小节主要介绍TCPing工具,TCPing工具使用TCP的方式去查看端口情况,可以检测出TCP延迟及连接情况。您可以单击下载TCPing工具

  • Windows使用方法

    Windows版的TCPing工具拷贝至Windows系统上,打开命令行工具,进入TCPing工具所在目录,在命令行中运行tcping [$Domain_Name] [$Port]

    说明
    • [$Domain_Name]为您需要检测的域名或IP地址。

    • [$Port]为需要检测的端口号。

    系统显示类似如下。

    Probing 192.168.XX.XX:80/tcp - Port is open - time=19.550ms
    Probing 140.XXX.XXX.8:80/tcp - Port is open - time=8.761ms
    Probing 192.168.XX.XX:80/tcp - Port is open - time=10.899ms
    Probing 192.168.XX.XX:80/tcp - Port is open - time=13.013ms
    
    Ping statistics for 192.168.XX.XX:80
         4 probes sent.
         4 successful, 0 failed.
    Approximate trip times in milli-seconds:
         Minimum = 8.761ms, Maximum = 19.550ms, Average = 13.056ms                            
  • Linux使用方法

    1. 上传Linux版的TCPing工具,依次执行以下命令,安装TCPing工具。

      tar zxvf tcping-1.3.5.tar.gz
      cd tcping-1.3.5
      make tcping.linux
    2. 执行以下命令,进行检测。

      for ((i=0; i<10; ++i)) ; do ./tcping www.example.com 80;done

      系统显示类似如下。

      www.example.com port 80 open.
      www.example.com port 80 open.
      www.example.com port 80 open.
      www.example.com port 80 open.
      www.example.com port 80 open.
      www.example.com port 80 open.
      www.example.com port 80 open.
      www.example.com port 80 open.
      www.example.com port 80 open.
      www.example.com port 80 open.

适用于

DDoS高防