背景:内部服务的跨网络访问难题
多数企业内存在被其他团队调用的内部服务,例如支付 API、库存数据库或消息代理。这些服务通常通过私有域名暴露,因为基于名称的寻址允许服务在迁移、扩容或故障切换时无需消费方更改配置。相关域名记录在私有 DNS 区域中,仅在所属网络内部解析。
当消费方位于另一个网络、业务单元或企业数据中心时,传统做法是打通网络连通性,包括协调地址空间、路由和防火墙规则。即便网络层连通,消费方仍无法解析私有域名。Amazon VPC Lattice 此前虽简化了连接,但域名目标必须公网可解析,导致私有区域名称无法直接使用。
新功能:私有域名目标支持
AWS 近期为 VPC Lattice 引入了私有域名目标(private domain-name targets)。用户在资源网关上将 ResourceConfigDnsResolution 设置为 IN_VPC,即可将域名查询发送至该资源网关所属 VPC 的 DHCP 选项集中指定的 DNS 服务器。这意味着 Amazon Route 53 私有托管区域或本地 DNS 服务器(通过转发规则)均可作为有效解析源。
解析类型选择
资源网关是进入 VPC 的入口,ResourceConfigDnsResolution 仅控制域名目标查找的解析器,不影响消费方发现名称或流量路由方式。
- PUBLIC:查询发往公网 DNS 解析器,无法读取私有托管区域或本地 DNS,因此目标域名必须公网可解析或使用 IP 地址。
- IN_VPC:查询发往资源网关 VPC 的 DNS 服务器,默认为
AmazonProvidedDNS(Route 53 Resolver)。此时可直接使用私有区域中的名称,服务地址变更仅需更新私有 DNS 记录。
注意:该属性不可变更,切换模式需替换资源网关。且 IN_VPC 资源网关不能承载基于 ARN 定义的资源配置(如 RDS 数据库共享),此类需使用 PUBLIC 网关。
DNS 源与 VPC 配置
资源网关自身不指定解析器,实际解析取决于 VPC 的 DNS 配置。主要来源有两种:
- Route 53 私有托管区域:适用于与资源网关 VPC 关联的内部服务区域。
- Route 53 Resolver 转发规则:适用于混合环境,VPC 已通过 Direct Connect 或 VPN 将域转发至本地 DNS。
若 VPC 的 DHCP 选项集命名了自定义解析器而非 AmazonProvidedDNS,则由其应答,私有区域与转发规则失效,除非自定义解析器回传至 Amazon DNS(169.254.169.253)。修改选项集后最长需 24 小时生效。建议通过在目标 VPC 内实例执行 dig 验证解析。
部署模式概述
文章给出两种常见模式:模式一基于 Route 53 私有托管区域;模式二基于混合环境 DNS 转发。两者均需创建可解析名称的资源网关、命名 FQDN 的资源配置,以及关联的服务网络。跨账户消费需通过 AWS RAM 共享。
对读者的意义 / 技术解读
对于运维与网络工程师,该功能降低了多 VPC、多账户环境下内部服务暴露的复杂度。从网络诊断视角看,当使用本平台提供的 DNS 查询或路由追踪工具排查跨 VPC 服务不可达时,需确认对端资源网关的解析类型与 VPC DHCP 配置,因为 IN_VPC 模式将解析限制在生产者网络内,公网 DNS 查询工具无法获得对应记录。此外,由于属性不可变,架构设计初期就应规划解析模式,避免后期重构。对于习惯使用私有域名的微服务架构,此更新使得服务网格边界更灵活,但也要求监控解析缓存(资源网关像普通解析器一样缓存应答),在变更 DNS 记录时保留旧地址直至传播完成。
网站测速,网站速度诊断.HTTP测速,WEB测速,CDN测速,API测速