KOMENTÁŘ: Informace o klientské IP adrese v DNS dotazech je cesta do pekel

Foo Bar , 08. únor 2010 20:37 5 komentářů

Ondřej Surý
E-mailovou konferenci pracovní skupiny DNSEXT, jež se zabývá rozšiřováním protokolu DNS, aktuálně rozbouřila diskuze nad novým návrhem Client IP information in DNS requests (Informace o klientské IP adrese v DNS dotazech). Návrh na nový standard společně podaly společnosti Google a Neustar. Sám Google před nedávnou dobou spustil službu Google Public DNS, a tudíž představuje zástupce provozovatele veřejného resolveru. Naopak Neustar stojí na opačném konci, provozuje několik TLD a autoritativní DNS servery získané akvizicí firmy UltraDNS. To jen tak na vysvětlenou, proč se tito dva hráči pouštějí do tahanic okolo DNS.

Problematický návrh přidává do DNS zprávy volitelnou položku, která obsahuje IP adresu (resp. adresu sítě) klienta, který položil dotaz rekurzivnímu resolveru. Možná vás teď napadá otázka, k čemu je tato informace autoritativnímu DNS serveru dobrá?

Obecně k ničemu. Tento návrh přinese užitek pouze malé skupině provozovatelů DNS serverů – hlavní využití by tento návrh měl při distribuci obsahu (CDN), kdy už v dnešní době dochází na základě IP adresy rekurzivního resolveru k přizpůsobení odpovědi, kterou poskytne autoritativní DNS server. Typickým příkladem je například právě Google.

Ondrej Sury
Ondřej Surý je jako vedoucí Laboratoří CZ.NIC
odpovědný za tým hledající problémy spojené
s bezpečností Internetu a navrhující jejich řešení.

Teoretické znalosti získal Ondřej studiem
informatiky na MFF UK v Praze, praktické pak
ve společnosti ACTIVE 24. Ve sdružení CZ.NIC
pracuje od roku 2005. Je rovněž zakladatelem
českého lokálního týmu Ubuntu Linux.

Jak to funguje

Pokud se zeptám na adresu www.google.com ze svého pracovního počítače (tedy aktuálně s IP adresou přidělenou CZ.NICu), dostanu tuto odpověď:


www.google.com. IN CNAME www.l.google.com.
www.l.google.com. IN A 74.125.87.105
www.l.google.com. IN A 74.125.87.147
www.l.google.com. IN A 74.125.87.99
www.l.google.com. IN A 74.125.87.104
www.l.google.com. IN A 74.125.87.103

Pokud se zeptám z našeho DNS serveru v Londýnském LINXu, dostanu odpověď úplně jinou:

www.google.com. IN CNAME www.l.google.com.
www.l.google.com. IN CNAME www-tmmdi.l.google.com.
www-tmmdi.l.google.com. IN A 216.239.59.99
www-tmmdi.l.google.com. IN A 216.239.59.103
www-tmmdi.l.google.com. IN A 216.239.59.147
www-tmmdi.l.google.com. IN A 216.239.59.104

Náš DNS uzel v Kaliforni vidí opět jiné IP adresy:

www.google.com. IN CNAME www.l.google.com.
www.l.google.com. IN A 74.125.87.99
www.l.google.com. IN A 74.125.87.103
www.l.google.com. IN A 74.125.87.104
www.l.google.com. IN A 74.125.87.105
www.l.google.com. IN A 74.125.87.147

Těmito DNS triky se dá geograficky rozložit zátěž mezi různé lokality. S příchodem veřejných otevřených rekurzivních resolverů (provozovaných jako služba) ovšem nastává problém. Jak budou vypadat stejné dotazy ze stejných lokalit, když začnu používat například servery OpenDNS.

Z Česka:


www.google.com. IN CNAME google.navigation.opendns.com.
google.navigation.opendns.com. IN A 208.69.34.230
google.navigation.opendns.com. IN A 208.69.34.231

Z Kalifornie:


www.google.com. IN CNAME google.navigation.opendns.com.
google.navigation.opendns.com. IN A 208.67.219.230
google.navigation.opendns.com. IN A 208.67.219.231

