V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
kcnine
V2EX  ›  程序员

奇怪的 CDN 重复回源问题,源站在总是收到五分钟之前的重复请求

  •  
  •   kcnine · 2023-04-25 13:41:52 +08:00 · 1448 次点击
    这是一个创建于 602 天前的主题,其中的信息可能已经有所发展或是发生改变。
    一直在用腾 X 的 CDN ,之前源站不在 X 讯,昨天半夜把源站迁移到腾 X 云了,然后测试发现某些 API 的 GET 请求会在几分钟之后重放,因为有 SSE 的请求(标准的 SSE 必须用 GET),所以导致很严重的资源开销和数据异常。

    排查半天排除了客户端和服务端的原因,分析日志发现在 CDN 第一次回源后,大约 5~10 分钟后,会收到来自另一个 IP 完全一样的重复请求,IP 不是 CDN 的,但很分散,量也很大,不得已在源站设置 CDN 节点 IP 白名单,暂时解决了问题,腾 X 的技术支持说不是 CDN 的 IP 跟他们无关,然后他们的 CDN 节点 IP 偶尔会有变动就很蛋疼。

    我就纳闷这 TM 到底是为了啥?源站地址和请求内容只可能是在 CDN 回源的过程中被泄漏的,然后过几分钟进行重放,为啥要这样搞,就算是运营商做缓存他直接缓存 Response 不就得了,非要等几分钟重新请求一下?帮我监控 API 状态?

    希望老司机解惑一下,猜测是运营商搞得骚操作,要不就只能是腾 X

    目前想到的办法:
    1.全部使用 POST ,要改代码,SSE 有点麻烦
    2.回源开启 HTTPS ,感觉有点脱裤子放屁
    3.继续用 IP 白名单,但 CDN 节点有新增时会 403

    有没有老司机分析下原因,给点更好的解决方案

    部分重放发起 IP ,严重怀疑跟马 X 腾的 CDN 有关系,因为后两个是腾 X 云的 IP,但不是 CDN 的
    1.13.138.5
    129.211.163.253
    59.83.208.105
    129.211.167.108
    180.101.244.12
    129.211.167.128
    129.211.163.253
    9 条回复    2023-04-25 16:40:47 +08:00
    crystom
        1
    crystom  
       2023-04-25 13:48:04 +08:00
    用户是用微信或者 QQ 浏览器访问的吗?会有服务器抓取。
    kcnine
        2
    kcnine  
    OP
       2023-04-25 13:51:18 +08:00
    @crystom 不是,PC 端的也有。如果是抓取,也不可能绕过 CDN 直接访问源站的
    hankai17
        3
    hankai17  
       2023-04-25 14:06:12 +08:00
    客户端缓存了?
    XiLingHost
        4
    XiLingHost  
       2023-04-25 14:11:12 +08:00
    建议全链路 https ,你不妨看看腾讯的 cdn 有没有像 cloudflare 那种 origin 证书的说法,签 20 年的专用于 cdn 访问的证书
    XiLingHost
        5
    XiLingHost  
       2023-04-25 14:12:17 +08:00
    https://developers.cloudflare.com/ssl/origin-configuration/origin-ca/

    就是这种东西,看看腾讯的 CDN 有没有对标的产品
    Kinnice
        6
    Kinnice  
       2023-04-25 14:22:26 +08:00
    反诈主动探查
    acbot
        7
    acbot  
       2023-04-25 14:48:34 +08:00
    可以在 CDN 上添加特殊 header 指令,然后在源网站验证!
    kaedeair
        8
    kaedeair  
       2023-04-25 14:54:32 +08:00
    查了一下全是南京的,除了 59 和 180 开头的,分别是联通电信,其他全是腾讯云的,感觉是腾讯云和营运商合作的什么缓存机制?
    kcnine
        9
    kcnine  
    OP
       2023-04-25 16:40:47 +08:00
    @acbot 这个方案可行
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1064 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 22:51 · PVG 06:51 · LAX 14:51 · JFK 17:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.