updns is a simple DNS proxy server developed using Rust
. You can intercept any domain name and return the ip you need.
Download the binary from the release page
Or use cargo
to install
bash
cargo install updns
```bash updns
updns -c /your/hosts ```
You may use sudo
to run this command because you will use the 53
port, make sure you have sufficient permissions.
Now change your local DNS server to 127.0.0.1
🚀
``` Usage: updns [COMMAND] [OPTION]
Command: add Add a DNS record rm Remove a DNS record ls Print all configured DNS records config Call vim to edit the configuration file path Print related directories help Print help information version Print version information
Option: -c Specify a config file ```
Build docker image
bash
docker build -t updns .
Start up
bash
docker run -d --name updns -p 53:53/udp --restart always updns
You can use updns config
command and then call vim
quick edit, or use updns path
find the updns's installation directory and edit the .updns
file
You can specify standard domains, or utilize regular expressions for dynamic matching, You can update the config file at any time, updns will listen for file changes
```ini bind 0.0.0.0:53 # Binding address proxy 8.8.8.8:53 # Proxy address
google.com 1.1.1.1 ^(\w+.)?go+gle.com$ 2.2.2.2
import /other/hosts ```
MIT license