我们已经建立了一条通往合作伙伴公司的隧道。他们的部分安全策略坚持我们的 DNS 查询仅是 TCP(不会路由 UDP)。
我们能够使用dig +tcp
并验证查询是否正确解析,但我们自己的 AD 集成 (Server 2008) DNS 服务器使用 UDP 转发查询,这将超时并在 SERVFAIL 中重新返回给原始客户端。
条件转发器的设置不提供协议选择:
RFC 1123 说
发送非区域传输查询的 DNS 解析器或服务器必须首先发送 UDP 查询。
...但这已在 5966 年被
解析器应该首先发送一个 UDP 查询,但如果它有充分的理由预期如果通过 UDP 发送响应将被截断,则可以选择发送 TCP 查询
如果我使用的是 Server 2008(上一个 RFC 是从 2010 年开始),这可不是什么好兆头。有谁知道我可以强制我的转发器仅使用 TCP(或至少首先)?是否有可能在任何其他 DNS 实现中,以防我必须设置一个作为中介?