https://github.com/cookiengineer/dnsquery
:heart_on_fire: Dead-simple DNS client and ronin that manages /etc/hosts
https://github.com/cookiengineer/dnsquery
Last synced: 24 days ago
JSON representation
:heart_on_fire: Dead-simple DNS client and ronin that manages /etc/hosts
- Host: GitHub
- URL: https://github.com/cookiengineer/dnsquery
- Owner: cookiengineer
- Created: 2025-02-14T07:18:39.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-03-30T16:00:50.000Z (over 1 year ago)
- Last Synced: 2025-10-23T01:37:41.254Z (9 months ago)
- Language: Go
- Size: 40 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
# dnsquery
Dead-simple DNS client implemented in pure go that uses a ronin and caches the results in
the local `/etc/hosts` file to prevent DNS tracking in hostile environments.
## Installation
```bash
# Clone
git clone https://github.com/cookiengineer/dnsquery.git ./dnsquery;
# Build
cd ./dnsquery;
go build -o dnsquery ./cmds/dnsquery/main.go;
# Install
sudo mv dnsquery /usr/bin/dnsquery;
sudo chmod +x /usr/bin/dnsquery;
```
## Usage
```bash
# Allow writes to /etc/hosts for non-root users
sudo chmod +w /etc/hosts;
# Resolve a censored domain through DNS ronin
dnsquery libgen.li;
# If it fails to resolve (exit code 1), try again
dnsquery libgen.li;
```
## Work-in-Progress
- [ ] Support Windows and `C:\%WINDIR%\system32\etc\hosts` file path?
## License
This project is licensed under the [GNU AGPL 3.0](./AGPL-3.0.md) license.
## Sponsorship
If you like the work that I do and want me to continue working on things
like this; it would be awesome if you would sponsor this project:
https://github.com/sponsors/cookiengineer