IPv6升级改造包括什么?
关于IPv6技术升级具体做了什么,在我脑海里只是更换了域名解析的IP而已,所以找了这篇文章,帮助初步解惑。
原文地址:https://www.maczd.com/post/web-ipv6-upgrading.html#prettyPhoto
网际协议第六版 IPv6(Internet Protocol version 6)是最新的互联网协议,协议标准最早诞生于 1998 年 12 月。IPv6 的出现解决了 IPv4 地址枯竭的问题和提升网络传输效率,不过由于开始时期 IPv6 的标准复杂以及需要硬件软件同时支持,运营商和用户对升级 IPv6 积极性并不高。
一、为什么要对网站进行 IPv6 改造
近些年来,IPv6 普及迅猛开来,许多国家的电信运营商纷纷跟进建设 IPv6。伴随着运营商旧设备的报废,新设备普遍支持 IPv6,一些 IPv6 的基础设施如 DNS 等也基本建立完成。
2011年 6 月 8 日,以 Google、Facebook、雅虎等互联网巨头网站相继开始支持 IPv6; 在 2017 年,Google 曾宣布大约有 20% 的访客使用 IPv6 进行搜索。
中国也印发了《推进互联网协议第六版(IPv6)规模部署行动计划》,计划到 2018 年末,中国 IPv6 用户不低于 2亿,占互联网用户比例不低于 20%,2020 年,IPv6 用户不低于 5 亿,占互联网用户比例不低于 50%,2025 年末,中国 IPv6 规模、用户规模世界第一。
资料来源:http://www.xinhuanet.com//politics/2017-11/26/c_1122012631.htm
在中国,三大基础运营商已经基本上完成了对 IPv6 的改造,如果您的设备支持 IPv6,现在基本上可以连接到 IPv6 网络。因此,现在有必要对现有网站进行 IPv6 升级改造,以便尽早支持 IPv6 访客。
二、如何对网站进行 IPv6 改造
网站 IPv6 改造主要是从以下方面:
(一)网站 IPv6 改造条件
1、域名支持 AAAA 解析
AAAA 解析是将域名解析为 IPv6 地址。目前几乎主流的域名商和提供的 DNS 解析服务都支持 AAAA 解析。
2、服务器系统软件支持 IPv6
目前几乎所有的操作系统和服务器软件都支持 IPv6。在软件上几乎不存在问题。
3、主机运营商提供 IPv6 地址
目前网站 IPv6 改造最主要的还是需要主机运营商的支持,需要提供和分配 IPv6 的地址。
(二)服务商提供的 IPv6 方式
目前国内的云主机服务商(2018年)主要有以下几种实现方法:
(1)IPv6 双栈
主要是华为云和景安云,同时为主机服务器提供 IPv6 和 IPv4 双地址,主机可以直接和 IPv6 和 IPv4 网络进行通信。
华为云 IPv6 解决方案
国外大部分的服务器也是使用类似的方案。
(2)IPv6 转换
主要是阿里云和百度云在用。运营商为服务器提供一个 IPv6 地址,但不是配置在主机网卡上,而是统一管理,在前端上对 IPv6 流量(TCP、UPD)转换成 IPv4 流量,再转发到后端的服务器,有点像于端口转发的应用层代理。
百度云 IPv6 终结
优点是不需要改变主机原有结构,特备是对于 HTTP 服务器可以做到快速实现。缺点是服务器不能主动的进行 IPv6 通信,同时一些软件会有异常,如 HTTP 服务器日志记录根本不到 IPv6 地址。
三、本站 IPv6 改造方案
本站一共使用了两台服务器,分别进行了网站 IPv6 支持改造,步骤如下:
(一)百度云 IPv6 改造步骤
本站托管于百度云中,目前百度云为客户提供了名为 IPv6 终结功能,就是上述所说的 IPv6 转换服务。目前还在内测阶段。经过申请,说明了使用目的后,客服为我分配了一个 IPv6 地址。详细的使用方法请参照IPv6终结者配置说明:IPv6终结功能
根据百度云IPv6 终结者服务说明,所有通过 IPv6 的流量,协议和目的端口不变,源地址转换为固定地址段内的IPv4地址(106.12.248.0/21)再转发到我的服务器上。
对于 7 层 HTTP 应用,会加入 X-Forwarded-For 来标注真实的 IPv6 地址,不然在自己的服务器看来,都是来自 106.12.248.0/21 这些地址。
不过由于我的网站使用了 HTTPS, X-Forwarded-For 这个 http 头不能正常写入。所有 IPv6 来的流量在我看来都是 来自106.12.248.0/21 这个网段。最后只要将 DNS 的国内 AAAA 记录解析到 这个地址即完成了网站 IPv6 的改造升级。
(二)Vultr 服务器 ipv6 改造步骤
对于 vultr 服务器为本站提供加速。vultr 使用的技术是 IPv6 双栈,并且给了我一个 /64 的子网,原则上为我分配了2的64次方的 IP 地址,这些 ipv6 地址默认是可用的。
简单通过配置为网卡指定了上述子网中任意的 IPv6 地址后,只要将 DNS 配置海外访客的 AAAA 解析结果配置到这个 IPv6 地址即可完成网站 IPv6 改造。后续会介绍如何为网卡指定 IPv6 地址。
需要注意的是 IPv6 防火墙和 IPv4 防火墙不同,需要单独配置,请一定要尽早配置,以免内部服务暴露在 IPv6 公网上。
四、结语
改造后网站将完全支持国内外的 IPv6 访客的访问,通过 DNS 将不同位置访客自动分配到不同的服务器,速度也都很不错。
这篇文章写于 2018年,预计未来的两年,将是世界 IPv6 快速发展的时代,预计越来越多的服务器、CDN 都会提供 IPv6 服务。本文介绍的方案仅适用于最近,若有不足之处,还请多提意见。