V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
mangojiji
V2EX  ›  问与答

当浏览器收到多条 A 记录时,会怎样进行处理呢?

  •  
  •   mangojiji · 20 天前 · 703 次点击
    假设在浏览器内 首次 访问 https://example.com

    收到了许多 A 记录,

    其中:
    有一部分 IP 已经关机,
    另一部分 IP 没有配置正确的 SSL 证书,会在握手发送 SNI 之后,主动 reset 连接。
    另一部分 IP 上的 SSL 证书已经过期。
    还有一部分 IP 可以正常服务网站。

    请问浏览器会按什么策略进行网站访问?

    1) 并发访问所有的 IP ,如果其中一个 IP 返回成功,就切断其它的连接?

    2) 随机选定一个 IP ,失败就直接失败了,成功就提示成功,不尝试别的 IP ?

    3) 先随机尝试某一个 IP ,这个 IP 失败了再尝试其它的 IP ,依次访问,直到有 IP 成功?
    3 条回复    2024-10-18 08:09:28 +08:00
    ronman
        1
    ronman  
       20 天前
    通常是按顺序选吧
    busier
        2
    busier  
       20 天前 via iPhone   ❤️ 1
    传统 DNS ,浏览器收不到 A 记录,DNS 解析的活是由系统来干的,有多个 A 记录会进行轮询,且会受到系统 DNS 缓存影响。除非 DNS 服务器专门设计,正常来说是不具备故障转移功能。

    Doh 情况不清楚。
    IDAEngine
        3
    IDAEngine  
       20 天前   ❤️ 1
    dns 不是浏览器处理的,系统 API 来处理
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5656 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 06:33 · PVG 14:33 · LAX 22:33 · JFK 01:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.