windows dns默认禁止区域传送,必须显式配置ip白名单或ns验证;主服务器需在“区域传送”中勾选“仅以下服务器”并填入精确ipv4/ipv6地址(不支持主机名、cidr或通配符),辅服务器须禁用动态更新、不可反向作主、且推荐启用tsig签名增强安全性。
windows dns 默认禁止区域传送,必须显式配置白名单或 ns 验证才能启用;不设限制等于把整个内网域名结构暴露给任意扫描者。
主服务器上必须禁用“允许所有服务器”并填入精确 IP
在 DNS 管理器中右键主区域 → “属性” → “区域传送”选项卡,勾选“仅以下服务器”,然后手动输入辅助服务器的 IPv4 或 IPv6 地址。不能写主机名,也不能用 CIDR 段(如 192.168.1.0/24),Windows 不识别这类格式。
常见错误现象:
- 填了主机名(如
dns-slave.example.com)→ 传送失败,日志报Event ID 4515 - 用了地址段或通配符 → 实际无效果,等同于未配置
- 辅助服务器 IP 变更后没同步更新 → 同步中断且无明确告警
TSIG 密钥比 IP 白名单更可靠,但主辅必须完全一致
仅靠 IP 白名单防不住源地址伪造攻击,尤其跨公网或 DMZ 场景。建议启用 TSIG,它要求每次 AXFR/IXFR 请求都携带加密签名。
实操要点:
- 在主服务器运行
dnscmd /config /tsigkey或用 PowerShell 的Set-DnsServerPrimaryZone设置密钥名称和算法(推荐HMAC-SHA256) - 辅助服务器新建辅助区域时,在“新建辅助区域向导”的最后一步必须填写**完全相同的密钥名称**(大小写敏感)
- 密钥本身不传输,只用于签名校验;若主辅密钥名称或内容不一致,事件查看器会持续记录
Event ID 4515
辅助区域必须禁用动态更新且不可反向充当主服务器
辅助区域本质是只读副本,任何客户端(包括 DHCP 服务)发起的动态更新请求都应被拒绝。否则可能造成主辅数据冲突甚至覆盖。
免费 DNS 与邮件安全分析(IntoDNS.ai):包括 DNSSEC、SPF、DKIM、DMARC、MTA-STS、BIMI、SMTP STARTTLS、FCrDNS、黑名单、发件人要求及报告。
检查路径:辅助服务器 DNS 管理器 → 右键对应辅助区域 → “属性” → “常规”选项卡 → “动态更新”下拉菜单必须为 不允许任何动态更新。
其他关键限制:
- Windows DNS 不支持级联从属(A→B→C),辅助区域不能再被其他服务器设为“主”
- SOA 序列号不递增 → 辅助服务器不会重传,哪怕区域文件已改;修改后务必在主服务器上右键区域 → “更新序列号”
- 防火墙需放行 TCP 53(非 UDP),区域传送强制走 TCP
验证同步是否真正生效不能只看界面状态
DNS 管理器里显示“辅助区域已创建”不代表数据已同步完成。必须交叉验证 SOA 和实际解析结果。
快速验证步骤:
- 主服务器执行:
dnscmd /zoneinfo example.com,记下Serial Number - 辅助服务器执行相同命令,对比序列号是否一致
- 用
dig @辅助服务器IP example.com SOA +short查看返回的 SOA 是否与主服务器一致 - 查 DNS 事件日志,重点过滤
Event ID 4013(传送开始)、4016(传送完成)、4515(TSIG 失败)
最容易被忽略的是:NS 记录变更后,主服务器本地缓存未刷新,导致“仅允许 NS 列表中服务器”模式下传送失败——这种情况下,重启 DNS 服务比等待 TTL 更可靠。










