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

Intel Inside aneb všichni jsme načipováni

Petr Zavoral , 10. prosinec 2017 18:20
Petr Zavoral

V Havlově hře Audience přesvědčuje Sládek Ferdinanda Vaňka, aby donášel sám na sebe. Z pohledu letoš...

Více







Kalendář

09. 01.

13. 01.
CES 2018
18. 01.

19. 01.
itSMF 2018
29. 01.

30. 01.
G2BTechEd

RSS 

Zprávičky

Rozhodnutí ÚS o odložení EET může vést k žalobám na stát

ČTK , 16. prosinec 2017 09:00

Tisíce a možná desítky tisíc podnikatelů a zástupců různých profesí se na třetí a čtvrtou vlnu EET u...

Více 0 komentářů

E-shopy vyjmutí plateb kartou z EET vítají, přišlo prý ale pozdě

ČTK , 16. prosinec 2017 08:00

Podle ministerstva financí ze zrušení povinnosti evidovat platby kartou pro poplatníky nevyplývá nut...

Více 0 komentářů

Nové Embarcadero RAD Studio obsahuje i licenci pro aplikační server

Pavel Houser , 15. prosinec 2017 10:00

Vývojové prostředí nabízí i nové prvky knihovny vizuálních komponent a nové možnosti grafického uživ...

Více 0 komentářů

Starší zprávičky

Botnet Necurs se vrátil a šíří nový ransomware

Pavel Houser , 15. prosinec 2017 09:00

V listopadu došlo k oživení botnetu Necurs v souvislosti s distribucí nového ransomwaru Scarab. ...

Více 0 komentářů

Jižní Korea zvažuje, že zdaní obchody s bitcoinem

ČTK , 15. prosinec 2017 08:00

Vláda se obává dopadů, které s sebou může přinést náhlý cenový propad kryptoměn....

Více 0 komentářů

O2 v dalších dvou letech vykoupí až 1,25 % vlastních akcií

ČTK , 14. prosinec 2017 10:00

Cílem nového programu je optimalizace kapitálové struktury, uvedla firma....

Více 0 komentářů

10 spotřebitelských trendů pro rok 2018

Pavel Houser , 14. prosinec 2017 09:00

Sluchátka budeme nosit 24 hodin denně, i během spánku. Umělá inteligence bude vytvářet reklamy. Koli...

Více 0 komentářů