最近公司集中迁移新集群,遇到了个问题,前端部署到新集群后,访问不通的情况,搞到凌晨3点,想了想还是记录下来,不然实在对不起肝这么长时间。
问题描述:
背景是前端使用 nuxt 框架搭建,在旧集群中正常,迁移至新集群后始终无法访问。
排查过程:
- 首先登上镜像容器中,查看新集群的日志,发现 ERRREFUSE 的报错。
- 网上搜查报错原因,有网友提示是 IPV6 的原因。
- 登陆容器查看线上环境支持 IPV6,且通过
ifconfig只看到了6的IP,没有看到4的IP地址。 - 查看 nuxt 的配置,启动服务的 IP 为
0.0.0.0 - 查找 node 官网查看API,需要即可支持 IP6 也可支持 IP4 的方式,找到解决方案:
server.listen(port, '0.0.0.0')
// 改为
server.listen(port)
问题回顾及反思
- 知识点回顾:
0.0.0.0仅支持IPV4访问127.0.0.1支持本地访问,127开头皆为环形IP指向本机::1仅支持IPV6访问
- 遇到问题应及时查看日志,应及时补充新知识,学习 ipv6 时只知道相较于 4 的优点,没有学习对技术相关的影响。