This toolkit is designed to assess the performance and capacity of a Pi-hole server by generating a large number of DNS requests. It includes two methods for executing the test: a PowerShell script for advanced users and a batch file for beginners.
pihole-stress-test-en.ps1
: A PowerShell script for sending DNS queries to a Pi-hole server (English).pihole-stress-test-nl.ps1
: The same PowerShell script, but in Dutch.StartPiHoleTest-en.bat
: A batch file for Windows that provides an interactive experience, ideal for beginners (English).StartPiHoleTest-nl.bat
: The same batch file for Windows, but in Dutch.pihole_stress_test_en.sh
: A Bash script for Linux users to perform the stress test (English).pihole_stress_test_nl.sh
: The same Bash script for Linux users, but in Dutch.
- Download
pihole-stress-test-en.ps1
orpihole-stress-test-nl.ps1
. - Open PowerShell and navigate to the script's location.
- Run the script with parameters:
.\pihole-stress-test.ps1 -PiHoleIP "your_pihole_ip" -QueryCount desired_number_of_queries -Delay desired_delay
Replace your_pihole_ip, desired_number_of_queries, and desired_delay with your specific values.
- Download
pihole-stress-test-en.ps1
orpihole-stress-test-nl.ps1
and the corresponding .bat file. - Run the .bat file.
- Enter the Pi-hole IP address, number of queries, and delay between queries when prompted.
- The script will execute and start sending DNS queries to your Pi-hole server.
- Download
pihole_stress_test_en.sh
orpihole_stress_test_nl.sh
. - Make the script executable with chmod +x pihole_stress_test.sh.
- Run the script with
./pihole_stress_test.sh
and follow the prompts.
- PiHoleIP: The IP address of your Pi-hole server.
- QueryCount: The total number of DNS requests to be sent.
- Delay: The delay (in milliseconds) between each DNS request.
Below is a graphical representation showing the impact of the stress test on the Pi-hole server:
pihole-queries-chart.png
: This chart displays the total number of DNS queries processed by the Pi-hole server over the last 24 hours. A significant spike can be observed, which corresponds to the period when the stress test was executed.
These charts can help in understanding the capabilities and limitations of your Pi-hole server under high load conditions.
Use this toolkit responsibly. It is intended for testing purposes only and should not be used on networks without proper authorization.
Contributions are welcome. Feel free to fork, modify, and make pull requests.
MIT License
For support, please open an issue on the GitHub page. For direct inquiries, please contact [Your Contact Information].
- The Pi-hole project: https://pi-hole.net