支持DNSSEC和/或实验性新RR类型的DNS解析库

1 投票
2 回答
1006 浏览
提问于 2025-04-16 03:30

现在最先进的DNS解析库是什么样的?我特别想知道那些完整的(不是简单的)解析器,它们支持以下任意功能:在一个请求包中发送多个查询、完全的DNSSEC验证、向应用程序返回关于DNSSEC验证的详细信息,并且能够处理一些实验性的新的资源记录,而不需要太多的修改。异步查询虽然不错,但不是必须的。

我比较喜欢的编程语言有C、C++、Python或者Javascript,不过我会考虑任何语言(不过我真的不想知道你用INTERCAL写的DNS解析器,哈哈)。如果有一个纯JavaScript的实现,可以在支持WebSockets的浏览器中运行,那就更棒了。

2 个回答

0

DNSSEC-Tools项目有一个叫libval的C语言库(还有对应的perl绑定),可以通过它的API支持多线程的DNSSEC查询。这个库可以在很多Linux平台上使用,其他大多数平台也能运行。

(实际上,我现在用的Firefox浏览器就是基于这个库来提供DNSSEC保护的版本。)

不过,你不能在一个数据包里问两个问题。其他人说得没错……

1

我知道的最好的库是 libunbound,它包含了DNSSEC验证功能,属于Unbound这个软件包的一部分。

需要注意的是,DNS协议本身并不支持你提到的第一个需求(在一个数据包中发送多个查询)。你能做的最好的办法是使用TCP协议,然后通过一个连接依次发送多个查询。

撰写回答