Split DNS
Split DNS(Split-Horizon)让同一域名根据查询来源返回意义不同的答案,例如内网返回内网 IP、公网返回公网 IP;2025 年 RFC 9704 标准化了经授权的本地 Split-Horizon 场景。
#type / concept
#status / growing
#tech / network
#protocol / dns
[!info] related notes
- 所属 MOC: DNS 知识地图
- 地理调度: GeoDNS
- 调度: CDN DNS 调度
- 汇总: 为什么同一域名返回不同 IP
Split DNS
一句话定义
Split DNS / Split-Horizon DNS 指权威服务器针对同一域名,根据查询来源提供部分或完全不同的答案。
核心机制 / 工作原理
公司内网查询 db.example.com → 10.0.x.x(内网地址)
公网查询 db.example.com → NXDOMAIN(公网不存在)
实现上,权威服务器维护「内网视图」与「外网视图」两套数据,按来源 IP 选择返回哪套。
最小例子 / 最小场景
企业把 git.corp.example.com 在内网解析到内网 Git 服务器,在外网要么不解析、要么解析到带认证的 VPN 入口。员工在公司 vs 在家(经 VPN)拿到不同结果,但都能工作。
边界与易混淆点
- RFC 9499 将 Split DNS 定义为「同一域按来源返回不同答案」;2025 年 RFC 9704 进一步标准化了经授权的本地 Split-Horizon 场景(如家庭网络把 IoT 域名指向本地网关)。
- 日常说的「DNS 分流」范围通常更广,还包含 GeoDNS、CDN 调度、解析器策略(见 geodns、cdn-dns-scheduling、why-same-domain-different-ip)。
- 排障坑:你在家查不到某个内网名,不一定是网络坏了,可能是 Split DNS 本就不对该来源返回——要结合来源判断。
- 与 GeoDNS 的区别:Split DNS 强调「按来源给不同语义的答案」(内/外、员工/访客),GeoDNS 强调「按地理位置给就近答案」。