Lokální DNS cache pro rychlejší prohlížení – Ubuntu

Ubuntu DNS server resolvuje doménové jména na Ip adresy. Když vyšlete požadavek na google.com, DNS server najde adresu domény a pošle váš dotaz správnym směrem. DNS cache lze ale provozovat i okálně, na vašem počítači. To citelně zrychlý proces kdy je u každého dotazu kontrolováno doménové jméno. Rozdíl činí až 60 ms. Následujíci instrukce jsou pro každého uživatele internetu který používa broaband připojení k internetu s přidělováním IP adresy z DHCP serveru, třba z routeru doma nebo v kanceláři.

Instalace dnsmasq v Ubuntu

Dnsmasq je jednoduchá a lehce konfigurovatelná aplikace, DNS forwarder a DHCP server. Je navržena tak aby poskytovala DNS a případně DHCP pr malé sítě. Umí obsluhovat jména lokálních počítačů které nejsou na žádnem globálním DNS. DHCP server je integrovaný s DNS serverem a počítačům s DHCP IP adresamy umožňuje získat DNS pomocí jmen nakonfigurovaných pro každý host PC nebo z jediného konfiguračního souboru.

Dnsmasq podporuje statické a dynamické DHCP dotazy a BOOTP pro start ze sítě pro počítač bez pevného disku (tenký klient). Ujistěte se, že váše konfigurace Universe repository je ve vašem sources.list souboru povolena

dnsmasq nainstalujete pomocí příkazu

sudo apt-get install dnsmasq

Dále v souboru /etc/dnsmasq.conf odkomentujte následujíci řádek

listen-address=127.0.0.1

Teď editujete

/etc/dhcp3/dhclient.conf

a ujistěte se, že část pod tímto textem, speciálně řádek prepend domain-name-servers 127.0.0.1; vypadá takhle

#supersede domain-name “fugue.com home.vix.com”;
prepend domain-name-servers 127.0.0.1;
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, host-name,
netbios-name-servers, netbios-scope;

Za normálních okoloností, po přijetí nového dhcp dotazu dhcp3 klient na vašem počítači aktualizuje

/etc/resolv.conf

soubor v počítači správnou hodnotou pro použití DNS serverů. Vložením volby prepend jak bylo popsáno nahoře zajistí to, že 127.0.0.1 bude na začátku seznamu DNS serverů. Takže v libovolnou chíly když váš počítač bude potřebovat překlad jména, dotaz bude forwardován na dnsmasq (který běží na 127.0.0.1 – váš počítač). Pokud dnsmasq nebude fungovat bude použita další (původní) IP adresa v seznamu, t.z poruchu nepoznáte, proces se pouze prodlouží na původní mezné hodnoty.

Teď otevřete soubor

/etc/resolv.conf

vtextovém editoru.. vypadá nějak takhle:

search vasisp.cz
nameserver 123.45.67.80
nameserver 123.45.67.81
nameserver 123.45.67.82

IP adresa localhostu 127.0.0.1 tam jak vidíte není. Objeví se tam až po obnovení dotazu po editaci /etc/dhcp3/dhclient.conf soboru. Klidně to pro tentokrát do souboru napište rúčo. Po editaci má soubor /etc/resolv.conf vypadat nějak takhle:

search vasisp.cz
nameserver 127.0.0.1
nameserver 123.45.67.83
nameserver 123.45.67.84
nameserver 123.45.67.85

Teď je potřeba restartovat dnsmasq pomocí příkazu

sudo /etc/init.d/dnsmasq restart

Teď již vaše lokální DNS cache (keš) běží. Pokud chcete vidět rozdíl otestujte vaši lokální DNS cache ještě před tuningem. Zrychleni připojení k internetu a odzevu změříte příkazem dig ..třeba:

dig google.com

Uvidíte něco jako Query time: 38 msec

Po úpravě příkaz dig google.cz ukáže logicky nižší hodnotu Query time: 2 msec

One thought on “Lokální DNS cache pro rychlejší prohlížení – Ubuntu

  1. Pekny, kdyby nekoho zajimal jeden neobjektivni test..

    starenka@kosmik1:/www/$ dig slashdot.org | grep -i ‚query time‘
    ;; Query time: 7 msec
    starenka@kosmik1:/www/$ sudo /etc/init.d/dnsmasq start
    * Starting DNS forwarder and DHCP server dnsmasq [ OK ]
    starenka@kosmik1:/www/$ dig slashdot.org | grep -i ‚query time‘
    ;; Query time: 0 msec

    Konqueror 3.5 Kubuntu
    Odpovědět

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

*