EventMobi 因客户强制要求与 Apple 审核新规,被迫为每日发布的 4-5 款应用添加 IPv6 支持。利用 AWS ELB 的 dualstack 域名仅需修改一条 CNAME 即可完成协议栈双栈接入,但构建纯 IPv6 测试环境才是真正难点。
基础设施改造:一条 CNAME 完成双栈接入
后端跑在 AWS EC2,前端挂 ELB。ELB 原生提供三种域名:标准域名仅含 A 记录、加 ipv6 前缀仅含 AAAA 记录、dualstack 子域名同时返回 A 与 AAAA。原 CNAME 指向 name-123456789.region.elb.amazonaws.com,改为 dualstack.name-123456789.region.elb.amazonaws.com 后,浏览器优先尝试 IPv6,回退到 IPv4 无需代码变更。原文未给出具体流量切换比例数据。
测试工具链与纯 IPv6 环境建设
验证阶段引入三类工具:Chrome 扩展 IPvFoo 直观显示页面加载所用协议版本;Google IPv6 测试站确认浏览器具备 IPv6 连通性,但不代表业务页面能跑通;dig 查询全域名 DNS 记录核对解析链路。难点在于搭建纯 IPv6 环境——关闭本机 IPv4 导致所有连接中断,排查指向 Meraki 路由器,后续调试细节原文未给出具体数据。
对运维与网络工程师而言,云厂商托管负载均衡已把协议栈升级降级为 DNS 记录切换,真正的工作量集中在端到端测试环境的隔离与验证。建议在 CI/CD 流水线接入自动化 IPv6 回归测试,避免上线后被应用商店拦截。
原文: APNIC Blog(2017-02-21)|编译自 APNIC Blog,事实以原文为准。
来源:APNIC Blog