You need to enable JavaScript to run this app. EKS环境下Elastic Load Balancer动态公网IP变更及返回nginx404问题咨询
优惠活动
大模型
产品
解决方案
定价
更多

EKS环境下Elastic Load Balancer动态公网IP变更及返回nginx404问题咨询

公网IP动态漂移问题的根治方案
  • 公网ELB关联的ENI公网IP随实例扩缩、可用区切流动态变更是正常机制,硬绑定ENI公网IP配置A记录本身就违背AWS负载均衡的设计逻辑,无需手动追踪IP变更。正确的基础配置是在GoDaddy侧直接配置CNAME记录,将自定义业务域名指向ELB自带的公网DNS地址,AWS的DNS系统会自动维护ELB背后的IP映射,域名解析永远跟随ELB的最新地址,不会因为IP漂移失效。
  • 有固定静态IP需求的场景(比如对接第三方白名单),可在ELB的每个可用区子网对应的ENI上绑定固定弹性公网IP(EIP),EIP属于你账号下的静态资源,绑定后不会随ELB运行状态变更,这种场景下可以直接配置A记录指向绑定的EIP,无需再做CNAME映射。
ELB DNS/CNAME指向后返回nginx 404的排查解决
  • 第一优先级排查Ingress Host匹配规则
    出现nginx 404说明请求已经成功抵达Ingress-Nginx组件,网络转发链路完全打通,不需要排查安全组、子网ACL这类连通性问题,故障点基本集中在Ingress路由规则没有匹配到请求携带的Host头。
    • 检查集群内Ingress资源的spec.rules.host配置项:默认情况下Ingress只会响应配置了匹配域名的请求,如果你直接访问ELB的原生DNS地址,请求携带的Host头是ELB的长域名,和Ingress里配置的自定义业务域名不匹配,就会触发Nginx的默认404响应。
    • 确认配置的Host值和你实际访问的域名完全一致,包含子域名层级、字符完全匹配,避免因为域名差个前缀、后缀不对等不匹配问题,导致配了CNAME之后也触发404。
    • 若需要支持ELB原生域名直接访问,要么在Ingress规则里补充对应ELB域名的匹配条目,要么调整Ingress的全局默认后端配置,将未匹配Host的请求直接转发到你的业务服务。
  • 第二检查ELB监听器转发配置
    • 确认ELB 80/443端口的监听器关联的目标组,是否准确指向Ingress-Nginx Service对应的节点端口/后端实例,避免错配到默认返回404的测试服务。
    • 开启ELB的Host头保留配置,不要在转发环节对原始请求的Host头做重写,否则会导致Ingress路由规则匹配失效触发404。
  • 第三排查配置缓存问题
    之前配置过A记录指向旧公网IP的场景,改完CNAME后本地DNS、运营商DNS会缓存旧的解析结果,可将GoDaddy侧的域名TTL值临时调整为60秒,等缓存过期后再测试,避免误判配置失效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.06 13:06:03