问题症状:
  • 问题1:ping不通CDN的加速域名。

    原因:您的本地网络异常;节点网络异常或者被攻击;您本地到运营商中间链路某路由节点故障。

  • 问题2:源站更改文件之后,从CDN节点上获取的仍是更改之前的文件。

    刷新未生效;读取的是本地浏览器缓存;被本地运营商劫持。

  • 问题3:访问CDN加速域名上拿到的非其站点文件内容。

    原因:访问的非CDN节点;被劫持。

解决方案:
  • ping不通CDN的加速域名。
    1. 排查您的加速域名是否在沙箱节点中,由于沙箱中的域名无法保证服务稳定性,所以会存在ping不通的情况,此时沙箱可能正在受到攻击。
    2. 检测访问的IP是否为CDN的节点IP。如何检测,请参考诊断工具
      如果您的访问节点不是CDN节点IP,请核实如下几种情况:
      • 您本地是否有开启代理软件(有些代理软件会强制更改访问域名的解析情况)。
      • 您是否绑定Host文件,将加速域名强制解析到了某个IP。
      • 您本地存在DNS劫持,这种情况下,您可以在本地开启杀毒安全软件,并且固定本地所使用的DNS为阿里的223或者电信的114或者其他知名的DNS,如果劫持情况比较严重,并且无法解决,则需要向您的网络服务提供商投诉要求解决劫持。
    3. 在本地ping该节点IP,以及使用站长工具(例如:17ce.com或者听云平台)在全国探测该节点IP是否存在问题(各个地区访问该节点均延迟均较大或者不通,本地也Ping不通该节点),这种情况该节点存在问题的可能性较大(前提是域名确实没有在沙箱中)。
    4. 在本地使用tracert(win主机)或者traceroute(linux主机)探测该IP并提供完整探测截图,根据得到的截图确定整个网络链路的问题点。MTR信息判断方法:目的节点丢包率为100%,并且从目的节点往前一直找到第一个开始丢包的节点(中间不能有丢包率为0%的路由节点),则第一个开始丢包的路由节点是问题路由的可能性较大。详细排查步骤,请参见ping丢包或不通时链路测试说明

      您也可以给阿里云技术同学进行排查,在此期间缓解问题的方法:更改您的本地DNS为其他DNS(例如电信的114或者阿里的223),并刷新本地的DNS缓存,使其调度到其他正常的节点,走另外一条线路,则该问题可能得到缓解。

  • 源站更改文件之后,从CDN节点上获取的仍是更改之前的文件。
    1. 检测访问的IP是否为CDN的节点IP。
    2. 根据CDN的配置,绑定CDN节点和源站。绑定源站测试时,请注意:
      • CDN的回源Host配置。例如CDN加速域名为A,源站域名为B,回源Host配置的为A,那么使用curl测试源站的命令应该为curl -H "Host: A" "B"。如果是绑定Host文件,那么应该将CDN加速域名绑定Host到源站域名所解析出来的IP上。
      • 不同的回源端口得到的访问结果也可能不一样,分别测试得到response header相关信息,判断访问的文件是否一致,主要判断以下几个方面:
        • content-length大小是否一致
        • last-modified的修改时间是否一致
        • Etag和Content-Md5是否一致


        如果上述三点存在任何一项不一致的情况,那么可认为源站和节点上文件的确不一致。如果都存在的情况下,第三点最具备判断依据。

    3. 如果上述步骤确认都OK,最终在节点上获取的文件仍和源站文件不一致,建议您刷新该URL,等待约10分钟后再去测试(刷新生效时间约为5~10分钟),如果多次刷新之后问题仍未解决,请提交工单
  • 访问CDN加速域名上拿到的非其站点文件内容。
    1. 检测访问的IP是否为CDN的节点IP。
    2. 排查CDN节点本身是否缓存了非用户站点上的文件,方法同上。
    3. 排查客户端到CDN L1这段链路。
      1. 打开Chrome浏览器的开发者工具,切换到Network并在地址栏输入访问的URL。
      2. 单击访问的URL,查看实际的访问情况。报错request URl、remote ip、requestUrl主要看访问形式是否如http://x.x.x.x/cache/CDN或者remote IP非CDN节点IP,如下图这种则是劫持:

        那么,您需要联系其本地运营商投诉处理,解除劫持。