Přesměrováním na vlastní server OpenDNS řeší problém, který představuje neschopnost předat informaci o lokaci DNS klienta autoritativnímu serveru, k přesměrování dochází teprve na úrovni HTTP protokolu. Mimochodem všimněte si, jak OpenDNS bez zeptání vstupuje do vašeho DNS provozu. O důvod více, proč používat DNSSEC a nepoužívat OpenDNS.

Google se svou službou Google Public DNS řeší stejný problém. Sám pro sebe by tento protokol nepotřeboval, protože informaci o klientovi má, nicméně dalším třetím stranám ji není schopný předat.

Proč to vidím, jako cestu do pekel

Návrh, o kterém se aktuálně diskutuje v pracovní skupině DNSEXT, tento problém řeší přidáním volitelné (EDNS0 option) informace o klientské IP adrese, jak v DNS dotazu, tak v DNS odpovědi. Bez hlubšího zamyšlení se může tento nápad jevit jako dobrý. Nicméně pokud se zamyslíme nad dalšími souvislostmi, tak objevíme několik důvodů, proč by tento návrh neměl projít.

Důvod první: Myslím si, že změny důležitých protokolů jako je DNS, by neměly probíhat kvůli zájmům malé skupiny uživatelů tohoto protokolu. Celý návrh je šitý na míru několika málo poskytovatelům veřejných DNS resolverů, které se ptají autoritativních DNS serverů, které používají (dle některých špinavé) triky pro distribuci různého obsahu. Vnímám tento návrh jako nekoncepční, protože se snaží dolepit do DNS protokolu funkci, na kterou nebyl tento protokol postaven.

Důvod druhý: Lokalizace obsahu dle IP adresy není příliš spolehlivá. Pravděpodobně funguje ve většině případů, ale například nerozumím tomu, proč mě stránka google.com tvrdošíjně přesměrovává na www.google.cz a mluví na mne česky i přesto, že mám v nastavení prohlížeče nastaveno, že chci zobrazovat stránky v jazyce anglickém. Při cestě do zahraničí mají některé stránky (nejen google.com) tendenci na mne mluvit jazykem země, ve které se aktuálně nacházím. A mnohdy bývá problematické z této lokalizační pasti uniknout a dostat se alespoň na anglickou verzi stránek.

Důvod třetí: Celý návrh je postavený jako opt-out. Pokud si klient nepřeje, aby resolver předával informaci o jeho IP adrese, může stejnou cestou předat speciální IP adresu 0.0.0.0/0, kterou by měl resolver ctít a předat ji v této formě dále. Bohužel to ovšem znamená, že pokud nechcete, aby se autoritativní server dozvěděl vaši IP adresu, musíte mít podporu pro tuto volbu implementovanou ve vašem operačním systému. Osobně tento důvod vnímám jako nejzávažnější, protože mění stávající stav a nutí všechny uživatele k aktualizaci, která ani nemusí být dostupná.

Důvod čtvrtý: Tento návrh ubírá další kousíček soukromí, tedy předává informaci, kterou v tuto chvíli měl pouze resolver dalším třetím stranám (provozovatelům autoritativních DNS). Navíc o tom, zda-li dochází k tomuto předávání vaší IP adresy, se nemáte nikterak šanci dozvědět, alespoň současná verze návrhu žádné takové rozšíření neobsahuje.

Jak to bude vypadat dále? Pracovní skupiny v IETF pracují na principu konsenzu. Pokud už se musí hlasovat, tak se hlasuje hučením. Google je sice silný hráč, ale do pracovní skupiny IETF se může zapojit kdokoli a každý hlas má stejnou váhu. Ze stávající diskuze vyplývá, že návrh má více odpůrců než zastánců, a domnívám se tedy, že minimálně v této podobě schválen nebude.

Foo Bar

Foo Bar

Autor pracuje jako vedoucí Laboratoří CZ.NIC odpovědný za tým hledající problémy spojené s bezpečností Internetu a navrhující jejich řešení. Pro sdružení pracuje od roku 2005.

