我希望使用本地 DNS 服务中配置的自定义转发规则来解析私有托管区域网络中的地址。转发规则实际上会说,“对于我的私有域 xyz,将查询转发到 10.1.1.2”,其中 10.1.1.2 是与解析器端点对应的 VPC 中的 AWS 私有 IP 地址。
我希望了解将查询转发到与私有区域关联的 VPC 中的标准 .2 地址与设置入站路由 53 解析器端点以接收和解析查询之间的区别。
除了价格差异外,它们似乎都做同样的事情。我已经使用 dig 确认我可以使用 .2 地址从 VPC 外部解析私有托管区域记录(通过传输网关)。
因此从技术角度来说,当我可以使用 .2 地址更便宜地解析查询时,为什么我要使用入站解析器端点?我在这里遗漏了什么?
我发现了一些AWS 文档这表明 .2 地址在 VPC 之外不可用,但我已经确认这是不正确的。
答案1
事实证明,AWS Transit Gateway 服务不支持跨连接的 VPC 针对“.2”解析器的 DNS 查询解析。您可能会看到 DNS 查询在某些区域的某些可用区以及本地运行,但 AWS Transit Gateway 不支持此功能,并且从安全性方面来看不是推荐的配置。要使用 AWS Transit Gateway 实现集中式 DNS 管理,请关注此博客文章:
答案2
我发现一些 AWS 文档指出 .2 地址在 VPC 之外不可用,但我已确认这是不正确的。
我会重新考虑您是否真的在 VPC 外部使用 .2 DNS 服务器。TGW 将 ENI 部署到 VPC 中,因此您的“外部 VPC 流量”实际上将来自 VPC 内部的 ENI - 因此只有 VPC 本机流量的规则不会被破坏。一个由 2 个 VPC 组成的简单实验室,每个 VPC 中都有一个 EC2,并将 1 个 EC2 /etc/resolv.conf 文件更改为使用另一个 VPC 的 DNS .2 地址,这将很容易显示 VPC DNS 服务器拒绝来自其 VPC CIDR 外部的源 IP 的查询。入站解析器并再次将 /etc/resolv.conf 更改为这个新的入站解析器 IP 将解决“问题”。
tldr:VPC DNS 服务器仅接受来自其自身 VPC CIDR 范围的请求。入站解析器充当反向代理,并将请求源 IP 更改为解析器自己的 IP(因此 VPC DNS 服务器很乐意接受它)。TGW 给人一种外部 VPC 流量的错觉,但实际上流量是通过 VPC 内的 ENI 进入的。