13 个版本
使用旧的 Rust 2015
0.3.7 | 2019 年 11 月 27 日 |
---|---|
0.3.5 | 2017 年 5 月 10 日 |
0.3.3 | 2017 年 4 月 30 日 |
0.2.0 | 2017 年 4 月 4 日 |
0.1.5 | 2017 年 3 月 25 日 |
#18 in #dns-client
每月 43 次下载
45KB
1K SLoC
此页在 俄语
批处理解析
快速异步 DNS 解析器
安装
发行版软件包
您可以在 版本列表 中找到为 x86_64 预构建的 deb 和 rpm 软件包
Arch Linux 用户可以从 AUR 安装软件包 这里
软件包将配置文件安装到 /etc/batch_resolve.toml
静态二进制文件
每个版本的二进制文件都可以在 版本列表 中找到。只需将其放置在您的 PATH 中的一个目录中(例如 /usr/bin)
从 crates.io 安装
如果您已安装 Rust 工具包,您可以使用以下命令安装 batch_resolve
cargo install batch_resolve_cli
用法
输入和输出格式是用换行符分隔的列表。考虑以下输入 domains.txt
google.com
rust-lang.org
mozilla.org
解析所有 A
记录
batch_resolve --in domains.txt --out hosts.txt --query A
解析 A
和 AAAA
记录
batch_resolve -i domains.txt -o hosts.txt -q A
-i domains.txt -o hosts.txt -q AAAA
配置
默认情况下,batch_resolve 使用 Google DNS 服务器 8.8.8.8
和 8.8.4.4
,并在连接超时时重试 10
次。这些和每秒查询数参数可以在配置文件中更改。
配置文件可以放置在以下位置(优先级递减)
batch_resolve.toml
$HOME/.config/batch_resolve.toml
/etc/batch_resolve.toml
配置包括 DNS 服务器、每秒查询数和失败重试次数
# DNS servers are only accepted as socket addresses
# If port is not specified default DNS :53 port will be used
dns = [
"8.8.8.8",
"8.8.4.4"
]
# How many queries to perform per second
# WARNING: Google Public DNS guaranteed to handle 500 requests per second max
# Please make sure that resolve results do not vary with higher request rates
# before using high QPS configuration in production.
# Alternatively you can use your own local caching DNS server.
queries_per_second = 500
# Times to retry on connection timeout
retry = 5
配置模板也可以在此处找到 这里
贡献
请克隆存储库以构建项目
git clone [email protected]:mersinvald/batch_resolve.git
然后运行 cargo build
cd batch_resolve
cargo build
batch_resolve
可以使用稳定版本的 Rust 进行构建
如果您有任何改进建议或错误报告,请提交问题。
欢迎提交 Pull Requests!
许可协议
本项目采用 MIT 许可协议 - 详细内容请参阅 LICENSE.md 文件
致谢
捐赠
如果您觉得这项工作有价值,并且它为您节省了时间,您可以给我一杯咖啡:)
依赖项
~14–21MB
~293K SLoC