V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
abcbuzhiming
V2EX  ›  宽带症候群

ipv4 和 ipv6 共存的网络中,访问一个域名会不会自动处理异常解析?

  •  
  •   abcbuzhiming · 358 天前 · 1705 次点击
    这是一个创建于 358 天前的主题,其中的信息可能已经有所发展或是发生改变。
    以前有篇文章,讲了非常详细的细节,你打开浏览器输入一个域名然后按下回车后,直到你看到页面的所有技术细节。
    我想了解的是,现在这种 ipv4 和 ipv6 共存的环境,假设一个域名同时解析了 ipv4 和 ipv6 ,但是其中一个宕机了,可能是 ipv4 ,也可能 ipv6 ,我说的这种宕机是指的服务器那边,此时你用一个版本的 ip 去访问是失效,但是另外一个 ip 正常。

    我的疑问是,浏览器怎么处理这种情况?我目前能查到的是系统自身有 ipv6 还是 ipv4 优先,这个优先我的理解就是首先去访问那个优先的网络,如果优先的网络宕机,会自动切换到另外一个网络吗?还是就直接就显示宕机界面就不再管了?
    11 条回复    2024-01-05 00:40:22 +08:00
    bing1178
        1
    bing1178  
       358 天前
    这个貌似是 操作系统处理的。

    系统会同时查询 A 记录 和 AAAA 记录 哪个先返回 就用哪个
    peasant
        2
    peasant  
       358 天前
    根据我经常使用 curl -v 命令的请求结果来看是优先 IPv6 的,如果 IPv6 响应慢了就马上发起 IPv4 的连接,然后哪个先响应成功就走哪个。
    Xymmh
        3
    Xymmh  
       358 天前 via Android
    ipv6-test.com 这个网站可以看到浏览器的行为
    abcbuzhiming
        4
    abcbuzhiming  
    OP
       358 天前
    @Xymmh 我也经常看这个网站来检测自己的 ipv6 ,但是怎么看 [浏览器的行为] 这一点?
    Zhuzhuchenyan
        5
    Zhuzhuchenyan  
       358 天前
    完全取决于浏览器或者发起链接工具的行为,根据我的经验,至少遇到过以下几种不同的处理方式,
    1. 同时使用 ipv6 和 ipv4 发起请求,哪个优先回应使用哪个
    2. 先使用 ipv6 ,等待一段时间之后,若无法链接,再使用 ipv4 发起连接
    2.1 同上,只不过 ipv4 被优先使用
    3. 先使用 ipv6 ,如果不通则直接不通
    3.1 同上,只不过 ipv4 被优先使用

    需要注意的是哪怕是相同的工具,跨版本之后行为也有可能改变。之前遇到过不少坑。
    Xymmh
        6
    Xymmh  
       358 天前 via Android
    @abcbuzhiming 网站里有个浏览器的板块,里面的 default 就是浏览器默认通过 ipv4 还是 ipv6 连接,fallback 就是浏览器默认连接协议不通时会不会采用另一种协议以及延迟时间
    Xymmh
        7
    Xymmh  
       358 天前 via Android
    不过说实话,在实践中,在 IPv6 无法正常打开一个网页时,很多时候浏览器并不会那么智能地尝试通过 IPv4 连接。这可能和无法打开网页的原因多样性有关
    shepherdcode
        8
    shepherdcode  
       358 天前
    会的,比如 V2EX 就有 v6 的解析,双网卡情况下会优先走 v6 解析导致打不开。
    0o0O0o0O0o
        9
    0o0O0o0O0o  
       358 天前 via iPhone
    客户端决定,这点在一些特别的场景也让我很烦
    dude4
        10
    dude4  
       357 天前
    @abcbuzhiming 就这个网站就看得到,如果你有 V6 ,但你的浏览器默认 IPV4 优先,测试结果会显示类似于“你有 V6 ,但你的浏览器不太愿意用,令人担心”的结果……
    V4 V6 在都存在且路由可达的前提下,选哪一个是客户端请求的,上面这只是浏览器的结果,至于视频 app 之类就看开发程序猿自己的逻辑了。
    LnTrx
        11
    LnTrx  
       357 天前
    你想问的是不是 Happy Eyeballs 机制
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3789 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 00:15 · PVG 08:15 · LAX 16:15 · JFK 19:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.