Dnešní den není přelomový jen kvůli tomu, že dětem začíná škola. Dnes totiž současně opouští školku doména .cz a přechodem k novému systému registrací a správy obrazně postupuje do školy také. Nebylo to však bezbolestné – včera večer rázem na několik hodin zmizelo z českého Internetu 95 procent domén!
Včerejší den nepochybně patřil v EUnetu, který se o přechod domény na nový systém staral nejvíce, k těm zábavnějším. Nejenže bylo třeba všechno překlápět za chodu na nový systém tak, aby úderem půlnoci mohlo vypuknout, co vypuknout mělo, ale navíc chodily ve zvýšeném počtu registrace nových domén. Ostatně aby ne: vždyť včera byl poslední den, kdy bylo možné si doménu zaregistrovat za 800, opozdilci ji už budou mít za 1600. Vtipně to v devět hodin večer komentoval Jiří Orság: „Dneska jsme odeslali 2.829.968 bytů mailu a celkem přišlo 423 domén a 503 bill-c :-). A to ještě nekončíme, co to píšu přišlo dalších 13 domén. Vyhodil jsem veškeré cronové automatiky, abych to mohl dotáhnout manuálně a abychom neztratili synchronizaci. Jenom si nedovedu představit, jak by takový přechod s možností ušetřit 800 Kč probíhal ve Skotsku, to by asi ucpalo mail.“
Velký třesk byl ovšem provázen i událostmi poněkud méně veselými. Zhruba v osm hodin večer totiž došlo k tomu, že se špatně vygeneroval zónový soubor na primárním nameserveru pro doménu .cz a vypadla z něj drtivá většina domén. Jako první si toho všiml Petr Souček, který o problému napsal krátkou reportáž o několika dějstvích, jak se situace postupně vyvíjela.
Pro neznalé bude nejprve dobré vysvětlit, jak vlastně funguje aktualizace domén a jejich obnovování na primárním a sekundárních nameserverech. Správce domény zásadně záznam mění jen na primárním nameserveru a z něj si jej pak už automaticky stahují sekundární nameservery v určených časových intervalech. Aby se poznalo, zda došlo k nějaké změně a má se tedy soubor znovu celý stahovat, má každý soubor takzvané sériové číslo. Pokud je sériové číslo na primáru vyšší, než jaké má sekundár, stahuje se. Pokud je stejné, nebo dokonce nižší, neděje se nic. Podle příslušných RFC se tato sériová čísla uvádějí ve tvaru YYYYMMDDxx, tedy nejprve datum změny a poté pořadové číslo verze z daného dne. Například zónový soubor po třetí změně během včerejška by tedy nesl číslo 1999083103. Jsou ovšem i systémy, které toto doporučení nedodržují a číslují záznamy prostě od jedničky až do nekonečna. Podstatné přitom je, že při každé změně se musí číslo zvýšit, aby zareagovaly sekundární nameservery.
Jak píše Petr Souček, na primárním nameserveru pro doménu cz nějakou dobu existoval zónový soubor se sériovým číslem v soa 1999083105, ve kterém chyběla spousta domén, třeba junyks.cz. Některé sekundary, ns.eu.net a ns2.nic.fr si ho stačily stáhnout, jiné, konkrétně ns.uu.net, sparky.arl.mil a sunic.sunet.se to nestihly a zůstal na nich starý zónový soubor se sériovým číslem 1999083102. V EUnetu na to buď brzy přišli, nebo se stalo něco jiného v rámci přechodu na nový systém, a dali tam opravený zónový soubor s číslem 1999083103.
A tady se dostáváme k tomu, proč jsme si tak obšírně vysvětlovali, kdy sekundáry stahují nový soubor. Tato opravená verze měla totiž číslo nižší než verze poškozená, takže sekundární nameservery ji ignorovaly a až do vygenerování nové verze s dnešním datem (tedy vyšším číslem) jim před 90 procent domén chybělo. Několik hodin tak dva nameservery dávaly autoritativní odpověď, že domény neexistují. A co hůř, dotazující servery si tuto odpověď navíc zacachovaly, takže na problémy mohou uživatelé narazit klidně i během dnešního dne. Projevuje se to ostatně nejen tím, že se nemůžete dostat na určité servery, ale u postižených domén se vrací i pošta, jak o tom svědčí následující kousek chybové hlášky:
Hi. This is the qmail-send program at ns1.ryston.cz.
I'm afraid I wasn't able to deliver your message to the following addresses.
This is a permanent error; I've given up. Sorry it didn't work out.
<marek@antos.cz>:
Sorry, I couldn't find any host named antos.cz. (#5.1.2)
Zajímavá je ještě statistika, kolik domén vlastně přesně zmizelo. V původní verzi s číslem 2 bylo celkem 139837 záznamů (co doména, to minimálně dva záznamy, v některých případech ovšem i více – pokud má více nameserverů, popř. glue záznam). Ve špatné verzi pak pouhých 6204 záznamů, což znamená, že zhruba 95,6 % českých domén zmizelo ze světa.
Když se kácí les, létají třísky. Převod domény jistě není snadná záležitost a tento problém asi nikomu příliš velké vrásky nenadělal, takže celková bilance není tak hrozná. Přesto se nelze nezamýšlet nad tím, zda by přechod nemohl být hladší, kdyby byl celý nový systém otestován dříve a ne až na poslední chvíli, jak o tom hovořily zprávy hned z několika zdrojů.