You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GKE集群Nginx Ingress子子域名无法访问问题解决方法

故障根因

问题出在DNS通配符的匹配规则上,和你GKE侧的Ingress配置没有关系:

  • DNS标准定义的*通配符仅匹配单级子域名,你当前配置的*.example.com解析记录,只能覆盖echo2.example.com这类一级子域,echo1.eu3.example.com属于二级子域(子子域名),完全不会被这条通配符记录命中,DNS解析阶段就拿不到你GKE负载均衡的IP,自然无法访问。
  • Cloudflare严格遵循这个DNS标准,没有配置开关可以让单星号通配符匹配多级子域。
修复方案

两种配置方式二选一即可:

  • 单条记录配置:在Cloudflare DNS面板单独添加echo1.eu3.example.com的A/AAAA记录,值填你Nginx Ingress关联的GKE负载均衡IP,代理状态(橙云/灰云)和其他正常域名保持一致就行。
  • 多级通配符配置:添加一条*.eu3.example.com的通配符记录,同样指向GKE负载均衡IP,后续所有xxx.eu3.example.com格式的域名都能自动解析,不用重复添加单条记录。
验证&后续排查

配置完等DNS TTL过期生效后,先做解析校验:

# 校验返回IP是否为GKE负载均衡地址
dig +short echo1.eu3.example.com

如果解析正常还是无法访问,按顺序排查:

  • 检查Cloudflare SSL/TLS加密模式:如果Ingress侧没配置80端口跳转、没挂载证书,不要开「严格」模式,选「灵活」即可避免握手失败。
  • 检查GCP防火墙规则,确认负载均衡的入站规则放通了80/443端口的Cloudflare回源IP段。
  • 查看Nginx Ingress Controller日志,如果完全收不到对应域名的请求,说明回源链路被拦截;如果收到请求返回404,检查Ingress的host字段有没有拼写错误、Service和端口配置是否正确。

内容的提问来源于stack exchange,提问作者tobias

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 12:39:14