#dns-server #toy #cache #weekend #port #server-port #testing

bin+lib dns_in_a_weekend

实现了缓存的DNS服务器的玩具实现

2个版本

0.1.1 2023年5月14日
0.1.0 2023年5月14日

#248缓存

自定义许可证

35KB
880

周末的DNS服务器

这是一个遵循周末实现DNS指南的DNS服务器玩具实现。

用法

在端口5354启动DNS服务器

RUST_LOG=info dns-in-a-weekend --port 5354

使用dig发送DNS请求以测试其可访问性

dig @127.0.0.1 -p 5354 google.com

如果dig打印DNS响应,则表示一切正常。

开发

安装

通过cargo

cargo install dns-in-a-weekend

构建

检查项目并运行,如果您已经设置了cargo。

cargo build --release

功能

缓存

它实现了DNS解析的缓存,这样我们就不会压倒根域名服务器。

注意事项:缓存没有TTL,所以可能会过时(尽管DNSRecord本身有TTL,我们没有在这里实现它)。

依赖关系

~4.5–6.5MB
~114K SLoC