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 网络编程

MIT 许可证

39KB
810

dns

Rust

Rust 中的简单 DNS 解析器

此仓库包含一个用 Rust 编写的简单 DNS 解析器。它监听端口 2053(标准 DNS 端口)并将查询转发给递归解析器。

先决条件

  1. Rust(推荐稳定版) - (rustc)
  2. Cargo 包管理器 - (cargo)

安装

  1. 克隆此仓库:git clone https://github.com/bitsexplained/dns.git
  2. 导航到仓库目录:cd dns
  3. 安装依赖项:cargo build

附加说明

  1. 服务器默认监听端口 2053 以接收 DNS 查询。
  2. 服务器执行递归查找以解析主机名。
  3. 代码使用 dns crate 解析和生成 DNS 数据包。
  4. utils crate 为服务器提供了一些实用函数。
  5. buffer crate 提供了一个用于处理字节数据的缓冲区抽象。

进一步开发

  1. 服务器可以被扩展以支持额外的 DNS 记录类型。
  2. 服务器可以被配置为使用特定的 DNS 服务器进行查找。
  3. 您可以向服务器添加日志记录和监控功能。

免责声明

这是一个基本的 DNS 服务器实现,可能不适用于生产环境。它旨在用于教育目的,了解 Rust 中 DNS 服务器实现。

无运行时依赖