Zdarec,
Chtěl bych se zeptat jaký nadřazený dns server použít u mého malého domácího BINDu? DNS providera se mi nechce používat z důvodu časté nedostupnosti a velké odezvy
Dík za ochotu.
Printable View
Zdarec,
Chtěl bych se zeptat jaký nadřazený dns server použít u mého malého domácího BINDu? DNS providera se mi nechce používat z důvodu časté nedostupnosti a velké odezvy
Dík za ochotu.
A co ti brani v pouzivanie root serverov? :)
Root servery bych nepouzival .. co takhle DNS servery vetsich hostingu?
Nevim, ziju s predstavou, ze DNS system ma urcitou hierarchii a z ty mi nevyplyva, ze by koncovej user mel zjistovat IP adresy zrovna od root serveru .. :)
O žádné hierarchii DNS nevím, a to se na poli internetu pohybuju už víc jak 15 let (modem a textovej terminál, čtení pošty přes pine atd.)
To, že TiMEoS napsal aby používal root servery znamená, že si jeho počítač doménu 1. řádu dohledá na jednom z cca 15 kořenových serverů, doménu 2. řádu pak na jednom z x serverů obhospodařujícímu doménu 1. řádu (do které doména 2. řádu patří) a tak dále...
...neboj, kořenových serverů se nebude ptát na IP adresu nějakého počítače či www serveru a navíc každý slušný DNS server má svoji cache ;)
Jak napsal TiMEoS, vypni v tom BINDu přeposílání požadavků na providerův DNS a používej ho jako bys žádný DNS server od svého providera nedostal - nech svůj BIND dohledávat DNS záznamy přímo. Neznám lepší alternativu, obzvlášť, když má DNS server providera výpadky.Citace:
Původně odeslal Gregy
Dobrá, vypnul jsem forwarders (zakomentoval) a vše funguje. Dobrá, ale mohl by mi někdo ještě vysvětlit koho se tedy ptá? A hlavně....kde najde koho se má ptát?
a.root-servers.net ... m.root-servers.net
IPcky tychto serverov su v subore named.ca, ktory je sucastou BINDu.
Nejhezčí je za pomoci příkazu:
tcpdump -i eth0 -n port 53
{eth0 nahraď názvem EXTERNÍHO interface}
Je důležíté vědět, že existuje cca 15 kořenových serverů s již danými IP adresami (ty má každý DNS server uložen na disku) - kde ten soubor leží najdeš v named.conf u "root" zone (předpokládám /var/lib/named/root.hint)
aktuální verze je k dispozici na ftp serveru ftp.internic.net v souboru /domain/named.root
princip dohledávání domény je jednoduchý, podle teček se rozseká na jednotlivé části (domény).
třeba 4um.ocguru.cz se rozdělí na 4um ocguru a cz. Prvně se hledá názvový server pro doménu cz - a to se tvůj server bude ptát právě jednoho z kořenových serverů. To se dá napsat tímto příkazem (ta tečka na konci je SPRÁVNĚ - součástí příkazu):
dig @IP_adresa_jednoho_z_korenovych_serveru ns cz.
pak jednoho (nebo více, pokud jeden neodpoví) z těchto cz serverů se zeptá, na názvový server domény ocguru.cz. Příkaz:Kód:;; QUESTION SECTION:
;cz. IN NS
;; ANSWER SECTION:
cz. 18000 IN NS nss.tld.cz.
cz. 18000 IN NS ns-cz.ripe.net.
cz. 18000 IN NS ns-ext.isc.org.
cz. 18000 IN NS c.ns.nic.cz.
cz. 18000 IN NS e.ns.nic.cz.
cz. 18000 IN NS ns.tld.cz.
dig @IP_adresa_jednoho_z_cz_serveru ns ocguru.cz.
No a pak se bude ptát na A záznam 4um.ocguru.cz jednoho z těchto ocguru.cz serverů. Zase příkaz:Kód:;; QUESTION SECTION:
;ocguru.cz. IN NS
;; ANSWER SECTION:
ocguru.cz. 3600 IN NS ns1.dkm.cz.
ocguru.cz. 3600 IN NS ns2.dkm.cz.
ocguru.cz. 3600 IN NS nemesis.sinister.cz.
ocguru.cz. 3600 IN NS fox.murder.cz.
dig @IP_adresa_jednoho_z_ocguru_cz_serveru 4um.ocguru.cz.
no a všechny tyto informace si schovává ve své paměti po dobu TTL (time to live) aby se neptal serverů pořád dokola.Kód:;; QUESTION SECTION:
;4um.ocguru.cz. IN A
;; ANSWER SECTION:
4um.ocguru.cz. 3600 IN CNAME bogus.ocguru.cz.
bogus.ocguru.cz. 3600 IN A 62.24.64.132
takže když si teď zadáš dig ns cz. tak uvidíš, že se číslo pořád snižuje (každou sekundu o jedno).
Ten zavináč a ip adresa nejsou nutné, můžeš psát dig ns cz. - zavináč určuje, kterého serveru se bude program dig ptát. Pokud jej nezapíšeš, tak se bude ptát defaultního serveru.
Jasne, DHCP client sa musi dotazovat iba rekurzivnych serverov. A root servre rekurzivne niesu. Ale v otazke bol spomenuty bind, ktory by bol pouzity.... a v tomto pripade je najlepsia volba pouzit root servre ked sa da, lebo bind sam ma implementovanu rekurzivnost (sak ako inak, je to server :) ), ktorou sa dotazne u servera z poddomeny, ktoru mu zaslal root (tld) server, atd. dookola :)
tak to by ses mel stydet, protoze dns servery sou organizovany hiearchicky, stejne jako sou tvoreny nazvy domen :D
a pokud chce clovek videt, jak pracuje dns, tak je uzitecny prikaz dig s parametrem +trace
btw prime pouziti root serveru je sice nejspolehlivejsi, ale taky je to zatezuje :) ... pokud ma provider dobre nastavene dns, tak je lepsi pouzit jeho dns servery, u nichz se da predpokladat, ze lezi nejbliz (co se tyce poctu hopu) a ze pouzivaji cache, kterou maji solidne "vybavenou"Kód:dig +trace 4um.ocguru.cz
Děkuji mockrát za vyčerpávající odpovědi, zase vím trochu víc :)
Jenom dodam, vice nez polovina root DNS serveru pouziva technologii anycast, ktera rozklada zatez na stovky ruznych stroju po celem svete.