阿里云
阿里云大学认证0元起
发表主题 回复主题
  • 3052阅读
  • 2回复

[基础常识]在全面部署 IPV6 前,你需要了解都在这儿

级别: 论坛版主
发帖
9347
云币
14150
— 本帖被 不靠谱贝贝 设置为精华(2017-12-16) —
IPv6 的发展形势 y^AA#kk  
_=L;`~=C9e  
.UrYF 0  
近日,中办国办印发《推进互联网协议第六版(IPv6)规模部署行动计划》(以下简称《计划》),加快推进基于 IPv6 的下一代互联网规模部署,计划指出到 2018 年末国内 IPv6 活跃用户数要达到2亿,2020年末达到5亿,2025年末中国 IPv6 规模要达到世界第一。 VWshFI  
;1.>"zX(  
~B&*7Q7  
随着移动互联网、智能设备、车联网、智慧城市等新一代信息技术产业的蓬勃发展使得对 IP 地址的需求量大大增加,根据预测未来 5年 中国的 IP 地址需求总量将高达 345 亿。在 IPv4 地址告罄的情况下目前运营商通过 NAT 技术勉强支撑但是却极大的降低了租户的可用性,IPv6 的商用价值和战略意义正在凸显,而《计划》的发布更标志着中国的 IPV6 正式进入部署阶段,对世界 IPV6 的发展也将有着不小的意义。 LO]6Xd"  
aE BP9RX}z  
 y"\,%.  
在IPv6方面,中国可谓是 “起了大早赶了晚集”,到2016年底,中国拥有IPv6地址申请总量超过2万块,数量为美国的一半,全球排名仅次于美国。但被路由器宣告的IPv6地址仅占中国已申请获得的IPv6地址总量的7.5%,承载真实流量的IPv6地址路由器数量仅有3%。中国2016年IPv6用户占比在全球排名66位,排在印度、越南等国之后。不过不要泄气,要知道 2025 年我国 IPv6 网络规模将居世界第一位,估计会是其他国家难以超越的存在。 Ys$YI{  
Z02s(y=k1  
IPV6 带来的极大改变 "rGOw'!q>  
Q H_W\W  
A'( 7VJ  
不再被内网 [S]!+YBK  
>J}n@MZ  
&^IcL!t[  
《计划》中明确有提到 “新增网络地址不再使用私有IPv4地址” ,的确近年来很多人都再抱怨己 “被内网” 了,因为亚洲的 IPV4 资源其实很早就已经枯竭了,但是互联网却一直在发展,因此只有通过 NAT 方式来续命了。而 IPV6 拥有给每粒沙子赋予一条 IP 的 IP 数量,所以我们根本不用担心 IP 不够了! b#g {`E  
sJb)HQ,7x  
DvX3/z#T  
)@qup _M@  
!&`\ LJ=j  
n`)7Y`hBhP  
P;[Y42\z|  
6B''9V:s  
FxfL+}?Q  
为物联网的爆发做铺垫 A*;?U2  
,<3uc  
WE[m@K[CR  
在未来万物互联,我们的每台电脑、每台手机、每台插线板、每件衣服甚至每粒纽扣都可能被赋予 IP 地址以连接网络。但是仅仅42亿个地址的 IPV6 到每台手机这里就已经十分勉强了,更别说每粒纽扣了。因此未来的物联网大爆发必定需要 IPV6。 0HR|aqPo  
N\q)LM !M  
&G/|lv>j  
更高效的信息传输 A)z PaXZ  
NLQE"\#a  
BMNr<P2li  
依旧是前面提到的 NAT, IPV4 由于使用大量 NAT 来连接设备,这让网络模型变得越来越复杂。 jJVT_8J  
l>~`;W  
%5h^`lp  
-2\ZzK0tM  
"#pzZ)Zh  
nlzW.OLM  
W7L+8LU;  
可以看到 IPV6 相比 IPV4 的包头精简了很多因此也会获得性能上的提升,极大的提高了信息的传输效率,简单的归纳就是:1.简化头,少处理;2.不分片,无重组;3.去校验,省资源 {y-2  
|mxNUo-  
.Z=Ce!  
更安全互联网 't( }Rq@  
L)F1NuR  
yGvDn' m  
在 IPv6 的部署中是可以配置 IPSec 的,这意味着在IPv6地址之间传输数据往往是经由加密的,信息不再会被轻易窃 听、劫持。在 IPv4 体系中,大量信息采用明文传输,DNS污染、HTTP劫持等现象层出不穷,相比你也是忍了手机看网页的时候下边那个查流量的按钮很久了吧。如果部署了 IPSec,互联网理论上更加安全、畅通。 xQJIM.  
dL_QX,X-]  
Y{Da+  
不过在云栖社区的聚能聊里,很多网友还是对 IPV6 表示了一定的担忧: Zx+cvQ  
TZ_rsj/t  
$Z;BQJVH  
比如说:
AkrTfi4hC  
ipv6地址难记是真的,但是换成ipv6地址能大大简化网络行为。其一,大家都有固定ip地址了,寻址更容易,如果玩局域网游戏就可以直接输入ipv6进入,不需要查询动态ipv4地址。其二,作为网络交换器再也不需要让路由器24小时开启维持ip地址不变了。其三,网络犯罪更容易抓获。因为ipv6地址是固定的,就相当于网络身份证,你犯罪了可以直接用过ip地址定位,而变动的ipv4地址却无法做到这一点。
LJGJ|P  
还有:
y"^yYO  
IPv6说了多少年了,有多少部署,有多大的产业?个人感觉,再有20年,IPv6也不会大范围推开。现在IPv4+NAT方式会一直使用下去(好处也很多啊),既得利益者不会轻易让它消失。我预测,在未来10年内,会有一项新的基础技术产生,从而彻底取代IP (v6 and v4)。
u7;`4P:o@  
不知道大家怎么看待 IPV6 呢?大家可以在 《厉害了我的网 中国计划部署推进IPv6》 参与话题拿大奖。 9Ct_$.Q .  
^qxdmMp)l  
IPV6 的实现形势 /_V'DJV  
GQN98Y+h  
Y4#y34 We  
阿里在 《计划》 公布后就第一时间宣布了 将全面提供IPv6服务 但是距离正式提供 IPV6 还有一段时间,那么在这以前我们应该如何曲线实现 IPV6 呢? Y@Y`gF6F  
n]+.  
g96T*T  
在《计划》发布前最让站长心急的时候,苹果的 “IPv6审核机制” 真正让 IPV6 狠刷了一波存在感,所有提交到 AppStore 的应用必须通过苹果 AppStore 审核人员在美国的 IPv6-Only 环境下对应用进行访问。一些因为无法过审的应用才开始意识到要对 IPV6 支持。 P##Z[$IJ3  
{odA[H  
*z0K%@M  
一般来说大家为了获得 IPV6 主要是为了通过苹果的 AppStore 的 IPV6-Only 审核,但其实果 AppStore 在做 IPv6 审核的时候,并不需要DNS或者服务支持IPv6接入。IPv4环境下的DNS或者服务器地址会由苹果 AppStore 审核时的 DNS64+NAT64 转换为IPv6地址进行通信。
如果,应用在苹果进行 IPv6 审核时不通过,可能原因主要有两方面:
  1. 应用本身不兼容 IPv6。此时,最好的办法是让应用本身兼容 IPv6;
  2. 跨国网络问题导致苹果 AppStore 所在的网络在审核时连接不通国内的服务器。
%3M95UZ2  
此时推荐使用云解析付费版(具有海外DNS BGP节点)以及阿里云海外地域的ECS Ap%O~wA'  
=3*Jj`AV  
u4YM^* S.  
什么是 “DNS64+NAT64访问机制” 呢? "B#Y-  
:NuR>~  
:BZMnCfA  
DNS64:苹果AppStore审核的时候,要去 DNS 服务器查询AppServer的服务器的 IPv6 地址,然后进行访问。如果查询不到 IPv6 地址,会进而询问 IPv4 地址,然后苹果的网络会将查询到IPv4地址转换成IPv6的地址,返回给App客户端使用。如下图所示: lop uf/U0  
*>k!hq;j  
]:&n-&@L  
ivfXat-  
I"1CgKYK^+  
I!0JG`&  
&]< 3 ~6n  
NAT64:苹果AppStore审核的时候,通过上一步获得IPv6的地址后,客户端App会直接访问IPv6 服务端的内容,或者通过NAT64的网关访问IPv4服务端的内容。如下图所示: cZ|lCy^  
lkA^\ +Ct  
3_W{T@T  
?E<c[*F05  
*69c-` o  
=_ y\Y@J  
e1unzpWN  
如果有强制的 IPV6 需求需要一个 IPV6 地址的话,那么就必须使用前文提到的曲线实现了。目前有三种可行的 IPV6 支持方案:
  1. 服务器在第三层(网络层)使用隧道传输来曲线支持 IPV6
  2. HTTP Proxy ,让支持 IPV6 的服务器做反向代理,将 AAAA 记录解析到代理服务器上
  3. 使用 CDN 缓存,像 CloudFlare 这样的 CDN 只要使用就可以支持 IPV6
