我想在ruby中创建一个测试DNS服务器,但找不到合适的东西。我找到了pnet-dns(http://rubyforge.org/projects/pnet-dns/)。这个项目是不完整和错误的。还有其他选择吗?
答案 0 :(得分:3)
与语言无关的替代方法是使用PowerDNS pipe backend。因为它通过简单的管道与名称服务器通信,所以它可以用任何语言编写,包括Ruby。 (simple example in the documentation使用Perl,但应该很容易翻译。)
答案 1 :(得分:3)
RubyDNS正是您要找的。 p>
答案 2 :(得分:2)
使用赛璐珞检查ruby中另一种DNS服务器方法:https://github.com/celluloid/celluloid-dns
原始celluloid-dns
非常不完整(v0.0.1)。最近,RubyDNS被复制到celluloid-dns
(我正在说这个)。 RubyDNS将被修改为使用更新的celluloid-dns
,因为所有核心功能都将从RubyDNS移至celluloid-dns
。
如果您想要现在可以使用的东西,请使用RubyDNS。但是,将来如果您只想要低级API,请使用celluloid-dns
。
答案 3 :(得分:0)
你看过Dnsruby吗?
它的目标是完全符合RFC,尽管它主要关注客户端。但是,可以编写自己的服务器 - 使用Dnsruby::Message#decode
解码传入的数据包,以及包含测试记录的RRSets区域。然后,您可以对数据包进行编码以发送回客户端。