标签 IPv6 下的文章

我一直在努力学习关于 IPv6 的相关知识。一方面,IPv6 的基础概念是很简单的(没有足够的 IPv4 地址可以满足互联网上的所有设备,所以人们发明了 IPv6!每个人都能有足够的 IPv6 地址!)

但是当我试图进一步理解它时,我遇到了很多问题。其中一个问题是:为什么 twitter.com 不支持 IPv6。假设,网站不支持 IPv6 并不会造成很多困难,那么为什么网站需要支持 IPv6 呢?

我在 Twitter 上询问了很多人 为什么他们的服务器支持 IPv6,我得到了很多很好的答案,我将在这里总结一下。事先说明一下,因为我对 IPv6 基本上毫无经验,所以下面所总结的理由中可能会有写得不准确的地方,请大家多多包涵。

首先,我想解释一下为什么 twitter.com 可以不支持 IPv6,因为这是最先让我困惑的地方。

怎么知道 twitter.com 不支持 IPv6 呢?

你可以使用 dig 命令以 AAAA 的选项查询某一个域名的 IPv6 地址记录,如果没有记录,则表明该域名不支持 IPv6。除了 twitter.com,还有一些大型网站,如 github.comstripe.com 也不支持 IPv6。

$ dig AAAA twitter.com
(empty response)
$ dig AAAA github.com
(empty response)
$ dig AAAA stripe.com
(empty response)

为什么 twitter.com 仍然适用于 IPv6 用户?

我发现这真的很令人困惑。我一直听说因为 IPv4 地址已经用完了,从而很多互联网用户被迫要使用 IPv6 地址。但如果这是真的,twitter.com 怎么能继续为那些没有 IPv6 支持的人提供服务呢?以下内容是我昨天从 Twitter 会话中学习到的。

互联网服务提供商(ISP)有两种:

  1. 能为所有用户拥有足够 IPv4 地址的 ISP
  2. 不能为所有用户拥有足够 IPv4 地址的 ISP

我的互联网服务提供商属于第 1 类,因此我的计算机有自己的 IPv4 地址,实际上我的互联网服务提供商甚至根本不支持 IPv6。

但是很多互联网服务提供商(尤其是北美以外的)都属于第 2 类:他们没有足够的 IPv4 地址供所有用户使用。这些互联网服务提供商通过以下方式处理问题:

  • 为所有用户提供唯一的 IPv6 地址,以便他们可以直接访问 IPv6 网站
  • 让用户 共享 IPv4 地址,这可以使用 CGNAT(“ 运营商级 NAT carrier-grade NAT ”)或者“464XLAT”或其他方式。

所有互联网服务提供商都需要 一些 IPv4 地址,否则他们的用户将无法访问 twitter.com 等只能使用 IPv4 的网站。

为什么网站要支持 IPv6?

现在,我们已经解释了为什么可以 不支持 IPv6。那为什么要支持 IPv6 呢?有下面这些原因。

原因一:CGNAT 是一个性能瓶颈

对我而言,支持 IPv6 最有说服力的论点是:CGNAT 是一个瓶颈,它会导致性能问题,并且随着对 IPv4 地址的访问变得越来越受限,它的性能会变得更糟。

有人也提到:因为 CGNAT 是一个性能瓶颈,因此它成为了一个有吸引力的拒绝服务攻击(DDoS)的目标,因为你可以通过攻击一台服务器,影响其他用户对该服务器的网站的可用性。

支持 IPv6 的服务器减少了对 CGNAT 的需求(IPv6 用户可以直接连接!),这使得互联网对每个人的响应速度都更快了。

我认为这个论点很有趣,因为它需要各方的努力——仅仅你的网站支持 IPv6,并不会让你的网站更好地运行,而更重要的是如果 几乎每个网站 都支持 IPv6,那么它将使每个人的互联网体验更好,尤其对于那些无法轻松访问 IPv4 地址的国家/地区。

实际上,我不知道这在实践中会有多大的关系。

不过,使用 IPv6 还有很多更自私的论点,所以让我们继续探讨吧。

原因二:只能使用 IPv6 的服务器也能够访问你的网站

