Terraform要求创建NS记录但Route53公共子域名默认已存在该记录如何处理
Route53 公共子域名区域NS记录疑问解答
核心结论
官方文档没有过时,也不需要删除子域名区域默认生成的NS记录,两类NS记录的作用、存放区域完全不同,不存在冲突。
两类NS记录的差异
- 子域区域内置NS记录:创建
aws_route53_zone类型的子域资源时,AWS会自动在该子域区域内部生成NS记录,标记该子域对应的权威名称服务器地址,属于子域正常运行的基础配置,禁止删除或修改,否则整个子域的解析服务会直接失效。 - 父域需手动配置的NS记录:文档要求创建的
aws_route53_record类型NS记录,存放于根域名对应的父域区域内,作用是为全球递归DNS服务器提供解析授权指引,告知递归服务:该子域名的所有解析请求,都需要转发到子域对应的权威NS服务器处理,相当于子域对外解析的入口。
常见误区说明
如果仅创建子域名区域,不在父域添加对应的NS记录,全球递归DNS无法获知子域的权威服务器地址,外部用户将完全无法解析该子域下的任何记录。
配置建议
- 父域NS记录的
records参数直接引用子域资源的name_servers属性即可,无需手动填写,保证两边NS地址完全一致,避免出现部分地区解析异常的问题。 - 不要修改子域区域内默认生成的NS、SOA基础记录,配置错误会直接导致子域解析服务不可用。
内容的提问来源于stack exchange,提问作者Force Hero
相关产品推荐
相关产品推荐

