因IPv6导致的一次严重的App线上事故

字数 1408阅读 86

这估计是从业以来最重要的一次事故了。

问题来源:
后台大面积用户反馈进入不了App。

具体定位:
ios用户全部是正常的,Android用户大概1/3进入不了App。设置的接口超时时长为30秒,每个接口都是超时。因为只有Android有这个问题,所以认为是Android端代码和相关环境一起导致的。

后来详细确认,只有电信4g用户才有这样的问题(这个确定有问题,其他的忘记了),然后猜过是https认证的问题,其他的什么问题都不是。大概没办法了,副总找了一个阿里的工程师,那边初步定位是IPv6的问题,按照这个来排查终于找到了问题所在!

问题原因:
电信4g自动开启IPv6,其他是IPv4。前几天因为ios上线,为了美国那边审查会快一点技术总管开启了IPv6的一个服务,给我们的回复是,没有关闭会导致我们的接口都经过IPv6的服务,但是这个服务站点架在国外的服务器上,所以相当于电信4g的用户都会经过一趟国外的服务器,一般拿不到数据。

然后技术总管把IPv6的那个服务关掉之后就好了!我才逃过一劫。

联通网络 电信网络
联通.jpg
电信

IPv6 科普

简介

IPv6是英文“Internet Protocol Version 6”(互联网协议第6版)的缩写,是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议,其地址数量号称可以为全世界的每一粒沙子编上一个地址。

与IPv4的区别

ipv4与ipv6的区别.jpg

IPv6与IPv4最大的区别其实是IP地址数量不同。

我们现在用的是IPv4,你的外网地址可能是这样一串数字:59.123.123.123。IPv4的地址是32位,总数有43亿个左右,还要减去内网专用的192、170地址段,就更少了。而IPv6的地址是128位的,大概是43亿的4次方,地址极为丰富,几乎是取之不尽的。

好处

1.可以有更多的设备联网,连路灯都可以有独立IP。
  • IPv6具有更大的地址空间。IPv4中规定IP地址长度为32,最大地址个数为232;而IPv6中IP地址的长度为128,即最大地址个数为2128。与32位地址空间相比,其地址空间增加了2128-232个。

  • “IPv6可以让每一粒沙子都上网”,全球有上百亿个设备,却只有40多亿个地址。而由于中国互联网起步晚,只分到了2.9亿个IP,所以是共用的。平常上上网倒没什么,但想从公网访问某一台上网设备,比如查看家里的摄像头,或者远程控制自己的电脑,就变得非常困难。换成IPv6之后,每台设备都可以有独立的IP地址。如果配合5G网络,每台汽车、路灯、垃圾桶、消防栓都可以有独立的IP地址。IPv6丰富的地址,让“物联网”成为可能。

2.更安全,响应更快
  • 在使用IPv6网络中用户可以对网络层的数据进行加密并对IP报文进行校验,在IPV6中的加密与鉴别选项提供了分组的保密性与完整性。极大的增强了网络的安全性。
  • 技术大牛都知道路由传输是根据路由条目进行数据转发,IPv6减少路由数量,更快转发传输数据,日常的上传下载速度更快;另外一方面IPv6网络在光纤高速传输技术方面,正沿着扩大单一波长传输容量、超长距离传输和密集波分复用系统三个方向在发展,通过波分复用直接提高网络吞吐量,网站打开延迟更小,速度更快。

网友评论

  • 言下之意现在通过IP地址能定位到小区,IPv6就可以定位到你床上了。
  • 有一天我被警察抓了,他会告诉我是我家洗衣机报的警,说我用力按它的按钮,属于家庭暴力。
  • 信不信,以后IP要绑定身份证。
  • 完了完了,以后还能愉快的看日本爱情片吗?

部署进度

到了 2018 年 12 月,阿里云 100% 的核心产品已经完成了 IPv6 改造。

支付宝.jpg

阿里巴巴方面表示,未来 1-2 年,阿里生态全面支持 IPv6。其中,2019 年 Q1 前,完成公网外联,主要是电商业务对外服务支持 IPv6;2019 年底前,完成内内网 IPv6 互访;最后在 2020-2022 年,全面实现仅支持 IPv6(IPv6 Only)。

参考资料

推荐阅读更多精彩内容