Zrychlete si svůj Netscape pomocí name cache

19. 5. 2000
Doba čtení: 3 minuty

Sdílet

Ne každý má to štěstí, že je k Internetu připojen dostatečně pevnou a rychlou linkou. Naopak řada uživatelů Linuxu je odkázána na relativně pomalé a nestabilní modemové připojení. Pokud patříte mezi ně a chcete svůj úděl alespoň trochu vylepšit, pak by vám neměl uniknout následující článek.

Nepěknou vlastností Netscapu a několika dalších programů je, že předpokládají trvalou přítomnost připojení k internetu. Když se připojujete přes modem a nejste zrovna on-line, snaží se tyto programy „cvičně“ resolvovat některá doménová jména a odpověď ne a ne přijít. Často pak nezbývá, než počkat, až vyprší timeout žádosti a vyslechnout přehršle chybových hlášení. Někdy se dokonce program nevzpamatuje vůbec a je nutné ho „odstřelit“. Uvedenému chování, lze předejít například tím, že po odpojení připojení k Internetu okomentujete deklaraci nameserverů v souboru /etc/resov.conf. Při příštím připojení však musíte pamatovat vrátit soubor do původního stavu, jinak by vám nefungovaly DNS dotazy. Toto řešení je poněkud těžkopádné a to i přes to, že je můžete zautomatizovat modifikací připojovacích skriptů nebo použít programy, které uvedené kroky udělají za vás (kppp).

Mnohem efektivnější řešení je použití programu pdnsd. Tento program je tzv. cachovací nameserver, tedy program, který běží jako služba na vašem počítači a zpracovává DNS dotazy například od WWW prohlížeče. Požadavky předává nadřízenému nameserveru, tedy nameserveru vašeho ISP. Pokud nadřízený server není aktivní, třeba proto, že nejste právě připojen k Internetu, tak okamžitě vrátí neplatný výsledek a nesnaží se jej tedy stále dokola opakovat, což by vedlo ke zmíněným problémům. Další příjemnou vlastností cachovacího nameserveru, je skutečnost, že si pamatuje již vyřízené DNS požadavky a pokud se na nějakou doménu tážete opakovaně, pošle tzv. neautoritativní odpověď ze své cache. Tím se šetří přenosová kapacita připojení a proces zjišťovaní IP adresy pak je dokončen mnohem dříve, než v případě dotazování vnějšího serveru. Můžu potvrdit, že po instalovaní programu pdnsd jsem u svého modemového připojení zaznamenal viditelné zrychlení práce prohlížeče.

Instalace programu je jednoduchá. Stáhnete si zdrojové soubory – třeba odtud. Soubor rozbalíte, například do adresáře /usr/src a zkompilujete příkazem make a make install. (druhý příkaz musíte provést jako root). Potom musíte přizpůsobit startovací skripty Linuxu, aby se program spouštěl automaticky při startu počítače. Pokud máte distribuce SuSE, nebo RedHat, tak můžete použít dodávané skripty a to tak, že spustíte make v příslušném podadresáři rc/Redhat nebo rc/SuSE. Na uvedené adrese jsou k dispozici i binární balíčky ve formátu .rpm, takže jestliže vaše distribuce používá rpm, můžete si úplně ušetřit tuto fázi instalace.

Potom doplníte do souboru /etc/resolv.conf řádku nameserver 127.0.0.1. Což je adresa zpětnovazebního rozhraní vašeho počítače. Všechny ostatní adresy z tohoto souboru raději odstraňte.

Dále je třeba doplnit alespoň jeden nameserver vašeho ISP do souboru /etc/pdnsd.conf. Například já jsem pro svého ISP – VOL – doplnil sekci

server {
  ip=„212.20.96.34“;
  timeout=30;
  interval=30;
  uptest=ping;
  ping_timeout=30;
  purge_cache=off;
  port=53;
 }

Uvedené konfigurační příkazy fungují, nicméně pro zájemce jsou dobře popsány v přiložené dokumentaci. Zejména je dobré si povšimnout, že dnsd nabízí hned tři možnosti zjišťování aktivity nadřízeného nameserveru. Jednak může zjistit, jestli je příslušné rozhraní (eth0, ppp0, …) nahozeno, dále se může pokusit pingnout daný server a konečně může jen předpokládat jeho implicitní funkčnost.

Potom už stačí jen nastartovat službu, např. v Redhatu příkazem
/etc/rc.d/init­.d/pdnsd start

bitcoin_skoleni

Ačkoliv DNS caching provádějí i jiné programy, například bind, přesto má pdnsd určité výhody. Především je to jeho velikost. Rezidentní část programu má poloviční velikost (720k) oproti bindu. Pak je to výrazně snazší konfigurace. Bind je program, který je primárně určen k jiným účelům, než k DNS cachingu a proto jednoúčelový program jako pdnsd, splní u běžného dial-up uživatele svoji funkci lépe. A konečně pdnsd nabízí permanentní diskovou DNS cache, která „přežije“ restart počítače.

Program je šířen pod GPL a můžete jej získat na http://home.t-online.de/home/Mo­estl/index.html

Autor článku