I wanted something like pi-hole that would also automatically choose the fastest DNS server and implement simple caching. Also I wanted to customize my DNS server configuration based on the device the request came from and define specific rules for the cache.
Since I could not find any implementation that provided all these features I started this project.
- NodeJS 8.11.1
- tsc 2.8.3
- Clone this repository
- Run tsc (TypeScript compiler) in the root directory of the repository
- Run
node ./dist/app.js
- The proxy should now be listening to DNS requests on your local machine's port 53
- Fully implement IPv6 and requests via TCP
- Automatically choose fastest server
- Adblock functionality
- Smarter caching
- Monitoring
- Web UI