一、什么是IPv6。
IP version 6 (IPv6)是IP协议(Internet Protocol)的最新版本,设计作为IP version 4 (IPv4) [RFC791]的继任版本。从IPv4到IPv6的改变主要有以下几点:
1) 扩展的地址容量;
2) 简化的头字段格式;
3) 改进了报文扩展字段和选项,使转发更灵活高效;
4) 提供流标签功能;
5) 增强的认证和隐私功能。
二、为什么迁移ipv6,迁移ipv6背景
1) 主因:政策驱动
2017年11月26日,中共中央办公厅、国务院办公厅印发了《推进互联网协议第六版(IPv6)规模部署行动计划》,链接:http://www.xinhuanet.com/2017-11/26/c_1122012631.htm
2018年5月2日,工信部发文:工业和信息化部关于贯彻落实《推进互联网协议第六版(IPv6)规模部署行动计划》的通知,链接:http://www.miit.gov.cn/n1146295/n1652858/n1652930/n3757020/c6154756/content.html
2) 辅因:市场、技术驱动
随着5G、IoT技术的不断成熟,万物互联时代即将到来,随之而来的是海量的终端设备接入需求,目前的IPv4地址空间不足以支撑未来发展要求。另外由于IPv4地址的枯竭,也使得其交易价格也在不断攀升。
三、政策解读
根据中办,国办下发的《行动计划》,和工信部下发的《通知》。我们可以总结出以下要点:
1) 时间节奏:分为3个时间节点,2018年末,2020年末和2025年。
2) 改造目标:2018年末要求IPv6活跃用户数超2亿,v6用户占总用户数不低于20%;2020年末要求超5亿,不低于50%;2025年v6用户数要达到世界第一。
3) 改造对象:
a) 应用:2018年末要求前50大互联网企业网站及应用,省级政府网站,央企网站和新闻媒体网站全部改造支持IPv6;2020年末要求前100大互联网企业,市级政府和新闻媒体和工业互联网应用支持IPv6。
b) 基础设施:这一部分主要是和电信运营商相关的滚动改造任务。对各个时间点运营商移动/接入/骨干/国际出口网络等需要达到的目标。
c) 应用基础设施:重点是2018年末要求云计算厂商提供的50%云产品支持IPv6;2020年末100%的云产品支持IPv6。
四、阿里云IPv6演进规划:稳中求进
IPv4到IPv6的演进遵循先外部后内部,以双栈技术为过渡的原则。
第一期主要对公网入口相关产品进行IPv6的改造,目标是应对政策文件的第一阶段要求,即2018年底前,前50大互联网企业的应用及政府部门网站具备IPv6访问能力,提供用户快速部署IPv6的解决方案。主要涉及SLB,IPv6转换服务,云解析DNS,和CDN四款产品,相关产品已经于2018年6月上线发布。
第二期将对主要云产品进行IPv4和IPv6双栈改造,包括VPC,ECS,DTS等。目标是为客户提供端到端的IPv6解决方案,让客户能够完全利用上IPv6的网络特性。预计2018年下半年完成。
第三期的目标是去掉IPv4访问能力,使产品只支持IPv6访问。这是一个长期的目标,具体时间需要统筹考虑政策,市场,技术等多方面因素。预计时间在2019年以后。
五、阿里云IPv6相关产品介绍
1) 负载均衡SLB
传统的负载均衡只提供IPv4的访问能力,且后端通过v4方式访问后端服务器。鉴于第一期VPC和ECS等核心组建不具备IPv6能力条件下,采用先将暴露给客户的公网侧进行v6改造的方案。
通过在SLB上暴露公网IPv6地址,实现对IPv6用户访问能力,同时在SLB内部进行NAT64转换,将前端v6地址转为v4地址,仍然使用v4方式访问后端服务器,这样就实现了v6用户访问v4后端服务器的能力。
2) 阿里云IPv6转换服务
对于没有上云的客户,改造v6的难点主要在于技术难度大,周期长,需要大量资金等,而且会面临改造过程中的业务中断风险。随着政策要求的2018年末时间点越来越近,所剩时间已经不多。基于这个背景,阿里云推出了IPv6转换服务,客户可以方便的在阿里云上部署IPv6公网入口,同时将实例后端关联到线下IDC或其他云平台的服务器。在阿里云上完成v6 to v4地址的转换,让客户能够在短时间内免配置快速部署IPv6,完成政策规定的指标要求。
3) 云解析DNS
DNS是面对客户的第一个入口,根据我们对政策的分析,有些网站采取的不同域名分别解析v4和v6地址的做法是不符合政策精神的。云解析DNS现在可以做到一个域名,双栈地址,即用户对一个域名的查询,会将记录的v4和v6地址同时返回给客户,阿里云DNS符合政策要求。
4) 阿里云CDN
CDN已经是现在互联网应用不可或缺的一环。CDN是否支持IPv6是客户迁移时一定会考虑的因素。目前教育网CDN v6节点已经全部上线,其他三大运营商的CDN v6节点在陆续开通中。客户关心的一个问题是,在CDN v6节点尚未全面铺开时,是否会有频繁断网的可能从而影响用户的访问体验?答案是不会,目前已有的v6用户均为v4/v6双栈部署,短期内不存在v6 only的用户。在CDN访问过程中,用户首先需要进行DNS查询过程,阿里云DNS会根据CDNv6节点开通情况,将本地相同运营商的CDN节点地址返回给客户,也就是说,只有在同区域同运营商具备CDNv6节点资源时,用户才能得到CDNv6节点地址并进行访问,其他情况,DNS会返回给客户v4地址,通过v4方式访问网站,因此从用户角度看,这一过程是平滑无感知的。
5) DDoS
公网的安全防护也是客户不得不考虑的问题之一,因此在IPv6发布的第一天,阿里云就已经支持v6的DDoS功能,默认对客户开启基础免费版本。
六、客户解决方案
下面两个场景主要是对第一期迁移任务提出的,由于第一期迁移任务量大,缺乏环境基础,因此相对于复杂的应用内部改造,从公网入口改造相对容易也能快速看到成效。
1) 场景一:应用部署在阿里云
这是典型的在阿里云上部署业务的场景示意图,涉及到DNS,CDN和SLB产品,由于这三个产品均已支持IPv6,因此IPv6客户可以获得和IPv4客户一样的使用体验。部署的过程分为以下几步:
1. 创建新的SLB v6实例并将IPv4版本ECS下挂到IPv6 SLB和IPv4 SLB配置方式相同。
2. 在DNS中增加IPv6解析地址记录。
3. 阿里云CDN已支持双栈。
其中NAT64的处理过程对客户透明,客户无需额外配置,只需按一般SLB的操作方法,直接将v4后端服务器加载到v6 SLB下面即可。
2) 场景二:应用部署在其他环境
对于应用部署在其他环境的客户,需要应用最新推出的阿里云IPv6转换服务,这个服务实例前端暴露给客户一个公网IPv6地址,后端暴露2个IPv4地址,用于和客户的线下其他环境的IPv4公网进行通信。IPv6客户发起访问时,流量从IPv6转换服务实例的v6公网进入,在实例中进行NAT64的转换后,由IPv4出口通过公网回到客户其他环境。这种方案的优势是:
1. 现有业务0改造,免配置快速部署IPv6。
2. IPv6转换服务实例采用高可用部署。
缺点是:
1. 由于后端使用v4公网访问用户数据中心,产生了额外的公网费用。
2. 也是由于公网访问后端,转发质量由运营商公网决定,没有保障。
3. 用户数据中心暂无法获取客户端的地址。
以上,这个方案只适合短期使用,并非长期方案。