mV?&%>*(f  
不过,上述的三种,都有一定缺陷,其中第一种即隧道传输缺陷最少,几乎原生;而反代受限于反代服务器的延时,而且建设成本也挺高的;CDN 缓存么,像 Cloudflare 在国内速度并不理想。 RN[]Jt#6  
JrDHRIkgm  
_ h9o@  
那么如何再阿里云的 ECS 上实现 IPV6 的隧道传输呢?阿里云有如下教程: , T\-;7  
Uoj i@  
Q[PK`*2)  
通过 IPV6 地址访问域名,如何设置域名解析? l~J*' m2  
!>n|c$=;qk  
:.uk$jx  
Windows 设置: |]W2EV ,b  
]^ K;goQv  
5G(E&>~  
为阿里云ECS(Windows 2012)创建IPv6隧道地址 {)@D`{$  
y-B=W]E  
|~K(F <;j  
类 Unix 通用设置: [2 zt ^  
Zx{96G+1  
CzVmNy)kl  
https://bbs.aliyun.com/read/302778.html n ~,t QV  
OeElMRU"  
xA h xD|4_  
检测网站和访问者是否已经支持 IPV6: 2) ?q 58  
kl}Xmw{tJ  
dqc1 q:k?$  
http://ipv6-test.com/validate.php `rb>K  
E m{aM  
IPV6 的原生展望 x/mp=  
p &(OZJT  
 HpW 42  
像云数据库 for MySQL、OSS、CDN 这样的 PaaS 产品其实是不需要我们进行过多的设置的,自动就会支持 IPV6,这就是 PaaS 最能令运维人员感受到幸福感的地方了。 `tEo]p  
S%mfs!E>  
nFM@@oA  
而 ECS 上就会是 IPV6 攻坚的重点了,ECS 需要有支持了 IPV6 后需要我们额外的设置网卡以及想 Nginx、Apache Httpd、Tomcat 这样的 Web 服务器软件也需要进行 IPV6 的设置。 _P7tnXww  
E D"!n-Hq  
b]Z@^<_E  
例如低版本的 Nginx 如果编译时不带 –with-ipv6 参数就不会支持 IPV6 环境,同时还要在虚拟主机的配置文件中加入 listen [::]:80; 来支持监听 IPV4 和 IPV6 的 80 端口,对的,只需要 这一个参数就可以两种网络的监听。 a|_p,_  
4Ysb5m)u  
+wO#'D  
有些教程和环境一键包盲目的追求所谓的性能,会在内核配置文件中将 IPV6 给禁用了,这就导致了分配了 IPV6 地址也依旧无法使用。 q]% T:A=  
修改 /etc/sysctl.conf 文件将一下部分改为 G64Fx*`  
kH948<fk3  
@T-p2#&  
  1. net.ipv6.conf.all.disable_ipv6 = 0
  2. net.ipv6.conf.default.disable_ipv6 = 0
  3. net.ipv6.conf.lo.disable_ipv6 = 0
(Ddp|a"b  
!>$4]FkV  
;xYNX  
然后执行 g"_C,XN  
!#yq@2QX  
  1. sysctl -p
,*svtw:2')  
以生效。 K^l:MxO-X  
]wVk+%e  
OE`X<h4r  
总而言之,当分配了 IPV6 后,各位运维人员以及个人站长还需要进行一定的调试才能更好的支持 IPV6,而云栖社区也一定会提供更多 IPV6 有关的教程来帮助大家解决问题。
级别: 架构狮
发帖
1217
云币
1946
只看该作者 沙发  发表于: 01-24
您的无私奉献精神值得我们学习!向您致敬!
级别: 架构狮
发帖
1217
云币
1946
只看该作者 板凳  发表于: 01-24
您的无私奉献精神值得我们学习!向您致敬!
发表主题 回复主题
« 返回列表上一主题下一主题

限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
验证问题: ECS是阿里云提供的什么服务? 正确答案:云服务器
上一个 下一个