浏览器什么时候请求和使用IPv6 DNSlogging?

我很高兴我的新Linode托pipe的服务器也提供IPv4和IPv6地址。
当使用Linode作为NS时,默认DNSlogging显示AAAAAlogging

 example.com 86400 IN A 203.0.113.4 example.com 86400 IN AAAA 2001:db8::ff00:1111:2222:3333 

这是好的,Web应用程序可以从V4和V6中获得。
但是,我意识到许多ISP(至less我在哪里)不提供IPv6连接。

因此,从这样的区域通过IPv6的浏览器访问将成功地执行AAAA(v6)请求。 但是,使用该v6地址的http(s)连接将会失败。

我有理由担心最近的浏览器发生这种事情吗?
我应该从DNS区域移除IPv6地址以确保IPv4只能访问吗?

注意:这个问题不同于这个关注DNSparsing问题的问题

你问的问题是4-5年前的一个主要问题。 这可能推迟了几年的IPv6采用。 没有人愿意先走,因为他们担心自己的网站可能显得不稳定,而且用户将会转移到没有IPv6支持的竞争网站。

许多公司都致力于解决问题。 可以说,与HåkanLindqvist相联系的Happy Eyballs方法是解决问题最重要的贡献。

2011年有充分的信心,问题得到解决,主要网站进行了24小时协调testing,称为世界IPv6日 。 协调的testing运行旨在确保任何用户仍然有问题不会不正确地跳到结论,问题是与一个特定的网站,而不是自己的连接。

结果非常成功,一年后,各大网站在世界IPv6发布会上永久性地打开了IPv6。

我们已经接近转折点,由NAT造成的问题将比由于IPv6损坏而引起的问题大。 现在这两个都足够小,如果我们已经越过这个临界点,就很难衡量了。

我的build议是只要你有原生的双堆栈连接,就configuration双栈DNSlogging。 你越早开始,你就不得不解决任何问题。 当它变成真正的任务关键时,你希望它保持稳定。

不要在6to4或Teredo地址上部署服务器,如果这些是你在服务器上获得IPv6的唯一select,我会build议切换到更好的提供者。

不过,如果你的服务器有一个公共的IPv4地址,我build议直接在你自己的服务器上configuration6to4和Teredo中继。 使用6to4或Teredo,部署这些中继将为您的服务器提供更可靠的连接。

偶尔还会有客户的IPv6连接断开。 但过去两年,这些客户会遇到主要网站的问题,所以你可以期待那些解决自己的问题。 他们不太可能只看到您的网站有问题。

但是,您必须注意您自己站点的IPv6连接。 如果您的网站在IPv6连接上出现中断,则可能会影响less数使用IPv6连接的用户以及预先感兴趣的浏览器。 那些只会看到您的网站的问题,但其他一切都会工作。

仅仅因为IPv6目前用户较less,并不意味着它可以安全地部署在比IPv4更less的监控环境中。 如果有的话,我说你需要更多的IPv6连接监控,因为你更有可能不会注意到任何问题。

添加一些东西到另一个答案和评论:

我意识到许多ISP(至less我在哪里)不提供IPv6连接。 因此,从这样的区域通过IPv6的浏览器访问将成功地执行AAAA(v6)请求。 但是,使用该v6地址的http(s)连接将会失败。

不,它几乎不会尝试build立IPv6连接。 系统知道它没有IPv6连接。 getaddrinfo()不会将任何IPv6地址返回给应用程序。 (无论如何,它会进行AAAA查询的原因是因为该网站可能有真正有效的AAAAlogging,例如本地主机IP地址::1

这只是一小部分系统的一个问题:那些错误地认为自己具有IPv6连接性并且正在运行几年前的浏览器的系统。 如上所述,由于世界IPv6日和世界IPv6启动,其中大部分已经被固定,因为当Facebook和谷歌停下来时街头stream血,浏览器已经实现了快乐眼球,所以失败的连接只需要一对夫妇百毫秒。