Testování DNS serveru, kompletní příkazy
TY MÁŠ PLNOHODNOTNÝ REKURZIVNÍ RESOLVER. Neběžíš bez resolveru.
Pojďme si to vysvětlit jednoduše, jak ten řetězec funguje:
Tvůj počítač/telefon se zeptá: "Kdo je seznam.cz?" -> Dotaz pošle na 192.168.54.3:53 (to je Pi-hole).
Pi-hole (na portu 53) dotaz přijme:
Zkontroluje, jestli seznam.cz není na blacklistu. Není.
Řekne si: "OK, nevím, kdo to je. Musím se zeptat svého nadřízeného (upstream) serveru."
Podle naší konfigurace (PIHOLE_DNS_: "172.20.0.10#5335") přepošle dotaz na interní adresu 172.20.0.10 na port 5335.
Unbound (na 172.20.0.10:5335) dotaz přijme:
A teď přichází to kouzlo. Unbound NEPOŠLE dotaz na žádný Google DNS, Cloudflare, ani jiný veřejný resolver.
Místo toho se podívá do svého souboru root.hints (který jsi stáhl).
Začne se ptát přímo kořenových serverů internetu: "Kde najdu servery pro doménu .cz?"
Kořenový server mu odpoví.
On se pak zeptá .cz serveru: "Kde najdu server pro doménu seznam.cz?"
.cz server mu odpoví.
Nakonec se zeptá autoritativního serveru pro seznam.cz: "Jakou máš IP adresu?"
Server seznam.cz mu odpoví a Unbound získá finální IP adresu.
Tento celý proces se jmenuje REKURZE. Unbound je tvůj vlastní soukromý REKURZIVNÍ RESOLVER.
Unbound pošle odpověď zpět Pi-hole.
Pi-hole pošle finální odpověď zpět tvému počítači.
Shrnutí:
Pi-hole je jen filtr a "přeposílač" (forwarder).
Unbound je tvůj vlastní, soukromý, rekurzivní resolver. On je ten, kdo dělá tu těžkou práci a zjišťuje IP adresy od úplného začátku.
Takže ano, jedeš s plnohodnotným resolverem, který jsi chtěl. Je to přesně ta konfigurace, která zajišťuje maximální soukromí a nezávislost.
1. Test lokálního resolveru (Pi-hole)
# Otestujte základní dotaz přes Pi-hole
dig @127.0.0.1 example.com
# Test rekurze + DNSSEC
dig @127.0.0.1 example.com +dnssec +multiline
# Test blokování reklam (mělo vrátit 0.0.0.0)
dig @127.0.0.1 doubleclick.net
2. Test Unbound (lokální cache)
# Dotaz přímo na Unbound (port 5053)
dig @127.0.0.1 -p 5053 example.com
# Zkontrolujte cache (TTL by se měl snižovat)
dig @127.0.0.1 -p 5053 example.com +short
3. Test DNSCrypt-proxy (šifrovaný DNS)
# Dotaz přímo na DNSCrypt (port 5300)
dig @127.0.0.1 -p 5300 example.com
# Test DoH (DNS-over-HTTPS)
curl -H 'accept: application/dns-json' 'http://127.0.0.1:5300/dns-query?name=example.com&type=A'
4. Test z externích zařízení
# Z Synology (IP 192.168.54.254)
nslookup example.com 192.168.54.X # (IP Pi-hole)
# Z jiného zařízení v síti
dig @192.168.54.X example.com # (IP Pi-hole)
5. Pokročilé testy
# Test rychlosti (měří odezvu)
time dig @127.0.0.1 example.com
# Test DNSSEC (mělo být "ad" flag)
dig @127.0.0.1 sigok.verteiltesysteme.net +dnssec
# Test netestovaného doménového jména (mělo selhat)
dig @127.0.0.1 test.dnssec-failed.org
Ideální výsledek
-
Všechny dotazy by měly vracet rychlé odpovědi (pod 50 ms)
-
DNSSEC dotazy by měly mít "ad" flag (ověřené)
-
Blokované domény by měly vracet 0.0.0.0
-
V logách by neměly být chyby "ignoring query"