由表及里,业务系统从IPv4演进IPv6之路

导语
不知道大家有没有注意到,越来越多的APP启动时,底部显示支持IPv6网络。对不关心技术的同学来说,这可能只是简单的小变动,但是对当今的互联网行业来讲,却是一件大事。支持IPv6网络,从最基础的互通互联层面进行了变革,如同电话号码簿升级一般,互联网"门牌"也实现了从12位数到128位数的升级,全世界可以使用的“IPv6地址空间扩大到2的128次方。这个空间大到无法想象,也就是说,地球上每一平方米,都可以有10的26次方的地址,甚至可以分配地址到空中的尘埃”

1587392361487.png

那么IPv6到底是什么,怎么知道用的系统支持IPv6呢?

我们就来介绍一下

一、IPv6简介

网际协议第6版(英语:Internet Protocol version 6,缩写:IPv6)是网际协议的最新版本,用作互联网的网络层协议。用它来取代IPv4主要是为了解决IPv4地址枯竭问题,同时它也在其他方面对于IPv4有许多改进。IPv6的设计目的是取代IPv4,然而长期以来IPv4在互联网流量中仍占据主要地位,IPv6的使用增长缓慢。在2019年12月,通过IPv6使用Google服务的用户百分率首次超过30%。

二、国内IPv6现状

2017年11月,中共中央办公厅、国务院办公厅印发《推进互联网协议第六版(IPv6)规模部署行动计划》(以下简称《行动计划》),明确提出未来五到十年我国基于IPv6的下一代互联网发展的总体目标、路线图、时间表和重点任务等。
截至2019年6月,我国IPv6活跃用户数达1.3亿,基础电信企业已分配IPv6地址用户数12.07亿。
全国91家省部级政府门户网站中主页可通过IPv6访问的网站共有83家,占比为91.2%;全国96家中央企业门户网站中主页可通过IPv6访问的网站有77家,占比为80.2%。
典型商业网站也在积极推进IPv6升级。截至2019年6月,国内用户量排名前50的商业网站及移动应用可通过IPv6访问的达40家,覆盖门户/新闻、社交、视频、电商、搜索、游戏、浏览器、电子邮件、文件下载、移动应用商店、生活服务、出行等主流互联网应用。

之所以如此紧迫的推进支持IPv6,主要还是由于IPv4地址的匮乏。2011年11 月 25 日,全球五大区域互联网注册管理机构之一的欧洲网络协调中心(RIPE NCC)宣布 IPv4 地址已全部用完,该机构负责欧洲、中东和部分中亚的 IP 地址分配和注册,其声明中写道:

我们从可用池中仅剩的地址里分配了最后的 /22 IPv4。

前不久一则消息披露,日本一家组织公开出售43.0.0.0/8的绝大部分地址,合计有1470万IPv4地址,引来众多国际大公司的觊觎。虽然互联网数字分配机构不出售IPv4地址,但是支持地址的转移,也为各方出售地址获利创造了空间。据了解,当前每个IPv4地址的单价为20~30美元,由此估计上述交易的总金额高达3亿美元以上!

各国已获得的IPv4数目严重不均衡,中国以占全球20%的人口,仅获得3亿余IPv4地址。

NIC2016年年报:2016年全球IP地址分配回顾—中国教育和科研计算机网CERNET

介绍完现状,提供互联网服务的开发者们,又该如何让IPv6用户访问到自己的网站呢?

三、网站如何支持IPv6访问

目前越来越多的网站使用云服务,利用云平台提供的开箱即用产品满足业务需求,本文以云平台为底层基础设施举例说明

  • 渐进式

【方案介绍】

以一个典型的网站系统为例,其访问路径示意图如下:

image.png

用户访问网站时,经由域名解析商获取服务端IP地址,经过网站入口-负载均衡获得服务。

为了让网站最快速的支持IPv6,可以在负载均衡前面增加一个IPv6转换实例,同时域名配置IPv6解析地址,即可满足要求。示意如下:

image.png

也可以这样:

image.png

【适用场景】

此方案适用于时间要求紧,不希望对后端服务和当前网站架构进行大规模改造的网站,首先支持IPv6用户接入后,可以有充足的时间评估网站整体支持IPv6的改造方案。

【改造步骤】

  1. 创建IPv6转换实例或负载均衡Nat64实例;
  2. 配置实例关联关系;
  3. 客户端指定host验证ipv6访问能力;
  4. 域名解析处增加ipv6解析记录;

【注意事项】

  1. 使用转换实例将ipv6地址转换为ipv4地址回源后,后端服务器无法获取用户的真实来源IP;
  2. 转换实例性能有上限,容易成为单点,建议过渡阶段使用;
  3. 兼容式

【方案介绍】

同样以一个典型的网站系统为例,其访问路径示意图如下:

image.png

用户访问网站时,经由域名解析商获取服务端IP地址,经过网站入口-负载均衡获得服务。

