我试图将 A 记录从公共 DNS 迁移到 Route 53 中的内部 DNS。我认为这样的操作相当简单:
- 删除服务器 foo.bar.net(公共 DNS)的 A 记录。
- 为服务器 foo.internalbar.net 添加 A 记录(内部 DNS)。
- 修改Bastion主机的resolv.conf以搜索internalbar.net(Bastion主机和foo都在同一个VPC中)。唯一的区别是 foo 是附加到 NATd 网关的私有子网的一部分。
完成此操作后,在堡垒主机中运行主机时我无法解析 foo 。我得到:
host foo
Host foo.internalbar.net not found: 3(NXDOMAIN)
根据文档,53 号公路将在 60 秒内运行。我等了大约 10 分钟,直到我决定恢复更改。就其价值而言,堡垒主机是公共 DNS 的一部分。我什至将堡垒主机添加到内部 DNS(它是私有 IP)。谁能告诉我将 foo 添加到内部 DNS 服务器可能出现什么问题?
答案1
我将对您当前的设置做出一些假设:
- 您使用的VPC已启用DNS解析。如果不是,请访问您的 VPC 仪表板并为相关 VPC 启用它。
- 有问题的 EC2 实例位于上面的 VPC 中。在这种情况下,只要本地路由完好无损,子网和路由就无关紧要。
- Route53 托管区域
internalbar.net
是“私有托管区域”(基于您对“内部”托管 DNS 的评论)。 foo
上述区域中存在一条记录。
那么,现在就来揭晓答案吧!您的 DNS 服务器/etc/resolv.conf
应该是 VPC 的 CIDR 块中的第二个可用地址。例如,如果您的 VPC 的 CIDR 为10.0.0.0/16
,则解析器将为10.0.0.2
。
一旦你这样做了,它就会解决。
预留VPC地址参考:VPC 子网