我之前说过,大多数 IPv6 用户仍然可以通过 NAT 方式访问 IPv4 的网站。但是有些 IPv6 用户是不能访问 IPv4 网站的,因为他们发现他们运行的服务器只有 IPv6 地址,并且不能使用 NAT。因此,这些服务器完全无法访问只能使用 IPv4 的网站。

我想这些服务器并没有连接很多主机,也许它们只需要连接到一些支持 IPv6 的主机。

但对我来说,即使没有 IPv4 地址,一台主机也应该能够访问我的站点。

原因三:更好的性能

对于同时使用 IPv4 和 IPv6(即具有专用 IPv6 地址和共享 IPv4 地址)的用户,IPv6 通常更快,因为它不需要经过额外的 NAT 地址转换。

因此,有时支持 IPv6 的网站可以为用户提供更快的响应。

在实际应用中,客户端使用一种称为“Happy Eyeballs”的算法,该算法能够从 IPv4 和 IPv6 中为用户选择一个最快的链接。

以下是网站支持 IPv6 的一些其他性能优势:

  • 使用 IPv6 可以提高搜索引擎优化(SEO),因为 IPv6 具有更好的性能。
  • 使用 IPv6 可能会使你的数据包通过更好(更快)的网络硬件,因为相较于 IPv4,IPv6 是一个更新的协议。

原因四:能够恢复 IPv4 互联网中断

有人说他碰到过由于意外的 BGP 中毒,而导致仅影响 IPv4 流量的互联网中断问题。

因此,支持 IPv6 的网站意味着在中断期间,网站仍然可以保持部分在线。

原因五:避免家庭服务器的 NAT 问题

将 IPv6 与家庭服务器一起使用,会变得简单很多,因为数据包不必通过路由器进行端口转发,因此只需为每台服务器分配一个唯一的 IPv6 地址,然后直接访问服务器的 IPv6 地址即可。

当然,要实现这一点,客户端需要支持 IPv6,但如今越来越多的客户端也能支持 IPv6 了。

原因六:为了拥有自己的 IP 地址

你也可以自己购买 IPv6 地址,并将它们用于家庭网络的服务器上。如果你更换了互联网服务提供商,可以继续使用相同的 IP 地址。

我不太明白这是如何工作的,是如何让互联网上的计算机将这些 IP 地址路由转发给你的?我猜测你需要运行自己的自治系统(AS)或其他东西。

原因七:为了学习 IPv6

有人说他们在安全领域中工作,为保证信息安全,了解互联网协议的工作原理非常重要(攻击者正在使用互联网协议进行攻击!)。因此,运行 IPv6 服务器有助于他们了解其工作原理。

原因八:为了推进 IPv6

有人说因为 IPv6 是当前的标准,因此他们希望通过支持 IPv6 来为 IPv6 的成功做出贡献。

很多人还说他们的服务器支持 IPv6,是因为他们认为只能使用 IPv4 的网站已经太“落后”了。

原因九:IPv6 很简单

我还得到了一堆“使用 IPv6 很容易,为什么不用呢”的答案。在所有情况下添加 IPv6 支持并不容易,但在某些情况下添加 IPv6 支持会是很容易的,有以下的几个原因:

  • 你可以从托管公司自动地获得 IPv6 地址,因此你只需要做的就是添加指向该地址的 AAAA 记录
  • 你的网站是基于支持 IPv6 的内容分发网络(CDN),因此你无需做任何额外的事情

原因十:为了实施更安全的网络实验

因为 IPv6 的地址空间很大,所以如果你想在网络中尝试某些东西的时候,你可以使用 IPv6 子网进行实验,基本上你之后不会再用到这个子网了。

原因十一:为了运行自己的自治系统(AS)

也有人说他们为了运行自己的自治系统(我在这篇 BGP 帖子 中谈到了什么是 AS),因此在服务器中提供 IPv6。IPv4 地址太贵了,所以他们为运行自治系统而购买了 IPv6 地址。

原因十二:IPv6 更加安全

如果你的服务器 有公共的 IPv6 地址,那么攻击者扫描整个网络,也不能轻易地找出你的服务器地址,这是因为 IPv6 地址空间太大了以至于不能扫描出来!

这显然不能是你仅有的安全策略,但是这是安全上的一个大大的福利。每次我运行 IPv4 服务器时,我都会惊讶于 IPv4 地址一直能够被扫描出来的脆弱性,就像是老版本的 WordPress 博客系统那样。

