FAQ
Frequently Asked Questions¶
This is a collection of questions that were asked repeatedly on discourse or github.
Odd random character queries in Pi-hole's query logs¶
You see three queries containing only random strings, sometimes with the local domain suffix, like
yfjmdpisrvyrnq
attxnwheeeuiad
nskywzjbpj
Solution:
This happens when using Chrome-based browsers. Chrome tries to find out if someone is messing up with the DNS (i.e. wildcard DNS servers to catch all domains). Chrome does this by issuing DNS requests to randomly generated domain names with between 7 and 15 characters
In a normal setup this results in a “No such name” response from your DNS server. If the DNS server you use has a wildcard setup, each of these requests will result in a response (which is normally even the same) so Chrome knows that there is someone messing around with DNS responses.
Link to Chromium's source code explaining the function.
Pi-hole update fails due to repository changed it's 'Suite' value¶
This happens after a manual OS upgrade to the next major version on deb based systems. A typical message is
Repository 'http://archive.raspberrypi.org/debian buster InRelease' changed its 'Suite' value from 'stable' to 'oldstable'
Solution:
sudo apt-get update --allow-releaseinfo-change
Pi-hole's gravity complains about invalid IDN domains¶
During a gravity update, Pi-hole complains about some invalid Internationalized Domain Names (IDN) domains
Sample of invalid domains:
- test.中国
- test.рф
- test.भारत
- e-geräteundhaus.com
- rëddït.com
Solution:
Ask the list maintainer to convert the IDNs to their punycode representation.
Internationalizing Domain Names in Applications (IDNA) was conceived to allow client-side use of language-specific characters in domain names without requiring any existing infrastructure (DNS servers, mall servers, etc., including associated protocols) to change. Accordingly, the corresponding original RFC 3490 clearly states that IDNA is employed at application level, not on the server side. Hence, DNS servers never see any IDN domain name, which means DNS records do not store IDN domain names at all, only their Punycode representations.
Error while loading data from the long-term database¶
If requesting a lot of data from the long-term database you get this error
An unknown error occurred while loading the data.
Check the server's log files (/var/log/lighttpd/error-pihole.log) for details.
You may need to increase PHP memory limit.
You can find more info in pi-hole's FAQ:
https://docs.pi-hole.net/main/faq/#error-while-loading-data-from-the-long-term-database
Solution:
You need to increase PHP's memory and restart the server.
The amount of memory needed depends on many factors:
- available system RAM,
- other processes running on your device,
- the amount of data you want to process.
One approach would be to increase the limit by 128M and check if it was enough to retrieve the data. If not, add another 128M, check again. If not, add another 128M, check again, until you find the best value.
Note: Do not assign all available memory as this can freeze your system. Please consider the possibility that your system does not have enough memory at all to load all the needed data.
Steps to increase memory_limit
:
Open or create .user.ini
file:
sudo nano /var/www/html/.user.ini
Add (or change) the memory limit (common abbreviation M=megabyte, G=gigabyte):
memory_limit = 256M
Restart the web server:
sudo service lighttpd restart
In which order are locally defined DNS records used?¶
Answer:
The order of locally defined DNS records is:
- The device's host name and
pi.hole
- Configured in a config file in
/etc/dnsmasq.d/
- Read from
/etc/hosts
- Read from the "Local (custom) DNS" list (stored in
/etc/pihole/custom.list
)
Only the first record will trigger an address-to-name association.