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

AWS Lambda无法解析Route 53域名:ElastiCache连接报错排查

Lambda无法解析Route53 CNAME记录导致连接ElastiCache失败的问题解答

不需要为Lambda配置访问Route53托管区域的IAM策略。Route53的公共DNS解析服务是公开可访问的,无需额外权限就能进行域名解析,你遇到的getaddrinfo ENOTFOUND错误本质是DNS解析失败,和IAM权限无关,主要排查方向集中在网络配置和记录有效性上。

核心错误原因分析

getaddrinfo ENOTFOUND表示Lambda无法将myroute53address.stackoverflow.com解析为对应的IP地址,常见触发场景包括:

  • Lambda所在VPC的DNS配置异常,无法正常解析域名
  • Route53的CNAME记录配置错误或未生效
  • Lambda与ElastiCache所在网络未连通(即使解析成功也会后续报错,但当前第一步是解析失败)

具体排查步骤

  1. 验证环境变量与域名正确性

    • 在Lambda代码中添加日志输出CACHE_ADDRESS的值,确认环境变量确实设置为myroute53address.stackoverflow.com,避免拼写错误
    • 本地用nslookup myroute53address.stackoverflow.com或dig myroute53address.stackoverflow.com测试解析,如果本地都无法解析,直接检查Route53记录配置
  2. 检查VPC的DNS设置
    如果Lambda运行在VPC内,必须确保VPC的DNS配置正常:

    • 登录AWS控制台进入VPC服务,找到Lambda所属的VPC
    • 确认该VPC的DNS支持和DNS主机名都已设置为启用状态
    • 如果VPC使用自定义DNS服务器,要确保该服务器能访问公网并正常解析你的Route53域名
  3. 确认Route53 CNAME记录有效性

    • 进入Route53控制台,打开stackoverflow.com托管区域,检查myroute53address这条CNAME记录的目标值是否正确指向ElastiCache集群的配置端点(或单个节点端点)
    • 注意Route53记录有TTL(生存时间)设置,默认是300秒,修改记录后需要等待TTL过期再测试解析
  4. 排查网络连通性(解析成功后需验证)
    当DNS解析正常后,还需要确保Lambda能连通ElastiCache:

    • 检查Lambda所在安全组的出站规则,允许访问ElastiCache的端口(默认是11211)
    • 检查ElastiCache集群的安全组入站规则,允许Lambda所在安全组的IP或安全组ID访问对应端口
    • 确保Lambda和ElastiCache处于同一个VPC,或通过VPC对等连接、VPN等方式实现网络连通

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 10:55:08