修改DNS服务器

本文介绍如何在阿里云域名控制台修改域名的DNS服务器配置。DNS服务器负责响应域名的DNS查询请求,修改此配置会影响域名解析服务。

前置准备

以防DNS服务器修改造成业务中断,需先对DNS解析记录进行同步。

  1. 解析记录同步:在目标DNS服务商的解析设置页面添加域名,并配置完整的解析记录。

  2. 解析生效验证:使用命令直接向新的DNS服务器查询,验证其是否已能正确响应。

    # 将 yourdomain 替换为您的域名
    # 将 ns1.alidns.com 替换为目标DNS服务商的DNS服务器地址
    dig @ns1.alidns.com yourdomain A
    dig @ns1.alidns.com yourdomain MX
  3. 检查并禁用DNSSEC(如未配置,忽略此步)

    确认您的域名是否启用了DNSSEC(域名系统安全扩展),如果已启用,必须先到域名注册商处删除DS记录,并关闭DNSSEC。

    # 使用 dig 命令检查域名的 DNSSEC 状态
    # 如果响应中包含 RRSIG 记录,则表示 DNSSEC 已启用
    dig +dnssec yourdomain.com
  4. 降低TTL(推荐):为缩短变更生效和故障回滚时的等待时间,建议在修改DNS服务器的2448小时前,将关键业务解析记录(如主站A记录、MX记录)的TTL值降低到一个较小的值(例如300秒或600秒)。等待旧TTL时间过期后,再执行DNS服务器的修改。

操作流程

修改单个域名的DNS服务器

  1. 域名列表单击目标域名右侧管理DNS管理 > DNS修改页面单击修改DNS服务器

  2. 输入目标DNS服务器地址,单击确定

批量修改多个域名的DNS服务器

  1. 域名列表勾选多个域名,单击页面下方更多 > DNS修改

  2. 批量操作 > DNS修改页面,设置自定义DNS后,通过短信验证码提交。

  3. 批量操作记录详情页,查看是否操作成功。

变更验证

修改提交后,可通过以下命令持续观察变更生效情况。

# 将 yourdomain 替换为您的域名
# 1. 检查注册局的NS记录是否已更新为新的DNS服务器地址
dig yourdomain NS

# 2. 跟踪完整的解析路径,确认请求最终是否由新的DNS服务器响应
dig +trace yourdomain A

应用于生产环境

  • 建议在业务低峰期操作,并提前制定回滚方案。

  • 修改DNS服务器,解析生效时间取决于本地DNS中缓存的域名DNS服务器名称的TTL时间,完全生效可能需要24-48小时。

常见问题

修改DNS服务器后,为何解析不生效或部分地区访问异常?

答:这通常由以下几个原因导致:

  • DNS服务器配置错误:最常见的原因。请登录新的DNS服务商平台,检查是否已为域名添加所有必需的解析记录(A、CNAME、MX等)。

  • 本地DNS缓存:您所在地区或您个人设备使用的DNS缓存了旧的NS记录。DNS变更在全球完全生效最长需要48小时,请耐心等待或尝试刷新本地DNS缓存。

  • 自建DNS问题:如果使用自建DNS,请检查服务器防火墙是否放行53端口,DNS服务是否正常运行,权威区域配置是否正确。

可以同时使用多家DNS服务商吗?

答:这取决于域名注册商,如果域名注册商的修改域名DNS服务器处支持输入多家DNS厂商的DNS服务器名称,则可以实现,阿里云注册域名支持同时填写多家DNS厂商的DNS服务器地址。