一个很傻的理由:你可以在你的 IPv6 地址中放个小彩蛋

IPv6 地址中有很多额外的位,你可以用它们做一些不重要的事情。例如,Facebook 的 IPv6 地址之一是“2a03:2880:f10e:83:face:b00c:0:25de”(其中包含 face:b00c)。

理由还有很多

这就是到目前为止我所了解的“为什么支持 IPv6?”的理由。

在我理解这些原因后,相较于以前,我在我的(非常小的)服务器上支持 IPv6 更有动力了。但那是因为我觉得支持 IPv6,对我来说只需要很少的努力。(现在我使用的是支持 IPv6 的 CDN,所以我基本上不用做什么额外的事情)

我仍然对 IPv6 知之甚少,但是在我的印象中,支持 IPv6 并不是不需要花费精力的,实际上可能需要大量工作。例如,我不知道 Twitter 在其边缘服务器上添加 IPv6 支持需要做多少繁杂的工作。

其它关于 IPv6 的问题

这里还有一些关于 IPv6 的问题,也许我之后再会探讨:

  • 支持 IPv6 的缺点是什么?什么会出错呢?
  • 对于拥有了足够 IPv4 地址的 ISP 来说,有什么让他们提供 IPv6 的激励措施?(另一种问法是:我的 ISP 是否有可能在未来几年内转为支持 IPv6?或者他们可能不会支持 IPv6?)
  • Digital Ocean (LCTT 译注:一家建立于美国的云基础架构提供商,面向软件开发人员提供虚拟专用服务器(VPS))只提供 IPv4 的浮动地址,不提供 IPv6 的浮动地址。为什么不提供呢?有更多 IPv6 地址,那提供 IPv6 的浮动地址不是变得更 便捷 吗?
  • 当我尝试 ping IPv6 地址时(例如 example.com 的 IP 地址2606:2800:220:1:248:1893:25c8:1946),我得到一个报错信息 ping: connect: Network is unreachable。这是为什么呢?(回答:因为我的 ISP 不支持 IPv6,所以我的电脑没有公共 IPv6 地址)

这篇 来自 Tailscale 的 IPv4 与 IPv6 文章 非常有意思,并回答了上述的一些问题。


via: https://jvns.ca/blog/2022/01/29/reasons-for-servers-to-support-ipv6/

作者:Julia Evans 选题:lujun9972 译者:chai001125 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

新的 BitB 攻击形式仿造 OAuth 窃取用户凭证

成千上万的网站使用 OAuth 协议,让访问者使用他们在谷歌、Facebook 或苹果等公司的现有账户登录。“浏览器中的浏览器”(BitB)技术利用了这个方案。BitB 不是真正打开第二个浏览器窗口,以连接到用于登录或付款的网站,而是使用一系列 HTML 和 CSS 技巧,显示一个欺骗窗口。其显示的 URL 可以显示一个有效的地址,也有一个挂锁和 HTTPS 前缀。窗口的布局和行为看起来与真实的东西完全一样,除了不能不能被调整大小,完全最大化或拖到主窗口之外。

老王点评:真是防不胜防,一时不注意还真难以发现。

高通公司正在计划为其芯片增加 AV1 支持

发布于 2018 年的开放视频编解码器 AV1 的普及一直很慢,主流视频供应商在等待更广泛的设备支持,而设备厂商则在等待视频供应商提供更多的 AV1 视频。但现在这种情况已经在逐步改变。据称 高通公司正计划在其即将推出的旗舰产品 Snapdragon 移动处理器中加入对 AV1 的原生支持。预计该芯片最早将在今年年底推出。除了高通之外,三星、联发科、博通也都推出了支持 AV1 解码的芯片组,而像谷歌等流媒体设备厂商也在推动其设备增加 AV1 的支持。

老王点评:AV1 什么都好,就是不普及,希望能看到普及吧。

老式 IPv6 设备会泄露你的隐私

