4 个版本
0.1.11 | 2024 年 1 月 5 日 |
---|---|
0.1.5 | 2024 年 1 月 5 日 |
0.1.1 | 2024 年 1 月 5 日 |
0.1.0 | 2024 年 1 月 5 日 |
#799 in 网络编程
39KB
810 行
dns
Rust 中的简单 DNS 解析器
此仓库包含一个用 Rust 编写的简单 DNS 解析器。它监听端口 2053(标准 DNS 端口)并将查询转发给递归解析器。
先决条件
- Rust(推荐稳定版) - (
rustc
) - Cargo 包管理器 - (
cargo
)
安装
- 克隆此仓库:
git clone https://github.com/bitsexplained/dns.git
- 导航到仓库目录:
cd dns
- 安装依赖项:
cargo build
附加说明
- 服务器默认监听端口 2053 以接收 DNS 查询。
- 服务器执行递归查找以解析主机名。
- 代码使用
dns
crate 解析和生成 DNS 数据包。 utils
crate 为服务器提供了一些实用函数。buffer
crate 提供了一个用于处理字节数据的缓冲区抽象。
进一步开发
- 服务器可以被扩展以支持额外的 DNS 记录类型。
- 服务器可以被配置为使用特定的 DNS 服务器进行查找。
- 您可以向服务器添加日志记录和监控功能。
免责声明
这是一个基本的 DNS 服务器实现,可能不适用于生产环境。它旨在用于教育目的,了解 Rust 中 DNS 服务器实现。