Hlavní navigace

Jak funguje nový registrační systém domény .cz?

 Autor: 29
Pavel Tůma 27. 6. 2007

Sdružení CZ.NIC oznámilo začátkem dubna přechod na nový systém správy registru domén CZ. Obsah stávajícího systému DSD (Distribuovaná správa domény) provozovaného outsourcingovým partnerem bude ke konci září tohoto roku přenesen do nového systému DSDng (Distribuovaná správa domény – nová generace). Systém DSDng byl v průběhu roku 2006 vybudován na „zelené louce“. Podívejme se tedy, jak takový registrační systém vypadá.

Ano, přítomný čas je už na místě, i když k migraci ještě nedošlo. A to proto, že v DSDng už nyní funguje registr domén 0.2.4.e164.arpa, tedy českých ENUM domén. Svůj pohled tentokrát omezíme na technické aspekty systému, přestože přechod na DSDng bude doprovázen výraznými změnami na všech frontách včetně podmínek registrace, obchodních podmínek a velkoobchodní ceny registrace domén.

Infrastruktura

Provoz systému DSDng je zajištěn pomocí dedikované technologické infrastruktury a softwaru FRED (Free Registry for ENUM and Domains) pro provoz registru samého. Nejzajímavějším aspektem samotné infrastruktury je fakt, že je navržena tak, aby registru zajistila co největší dostupnost a odolnost vůči selhání hardwaru či chybám softwaru, protože provoz národní domény je zařazen mezi kritickou infrastrukturu státu. Distribuované řešení registru je proto nasazeno i řešeno paralelně ve dvou zcela oddělených lokalitách, které mají veškerá síťová propojení zdvojena pomocí dvou nezávislých tras zapojených s využitím interface bondingu, resp. EtherChannelu. Obě lokality mají také vlastní nezávislé připojení jak do dvou uzlů peeringového centra NIX, tak do zahraničí, a to duálně na IPv4 i IPv6 protokolu. Sekundární jmenné servery pro zóny spravované registrem jsou mimo dvě uvedené lokality umístěny i na několika dalších místech v Evropě (Londýn, Frankfurt nad Mohanem, Stockholm a Vídeň) a plánuje se výstavba několika dalších ve světě. Důraz je kladen i na platformovou diverzitu řešení i přesto, že to je náročnější na správu. Servery jsou založené na odlišných hardwarových platformách (Intel x86/64, AMD64, Sun UltraSPARC), používají různé operační systémy (Linux, OpenBSD, Solaris) a v případě sekundárních jmenných serverů i různé implementace DNS serveru (BIND a NSD). Stejně tak i síťová infrastruktura v každé z lokalit je založena na zařízeních více různých výrobců (Cisco, Juniper a Extreme Networks).

FRED

Mnohem zajímavější než sama infrastruktura je zcela nový software FRED zajištující provoz registru. Možná vás napadá otázka, proč vůbec vyvíjet nový registrační software a nepoužít již existující hotové řešení. Důvody jsou ovšem nasnadě. Obecně panuje ve světě správců národních registrů stav, kdy lze s klidným svědomím prohlásit, že co země, to jiný registrační systém. V mnoha případech jsou tyto systémy založeny na skriptech v shellu, Perlu nebo jiném skriptovacím jazyce. Jindy to jsou aplikace navržené před delší dobou a nejsou zcela připraveny na dnešní potřeby. Menší země, resp. země s malým počtem domén, dokonce udržují své registry manuálně, např. v tabulkách v tabulkovém procesoru. To vše by samo o sobě ještě nevadilo, protože při počtu zemí by se určitě našlo vhodné řešení. Zásadním problém je, že stejně jako jsou v různých zemích různé registrační systémy, jsou odlišné i podmínky, za kterých lze domény registrovat, postupy, jak to udělat i údaje, které se v registru uchovávají. To znamená, že ať už by byl vybrán jakýkoliv fungující systém, bylo by nutno přizpůsobit jej našim podmínkám. Proto byla vyloučena všechna „black-box“ řešení, neboť takový systém by nebyl plně v rukou CZ.NIC a úpravy by narážely na obdobné problémy jako dnes, kdy je systém spravován externí společností. Další možná řešení  – použití existujících systémů – narážela na nevýhody technického charakteru. Poslední zvažovanou cestou bylo použití a rozvíjení nějakého free nebo open source softwaru. Ani tady jsme ale neuspěli, neboť jediný dostupný nástroj OpenReg byl naposledy aktualizován v roce 2003 a na dnešní běžné instalaci Linuxu ani nešel zkompilovat.

FRED je tedy vyvinut na zelené louce. Skládá se ze čtyř základních komponentů, viz schéma.

FRED

První tři poskytují rozhraní jednotlivým typům uživatelů:

  1. Registrátorům, kteří registrují a spravují domény svých zákazníků.
  2. Veřejnosti, která si vyhledává údaje o registrovaných doménách.
  3. Administrátorům, kteří mohou zobrazovat a měnit údaje či nastavení registru.