在 IPv6 网络中,每个设备都有一个公开的 IPv6 地址。这些地址应该定期换成新的地址。这样当你再次访问一个网站时,仅从你的 IPv6 地址来看,网站并不清楚你的设备已经回来了,这可以给予你一定程度的隐私。在分配地址时,路由器会发送一个网络前缀给客户,然后客户选择一个主机地址。曾经这个主机地址基于设备的硬件 MAC 地址编码,这被称之为 EUI-64。但早在 2007 年就提出的 IPv6 隐私扩展要求随机化地址的主机部分,也就是禁用 EUI-64。而在 研究中发现,大约不到 1/5 的设备仍然默认使用 EUI-64,这造成了隐私泄露。同时,许多 Linux 发行版并没有默认启用隐私扩展,使用 Linux 的产品很可能在不知不觉中将其用户的隐私置于危险之中。

老王点评:协议设计的很好,奈何现实比较可怜。

中国主要网站仍然不支持 IPv6

对 Alexa 排名前 500 网站的 检查显示,支持 IPv6 的网站占 25%。而中国主要网站基本不支持 IPv6,如天猫、百度、搜狐、淘宝、京东、奇虎360、微博、新浪、新华网等等。全世界的 IPv6 普及度 正在逐渐增长,根据 Google IPv6 的统计 显示,IPv6 的普及度已经达到了 35%,但中国的 IPv6 的普及度仍然较低。

老王点评:现在电信运营商对 IPv6 的支持比较好,毕竟 IP 不太够用。但是各个网站对此则动力不足。

磁带仍占有数据备份的 4% 份额

虽然早在 2003 年 LiveVault 就宣称“磁带备份是上个世纪的事情”,但将近 20 年过去了,仍有 4% 的组织 使用磁带备份,15% 在使用 “硬盘+磁带” 的混合式备份方案,但云端备份的使用率已增长到 51% 。磁带备案难以退出市场的主要原因是:组织机构需要保留多年的历史备份,大企业的转型动作更是既困难又缓慢;磁带的成本其实相当划算;磁带备份具有物理隔离的特性。

老王点评:虽然磁带备份看起来很老旧了,但是也有现在云端备份所不具备的一些优势。

世界论文索引 General Index 上线

一位美国技术专家 发布 了一个包含 1 亿多篇期刊文章中单词和短语的索引 General Index——其中包括了许多付费论文。 索引于 10 月 7 日发布可免费使用,包含超过 3550 亿个单词及相应论文中的句子片段。此举是为了帮助科学家使用软件从已发表论文中收集见解,即使他们没有合法访问相关论文的权限。索引不包含论文全文,只包含最多五个单词的句子片段。早期访问过该索引的研究人员表示,这是帮助他们使用软件搜索文献的重大进展。

老王点评:这对于科研来说应该很有用。

Windows XP 问世 20 年

微软的 Windows 系统有过很多经典,对当前一代的网民来说,Windows XP 系统可能是最难忘的,国内很多人触网都在 Windows XP。Windows XP 于 2001 年 2 月 5 日公布,10 月 25 日正式上市。Windows XP 在 2002 年到 2008 年之间发布了三个 SP3 服务包,最终在 2009 年结束了主流支持,扩展支持结束于 2014 年。据 Statcounter 的数据显示,它依然有 0.59% 的份额,比 Vista 的 0.26% 依然高出一倍多。

虽然 Windows XP 很经典,不过给我印象最深刻的是 Windows 95。

谷歌市场上有 120 多款恶意加密货币应用

这些应用程序旨在误导无辜和毫无戒心的用户将它们安装到自己的智能手机上。这些应用程序采用了通常的“快速致富”骗局,吸引用户投资于“云挖矿服务”并获得利润。趋势科技称,“尽管这些软件与云挖矿操作无关,也没有任何的加密货币挖矿特性,其中的一些应用程序提示用户付款,以增加挖矿能力。”除了谷歌已经禁止的 8 款恶意加密货币应用外,趋势科技称,目前市场上还有120多个假加密货币挖矿应用,这些应用程序在去年影响了 4500 多名用户。

贪婪就是原罪。

印度的 IPv6 采用率最高

根据谷歌用户数据的分析,印度以 61.67% 的采用率领先全球。马来西亚和法属圭亚那分别位列第二和第三。第四是法国(48.38%),第五是中国台湾(48.0%)。美国排在第六位(47.5%)。由于众所周知的原因,这个报告里中国大陆的数据很低,并不能反映中国实际的 IPv6 采用率。

