IPv6 问题
背景
- IPv4 地址枯竭
- 5G、IOT、SDN/NFV、云计算、边缘计算等新兴技术兴起,需要地址的终端设备变多。
- NAT 技术无法支持新兴技术。
各大互联网公(国外的Google、AWS、Apple,国内的阿里、滴滴等公司)司要定期推动本公司业务的 ipv6 技术改造,网信办会定期检查,不达标的公司要问责。
改造要点
因为IP地址长度从32位变为128,文本格式从十进制数字变为十六进制(见附录1),为支持两种IP地址,包括但不限于以下改造要点:
- 客户端(手机APP和浏览器)缓存用户IP
- 后端服务根据IP做判断的业务逻辑, 比如set化、小流量。
- 用户IP归属地查询。
- 用户IP白名单、黑名单。
- 风控使用到IP段的策略。
- 存储用户IP到DB或者缓存
- IPv4是32位,可以转成int或者long来存储。
- IPv6是128位,不能使用long或者bigint来计算存储。
- 在服务接口之间传递用户IP
- 内网之间传递,典型的是支付、风控等。
- 外网之间传递,如第三方微信支付等。
- 日志处理
- 后端日志落地为IPv6后,是否有通过日志内容处理的业务逻辑。
- 依赖nginx日志中的IPv6地址进行分析和处理的业务逻辑。
验证方法
service级别验证
- 一些依赖IP的代码特征,可用于扫描
正则表达式处理IP
IP地址转换函数
- 数据库字段特征
- 字段名带IP关键字,或者字段值有IP特征
- 验证一个独立的service兼容IPv6,包括能正确处理传入clientip,以及对使用IPv6地址的场景能正确解析。
域名级别验证
验证一个URL请求在客户端IPv6单栈模式下能正常访问。
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.