Rozhraní pro registrátory (RIF) používá pro komunikaci mezi klientem a serverem protokol EPP (Extended Provisioning Protocol), který je de facto standardem pro registrační systémy. Použitím EPP přímo nad TCP spojením (šifrovaným pomocí SSL) se podařilo odstranit jeden z největších problémů stávajícího systému DSD – asynchronní vyřizování požadavků. Stávající systém používá k posílání EPP zpráv SMTP a S/MIME protokoly. Může se tedy stát, že ačkoliv registrátor pošle e-mail s požadavkem na registraci domény v momentu, kdy je volná, v okamžiku, kdy se tento požadavek dostane na druhé straně z fronty a zpracuje se, už tato doména volná být nemusí. Synchronní zpracování požadavků zajistí registrátorům jasnou odpověď v řádu milisekund. Rozhraní pro veřejnost (PIF) poskytuje zejména službu WHOIS, tedy notoricky známé vyhledávání údajů z registru. Služba je poskytována jako webová služba i v klasické textové podobě pomocí protokolu WHOIS. Ochrana údajů v registru před strojovým zpracováním je řešena pomocí CAPTCHA ve webovém WHOIS. Klasický WHOIS není možné takovým způsobem chránit, a proto v něm nejsou citlivé údaje zobrazovány vůbec. Rozhraní pro administrátory (ADIF) slouží zaměstnancům sdružení k manuální manipulaci s nastavením registru či údaji, které jsou v něm uložené. Rozhraní pro administrátory je řešeno jako webová aplikace, přičemž dostupná funkcionalita se odvíjí od různých úrovní uživatelských práv pro jednotlivé typy uživatelů, kteří systém používají (administrátor registru, operátor zákaznické linky atd.).

Čtvrtou komponentou je centrální registr, který propojuje všechna rozhraní, zabezpečuje ukládání dat v databázi a provádí automaticky pravidelné úlohy nad údaji v databázi, jako např. kontrolu data exspirace domén, správu ochranných lhůt, upozorňování uživatelů na důležité události jimi registrovaných objektů či technické testy nastavení konkrétních domén.

Komponenty mezi sebou komunikují pomocí rozhraní CORBA, což umožnilo vyvíjet jednotlivé části v různých programovacích jazycích (použity byly C, C++ a Python). Zároveň zpracování předávaných zpráv není tak výpočetně náročné, jako by bylo při použití alternativ jako XML-RPC nebo SOAP, kde je náročnost způsobena nutností zpracovávat XML. EPP rozhraní a klasický WHOIS jsou implementovány jako moduly do serveru Apache, protože v Apache je již vyřešena správa TCP spojení, podpora SSL i podpora IPv6, čemuž by bylo nutné věnovat úsilí při vlastní implementaci. Webové služby jsou implementovány v jazyce Python, protože při jeho použití nehrozí taková bezpečnostní rizika jako při použití PHP. Všechny použité komponenty jsou open source, aby bylo možné provozovat celý registr s pomocí svobodného softwaru, jelikož se plánuje, že i sám FRED bude v budoucnosti uvolněn pod svobodnou licencí. Z toho důvodu byl zvolen i PostgreSQL jako databázový engine pro ukládání dat registru. PostgreSQL má navíc, oproti jiným volně dostupným databázovým systémům, lepší podporu „enterprise class“ vlastností a zejména funkcí zajišťujících konzistenci dat, která je v případě doménového registru naprosto zásadní. Pro potřeby registru byl i jeho výkon více než dostačující a srovnatelný s komerčními databázovými systémy.

Co se týče dat ukládaných do registru, současný systém DSD používá třívrstvý model doména-subjekt-kontakt. FRED a s ním i nový registrační systém používají ve světě běžnější dvouvrstvý datový model doména-kontakt. Více se o datovém modelu, jeho výhodách a změnách oproti současnosti dozvíte z článku Martina Peterky Co přinese nový model správy domén CZ.

Do budoucna

Přestože běžný uživatel nemůže většinu z vlastností nového systému nijak vyzkoušet na vlastní kůži, jsou reakce na něj, zejména ze strany registrátorů, příznivé. A to zejména na odstranění subjektů z datového modelu a na komunikaci s registrem pomocí EPP nad TCP, což značně zjednodušilo a zrychlilo proces registrace domén. Společně s registrátory pak připravujeme několik dalších rozšíření, která by jim ještě více ulehčila každodenní provoz. Další vývoj jádra systému pak bude směřovat k implementaci nových vlastností systému DNS, které stávající systém nepodporoval. Bude to zejména nasazení DNSSEC ke zvýšení bezpečnosti a zajištění integrity dat při získávání údajů z DNS.