不管你喜欢不喜欢,IPv6 都已经用的越来越多了。

谷歌宣布新的游戏化漏洞赏金平台

谷歌的漏洞奖励计划(VRP)共发现 11055 个漏洞,奖励了 2022 名研究人员,总奖励金额近 3000 万美元,并有近 20 名漏洞猎人加入了谷歌 VRP 团队。为了纪念该计划的 10 周年,他们宣布了一个新的平台:bughunters.google.com,这个新网站将谷歌所有的 VRP(谷歌、安卓、滥用、Chrome 和 Play 商店)更紧密地联系在一起。该平台将具有游戏化功能,提供更多互动或竞争的机会。将有每个国家的排行榜,并有机会获得特定错误的奖励或徽章。

加入游戏化元素后,真成了赏金猎人打怪模式了。

中国 IPv6 活跃用户数已达网民半数

网信办在回答记者问时提到:截至 2021 年 5 月,我国 IPv6 地址拥有量达到 59030 块(/32),位居世界第一,我国 IPv6 活跃用户数达 5.28 亿,占互联网网民总数的 53.39%。

按网信办《通知》要求,到 2023 年末,IPv6 活跃用户数达到 7 亿,物联网 IPv6 连接数达到 2 亿。到 2025 年末,IPv6 活跃用户数达到 8 亿,物联网 IPv6 连接数达到 4 亿。之后再用五年左右时间,完成向 IPv6 单栈的演进过渡。

在 IPv4 地址得不到满足的情况下,转而拥抱 IPv6 反而走在了其它 IPv4 富裕国家前面。

微软新提案让 Chrome 页面加载速度更快

在一个新的 Chromium 提案中,微软正通过 chrome://protocol 为获取的脚本开发新的“代码缓存”。在启用之后,能提高 Chrome 在 Windows、Linux、macOS 和其他桌面平台上的页面加载速度。在加载和执行一个脚本后,V8 可以将为该脚本生成的解释器字节码序列化。之后,如果 Blink 告诉 V8 再次运行相同的脚本,并提供以前的序列化字节码,那么 V8 可以跳过最初的解析步骤,脚本运行得更快。这对于页面加载时间来说非常重要。在使用新功能之后,微软已经观察到在新标签页上首次绘制内容的时间减少了 11%-20%。

自从微软使用 Chromium 作为 Edge 内核之后,Chromium 的改进速度就明显加快了。

微软的 Linux 仓库遭遇 22 小时中断

上周三,packages.microsoft.com 遭遇严重瘫痪。这是微软为 CentOS、Debian、Fedora、OpenSUSE 等 Linux 发行版提供软件安装程序的仓库。这次故障影响了试图安装 .NET Core、Microsoft Teams、Microsoft SQL Server for Linux 等的用户,也影响了 Azure 的开发管道。

微软工程师在最初报告后约 5 小时确认了这一故障,并隐晦地提及基础设施团队遇到了一些空间问题。

作为一家致力于开源的、拥有全球顶级的云服务的企业,在提供的开源基础设施如此漫不经心,我有点怀疑它的诚意。

我国网络基础设施已经全部支持 IPv6

中国通信标准化协会副理事长兼秘书长闻库表示,目前,网络基础设施方面,在三大运营商,CDN 企业、数据中心企业的共同努力下,已全部支持 IPv6。应用基础设施方面,数据中心、云产品、内容分发也初步具备全国全网 IPv6 的支持服务能力,用户数量和用户的使用量取得不菲的成效。

虽然有些人对迁移到 IPv6 不满意,甚至还有人搞了个所谓的“IPv9”,但是我认为 IPv6 才是当前可行的解决方案。

美国 NASA 努力修复哈勃太空望远镜 1980 年代的计算机故障

哈勃太空望远镜于 1990 年被发射到低地球轨道,当时使用的是一台更古老的计算机。在接下来的 13 年里,它接受了五次来自美国航天飞机的宇航员的升级和维修。在最近,该计算机在 6 月 13 日星期日停止了运行。14 日重新启动计算机的尝试失败。而望远镜本身和科学仪器仍然处于良好的状态。据判断是内存模块退化导致的故障。

真是老当益壮,但是这个计算机实在太老了,不知道能不能换台新的,要论性能的话,没准树莓派都更高一些。