Teoretické znalosti získal studiem informatiky na MFF UK v Praze, praktické pak ve společnosti ACTIVE 24. Je rovněž zakladatelem českého lokálního týmu Ubuntu Linux.


Komentáře

Tecik #1
Tecik 09. únor 2010 10:38

Dobry den,

v tomto smeru s Vami souhlasim - uprava stavajiciho, a korektne fungujiciho protokolu mi prijde ne jako vyvoj, ale jako cesta do pekel (nema-li to skutecne dobre opodstatneni). A k systemech ala geo-ip-dns-resolver - nejedna se o znasilnovani protokolu, avsak o jeho ohybani.. proti tomuto nemam nic zavazneho (ikdyz vracene odpovedi dokazi nekdy "zatopit a nastvat") :-)

Náhodný kolemjdoucí #2
Náhodný kolemjdoucí 09. únor 2010 14:43

Nakonec stejne zalezi co na to Microsoft. Kdyz to neimplementuje microsoft do widli, tak je google v haji, protoze do bindu to asi tezko protlaci jako defaultne zaple.

PB #3
PB 10. únor 2010 08:36

S tou lokalizací google musim souhlasit, to mě také vytáčí.

Jinak porovnání kalifornské odpovědi a pracovního PC vidím jako úplně stejnou, pouze se vrací jiné pořadí IP adres což je v pořádku, předpokládám, že na opětovný dotaz by to zas vrátilo jiné pořadí atd.

PB

lzap #4
lzap 11. únor 2010 08:28

Momentálně jsem v Holandsku, a mám dost problémy. Některé mnou známé servery se "rozhodly" mluvit tímto jazykem. Holandsky neumím ani slovo ;-)

Náhodný kolemjdoucí #5
Náhodný kolemjdoucí 13. únor 2010 16:22

+1 k clanku.


RSS 

Komentujeme

Chatbot mluví za mrtvého – od nápadu k realizaci

Pavel Houser , 30. listopad 2016 13:00
Pavel Houser

Na webu The Verge popsala Casey Newton příběh dvou přátel (Eugenia Kuyda a Roman Mazurenko). Peripet...

Více





Kalendář


RSS 

Zprávičky

CETIN vydal dluhopisy za 25 miliard Kč

ČTK , 05. prosinec 2016 18:00

Česká telekomunikační infrastruktura (CETIN) upsala dluhopisy v eurech a korunách v celkovém objemu ...

Více 0 komentářů

Nahradí otisky prstů přístupová hesla?

ČTK , 05. prosinec 2016 14:30

Zní to jako skvělý nápad: zapomeňte na hesla a zamykejte telefon místo nich otiskem svého prstu. Je ...

Více 1 komentářů

Počítač a internet má na jižní Moravě více než 75 pct domácností

ČTK , 05. prosinec 2016 10:30

Počet jihomoravských domácností, které mají počítač a přístup k internetu, se loni přehoupl na jižní...

Více 0 komentářů

Starší zprávičky

Vodafone zvýšil do září počet zákazníků na 3,54 milionu

ČTK , 04. prosinec 2016 18:00

Mobilní operátor Vodafone zvýšil do konce září počet zákazníků na českém trhu meziročně o 146.000 na...

Více 0 komentářů

Nový škodlivý program ukradl údaje k milionu účtů Google

ČTK , 02. prosinec 2016 14:00

Nový škodlivý program Goolian narušil bezpečnost více než jednoho milionu účtů Google. Šíří se na za...

Více 1 komentářů

Telefony Nokia se příští rok vrátí na trh

ČTK , 02. prosinec 2016 10:30

Chytré telefony se značkou Nokia se objeví zpátky na trhu v příštím roce. Finská společnost Nokia dn...

Více 2 komentářů

CETIN nabídne příští rok operátorům připojení až 250 Mbit/s

ČTK , 01. prosinec 2016 17:00

Společnost Česká telekomunikační infrastruktura (CETIN) zvýší od května příštího roku rychlost inter...

Více 0 komentářů