Uses old Rust 2015
|0.3.7||Nov 27, 2019|
|0.3.5||May 10, 2017|
|0.3.3||Apr 30, 2017|
|0.2.0||Apr 4, 2017|
|0.1.5||Mar 25, 2017|
43 downloads per month
This page in Russian
Fast asynchronous DNS resolver
There are prebuilt deb and rpm packages for x86_64 you can find within the releases in the list of versions
Arch Linux users can install the package from AUR
Packages install the config file into /etc/batch_resolve.toml
Every release binary can be found in the the list of versions. Just place it to one of directories in your PATH (e.g. /usr/bin)
If you have rust toolkit installed, you can install batch_resolve with
cargo install batch_resolve_cli
Input and output format is list delimited with new line.
Consider such input
google.com rust-lang.org mozilla.org
batch_resolve --in domains.txt --out hosts.txt --query A
batch_resolve -i domains.txt -o hosts.txt -q A -i domains.txt -o hosts.txt -q AAAA
By default batch_resolve uses Google DNS servers
126.96.36.199 and retries
10 times on Connection Timeout error.
These and Queries Per Second parameters may be altered in configuration file.
Configuration file may be placed in the following locations (priority descending):
batch_resolve.toml $HOME/.config/batch_resolve.toml /etc/batch_resolve.toml
Configuration includes DNS servers, queries per second amount and retries on failure count
# DNS servers are only accepted as socket addresses # If port is not specified default DNS :53 port will be used dns = [ "188.8.131.52", "184.108.40.206" ] # 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
Configuration template can also be found here
To build project please clone the repo
git clone firstname.lastname@example.org:mersinvald/batch_resolve.git
cd batch_resolve cargo build
batch_resolve can be build with stable rust
Please file an issue if you have any improvement suggestion or bug report.
Pull Requests are welcome also!
This project is licensed under the MIT License - see the LICENSE.md file for details
- TRust-DNS: A Rust based DNS client and server, built to be safe and secure from the ground up
- rust-musl-builder: Docker container for easily building static Rust binariesgi
If you feel that this work is worth something and that it saved your time you can give me a cup of coffee :)