有一个测试服务器,其中有一些堆栈、一个 VPC(可以访问互联网、更新等)现在,我正在使用 terraform 创建一个 kubernete 集群,在部署时,无法解析路由 53 上新购买/注册的域(我创建了托管区域和所有内容)。
我的 resolv.conf
cat /etc/resolv.conf
options timeout:2 attempts:5
; generated by /usr/sbin/dhclient-script
search ec2.internal
nameserver 10.0.0.2
nslookup 结果:
Server: 10.0.0.2
Address: 10.0.0.2#53
** server can't find myrandomdomain: NXDOMAIN
我的 VPC 上有 DNS 解析/主机名和 dhcp 选项集,以及同一子网中其他服务器的私有子网 (10.0.0.0/27) 以及实例上的 IG 和公共 IP。我第一次遇到这个问题。
有什么想法吗?谢谢。
答案1
TL;DR 您需要为父区域中的子区域委托权限。
为此,请在父区域中创建一个 NS 记录,该记录解析为子区域中 NS 记录的值,例如
ns-108.awsdns-13.com. ns-1006.awsdns-61.net. ns-1346.awsdns-40.org. ns-1875.awsdns-42.co.uk.
故障排除环境:我们假设这与 AWS、VPC 属性或本地解析器配置无关。
您可能必须dig
使用类似这样的命令进行安装sudo yum -y install bind-utils
。
从列表中选择一个权威名称服务器,例如dig +short -tNS example.com.
向选定的名称服务器查询锚记录,例如dig +short example.com. @ns-290.awsdns-36.com.
这将告诉您互联网上其他地方的递归解析器是否最终会开始回答同一名称的请求。
如果上述查询针对区域的 type=NS 记录执行不是显示权限已转移到 Route53,那么要么是时间还不够,要么是您还没有将权限委托给注册商处的 Route53 托管区域中的 NS 记录集。