Vlákno názorů k článku Srdce Internetu = root servers? od Petr Souček - Článek je pěkný, ale systém vyřizováni DNS požadavků...

  • Článek je starý, nové názory již nelze přidávat.
  • 8. 2. 2002 12:56

    Petr Souček (neregistrovaný)
    Článek je pěkný, ale systém vyřizováni DNS požadavků je popsán dost špatně.
    Ve skutečnosti je to takto:
    Klient má nastavený dns server, kterého se ptá, buď je to lokální dns server, nebo dns server providera. To je v článku správně.
    Tento dns server může být nastaven buď tak, že všechny dotazy forwarduje na nějaký jiný dns server a pouze cachuje odpovědi, nebo dotazy plnohodnotně řeší.
    Pokud má plnohodnotně vyřešit dotaz, nejprve se zeptá kořenového (root) dns serveru (seznam root dns serverů se součástí konfigurace dns serveru). Ten ho odkáže na server, který je zodovědný za TLD (top level domain, doména prvního stupně), druhý dotaz směřuje tedy na TLD server. Ten, pokud je nerekurzivní (doporučeno) zase pošle odpověď, který dns server je odpovědný za doménu druhého stupně. Třetí dotaz tedy tedy směřuje na tento dns server, a zpravidla tento server již poskytne autoritativní odpověď.
    Můj plnohodnotný dns server si pak už pamatuje (než záznam expiruje), který dns sever je zodpovědný za doménu první i druhé úrovně, a pokud se ho zeptám na další jméno spadající do stejné TLD, tak není třeba se znovu ptát root dns serveru. Pokud ale bude z jiné, nebo pokud je informace v mém serveru vyexpirovaná, posílá se další dotaz na root dns server.

    Takhle to rozepisuji proto, aby bylo jasné, že to řešení vždy začíná přímým dotazem na kořenový (root) dns server, a probíhá shora dolů, nikoliv, jak je v článku uvedeno, že by se začínalo dotazem na server druhé úrovně, pak první a nakonec root. Systém je hierarchický, proto nemá smysl se ptát serveru zodpovědného za TLD CZ cz.eunet.cz na adresu z domény SK. A v případě, že se ptám na překlad doménového jména www.neexistujicidomena.cz, tak mi naopak odpověď serveru cz.eunet.cz, že doména neexistuje, musí stačit, a neptám se nikde jinde. Každý server má delegovánu svou odpovědnost, a systém je budován zvrchu od root dns. Žádný resolvující dns server se proto nebude ptát jinde.
    Pokud tedy nemám v cache z dřívějšího dotazu IP adresu dns serveru zodpovědného za doménu .CZ, tak v případě výpadku kořenových dns serverů nemám žádnou možnost jak tento server nalézt.
    Možná jsem to popsal trochu neohrabaně, ale doufám že správně.

    ISP také nemají žádné servery druhé úrovně, jak je v článku uvedeno. (cz.eunet.cz a ostaní dns servery druhé úrovně jsou nerekurzivní a nedají (a nesmějí) se k plnému překladu použít).

    Kořenový server žádné požadavky nikam nepřenáší.

    "Cache tak funguje jako airbag pro kořenové servery, které jsou tak chráněny před případnými útoky."

    Ne, to je vůbec neochrání, útoky přece vedou na server a ne na cache. Pouze se trochu zmírní dopad.

    Závěr je myslím přehnaně optimistický. Jak je v článku uvedeno, výpadek 50% serverů by už způsobil komplikace. Dovedu si představi jak exploit, tak DOS (třeba DDOS) který by to mohl způsobit. Už v minulosti tu byl případ, kdy byla autorita kořenových serverů "ukradena" Alternicem. A myslím, že není důvod se domnívat, že se něco podobného nemůže opakovat. V každém programu je chyba.
Upozorníme vás na články, které by vám neměly uniknout (maximálně 2x týdně).