兼容性改造方案支持将真实的IPv6用户透传到服务器,需要在渐进式基础上考虑服务器对IPv6的兼容能力。示意如下:

image.png

【适用场景】

此方案要求构建IPv4/IPv6双栈环境,允许双栈流量访问,前端业务程序支持IPv6访问,向后端/第三方调用时依然可以使用IPv4,适用于IPv6访问量小,架构简单,有获取客户端真实来源IP需求的场景。

【改造步骤】

  1. 前端服务器进行IPv6双栈改造;
  2. 业务程序进行IPv6双栈改造,支持IPv6访问;
  3. 创建负载均衡IPv6实例,并配置关联关系;
  4. 客户端指定host验证ipv6访问能力;
  5. 域名解析处增加ipv6解析记录;

【注意事项】

  1. 受操作系统和平台限制,部分版本OS可能需要手动开启IPv6地址;
  2. 除服务器开启IPv6地址之外,还需要向云服务平台购买IPv6公网带宽;
  3. 革新式

【方案介绍】

革新式改造方案则是建立完全独立的IPv6环境,避免改造IPv4系统的混乱,也便于问题的排查和整体切换。示意如下:

image.png

【适用场景】

此方案要求构建独立的IPv6环境,通过域名解析到不同类型的负载均衡,将流量分别传送到不同网络环境,公共服务则可以共用,适用于访问量大,业务架构复杂,改造困难的网站。

【改造步骤】

  1. 创建IPv6 Only的服务器环境,并部署支持IPv6的应用程序;

1.nginx在编译时加入ipv6模块:--with-ipv6

2.配置IPv6端口监听:listen :::80 ipv6only=on;

  1. 创建负载均衡IPv6实例,并配置关联关系;
  2. 客户端指定host验证ipv6访问能力;
  3. 域名解析处增加ipv6解析记录;

【注意事项】

  1. 受操作系统和平台限制,部分版本OS可能需要手动开启IPv6地址;
  2. 除服务器开启IPv6地址之外,还需要向云服务平台购买IPv6公网带宽;

四、加速+安全防护场景的网站IPv6改造

前面介绍了典型架构下的网站系统IPv6改造,但对于中大型网站来说,考虑静态加速和安全防护是必备要求,针对此类场景又如何改造呢

  • 全站加速场景(安全防护)
1587571645742.png

【适用场景】此方案仅需要在CDN开启IPv6支持,之后的流量均以IPv4形式,改造简单;

【改造步骤】联系云服务平台开启CDNIPv6支持即可;

【注意事项】

  1. 源站服务器如需获得访问真实来源IP,需配置x-forwarded-for参数;
  2. CDN平台支持IPv6的节点资源有所不同,大流量接入需事先评估;
  3. 静态加速场景(安全防护)
1587574691551.png

【适用场景】此方案对网站支持IPv6的改造幅度最大,适合深入支持IPv6的场景,IPv6流量与IPv4流量均可以透传到源站,便于后端获取到真实的访问数据。

【改造步骤】

  1. 前端服务器进行IPv6双栈改造;
  2. 业务程序进行IPv6双栈改造,支持IPv6访问;
  3. 创建负载均衡IPv6实例,并配置关联关系;
  4. 为负载均衡绑定WAF旁路和DDoS防护;
  5. 网站静态资源加速CDN开启IPv6支持;
  6. 客户端指定host验证ipv6访问能力;
  7. 域名解析处增加ipv6解析记录;

【注意事项】

  1. 步骤3-5开启时,建议每步进行验证,避免问题;
  2. CDN平台支持IPv6的节点资源有所不同,大流量接入需事先评估;

五、APP客户端改造建议

APP客户端优先支持IPv6地址访问,当IPv6访问异常时,需要有降级方案,自动切换为IPv4地址访问;

六、IPv6检测方法

《网站及移动应用IPv6支持度考核指标和评测方法》定义的所有指标均适用于单IPv6网络环境以及IPv6/IPv4共存网络环境下的网站和移动应用IPv6支持度评价。

1587575126277.png

另外推荐三个检测网站:

七、写在后面

IPv4演进IPv6之路不是一蹴而就的,必然会经历一段比较长的时间,乐观估计需要5-10年,因此考虑同时兼容IPv4和IPv6访问是必要的。但是要看到未来趋势是IPv6,及早改造,会为将来建立良好的储备。

本站文章资源均来源自网络,除非特别声明,否则均不代表站方观点,并仅供查阅,不作为任何参考依据!
如有侵权请及时跟我们联系,本站将及时删除!
如遇版权问题,请查看 本站版权声明
THE END
分享
二维码
海报
由表及里,业务系统从IPv4演进IPv6之路
之所以如此紧迫的推进支持IPv6,主要还是由于IPv4地址的匮乏。2011年11 月 25 日,全球五大区域互联网注册管理机构之一的欧洲网络协调中心(RIPE ...
<<上一篇
下一篇>>