Welcome to DNS-mixer! This project handles DNS requests and forwards them to multiple DNS providers, ensuring reliability and redundancy in DNS resolution.
DNS-mixer is a Python-based DNS forwarding tool designed to provide flexibility and resilience by dynamically switching between multiple DNS providers. This project aims to offer a reliable DNS resolution mechanism.
- esp8266/esp32 device with MicroPython support. read more..
- Network connectivity between the esp8266/esp32 and the devices making DNS requests read more..
Adjust the WiFi settings in the code to match your network credentials.
wifi_ssid = "your_wifi_ssid"
wifi_password = "your_wifi_password"
static_ip = "your_static_ip"
Modify the list of DNS providers to suit your preferences.
dns_providers_ipv4 = ["9.9.9.9", "149.112.112.112", "1.0.0.1","94.140.14.14", "1.1.1.1", "8.8.8.8"]
The code includes a function to connect to WiFi. Ensure the esp8266/esp32 is within range of the WiFi network.
connect_to_wifi()
The main function handle_dns_request
is responsible for processing DNS requests, forwarding them to a randomly chosen DNS provider, and handling LED indications.
handle_dns_request(data, addr)
If you encounter issues, refer to the troubleshooting section in the code. Enable debugging prints to gain insights into the code execution.
Feel free to contribute to this project by submitting issues or pull requests. Your feedback and improvements are highly appreciated.
This project is licensed under the MIT License.