Samotné nasazení i běžný, v tuto chvíli půl roku trvající, reálný provoz FRED pro ENUM domény probíhají bez vážnějších problémů. V průběhu této doby jsme se setkali pouze s několika drobnostmi, které neovlivňují funkčnost registru a které budou průběžně odstraněny a tím bude systém ještě více optimalizován a zdokonalen. Například klientské aplikační rozhraní pro snadnější integraci přístupu do registru do jiných aplikací, je implementováno v tuto chvíli pouze pro jazyk Python, který stále není tolik rozšířen jako jiné obdobné alternativy (např. PHP), a tudíž toto aplikační rozhraní není zatím moc využíváno. Ke změně také směřuje ochrana CAPTCHA proti strojovému získávání a zpracování údajů v registru přes webovou službu WHOIS, protože snižuje přístupnost služby zejména pro zrakově postižené. Lepší možností se zdá být heuristická analýza příchozích požadavků a detekce strojového zpracování tímto způsobem.

Vývoj systému FRED do budoucna lze pak, mimo výše uvedené směry, očekávat ještě v jedné zajímavé oblasti – přímo v srdci systému, kde se definují základní podmínky provozu registru jako procesy a podmínky registrací domény (pre-paid/post-paid modely plateb, kdy je zařazena doména do zóny apod.), data ukládaná do registru, obsluha registrátorů (účtování plateb, práva přístupu k údajům, propojení s bankami) apod. To proto, že systém FRED bude uvolněn pod open source licencí a už o něj projevily zájem některé další registry národních domén z Evropy i ze světa. A ty si budou zcela určitě chtít FRED přizpůsobit svým vlastním pravidlům a podmínkám, protože v jiných zemích jsou či mohou být podmínky registrace domén úplně jiné než u nás. V duchu světa svobodného softwaru je pak poskytnout provedené úpravy či nové vlastnosti ostatním, což by mohlo vést k pozitivnímu efektu pro všechny zainteresované registry – k nastartování globální komunity vývojářů a uživatelů, která takto bude mezi sebou sdílet své znalosti a zkušenosti z provozu registrů domén.

Anketa

Přišli jste už do kontaktu s FREDem?

Našli jste v článku chybu?

27. 6. 2007 16:15

Pav Lucistnik (neregistrovaný)
Jdete na fred.nic.cz, kliknete Download... whee! je to tam vsechno ke stazeni, pod GPL.

Otazka je, co s tim bezny clovek. Pokud nejsi centralni registr, nebo registrator (tech mame v republice tucet maximalne dva tucty), tak to asi moc neuzivis :)

27. 6. 2007 11:11

Petr (neregistrovaný)
A cetl jste ten clanek poradne? Ja tam teda vidim nasledujici kousek:
Všechny použité komponenty jsou open source, aby bylo možné provozovat celý registr s pomocí svobodného softwaru, jelikož se plánuje, že i sám FRED bude v budoucnosti uvolněn pod svobodnou licencí.
Podnikatel.cz: Nejenom EET, začaly platit další zákony

Nejenom EET, začaly platit další zákony

DigiZone.cz: Sat novinky: Fransat UHD Demo

Sat novinky: Fransat UHD Demo

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Podnikatel.cz: Pozor, pojišťovny mění čísla účtů

Pozor, pojišťovny mění čísla účtů

Podnikatel.cz: Hitem investice? Půda či nemovitost

Hitem investice? Půda či nemovitost

Měšec.cz: Air Bank zruší TOP3 garanci a zdražuje kurzy

Air Bank zruší TOP3 garanci a zdražuje kurzy

Měšec.cz: Vklad na cizí účet je draze zpoplatněn (přehled)

Vklad na cizí účet je draze zpoplatněn (přehled)

DigiZone.cz: ČT má dalšího zástupce v EBU

ČT má dalšího zástupce v EBU

Vitalia.cz: Mondelez stahuje rizikovou čokoládu Milka

Mondelez stahuje rizikovou čokoládu Milka

DigiZone.cz: HD programy ČT i v UPC Horizon

HD programy ČT i v UPC Horizon

Podnikatel.cz: Víme první výsledky doby odezvy #EET

Víme první výsledky doby odezvy #EET

Vitalia.cz: Manželka je bio, ale na sex moc není

Manželka je bio, ale na sex moc není

Podnikatel.cz: Dárky v podnikání. Jak je uplatnit v daních?

Dárky v podnikání. Jak je uplatnit v daních?

Podnikatel.cz: Berňák kvůli EET prodlužuje otevírací dobu

Berňák kvůli EET prodlužuje otevírací dobu

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

Podnikatel.cz: 3, 2, 1..EET startuje. Na co nezapomenout?

3, 2, 1..EET startuje. Na co nezapomenout?

Vitalia.cz: Dáte si jahody s plísní?

Dáte si jahody s plísní?

120na80.cz: Rovnátka, která nejsou vidět

Rovnátka, která nejsou vidět

Vitalia.cz: Spor o mortadelu: podle Lidlu falšovaná nebyla

Spor o mortadelu: podle Lidlu falšovaná nebyla

Vitalia.cz: Tesco: Chudá rodina si koupí levné polské kuře

Tesco: Chudá rodina si koupí levné polské kuře