Modul DNS forwarder slouží ve WinRoute ke zjednodušení konfigurace DNS na počítačích v lokální síti a pro zrychlení odpovědí na opakované DNS dotazy. DNS na lokálních počítačích lze obecně nastavit jedním z následujících způsobů:
použít IP adresu primárního, příp. i záložního DNS serveru vašeho poskytovatele Internetu. Toto řešení je regulérní, avšak odezvy na DNS dotazy budou značně pomalé. Všechny dotazy z každého počítače v lokální síti budou posílány do Internetu.
použít DNS server v lokální síti (je-li k dispozici). Tento DNS server musí mít přístup do Internetu, aby dokázal odpovídat i na dotazy mimo lokální doménu.
použít DNS forwarder ve WinRoute. Ten může rovněž sloužit jako jednoduchý DNS server pro lokální doménu (viz dále) či jako forwarder pro stávající DNS server.
Je-li to možné, doporučujeme použít DNS forwarder jako primární DNS server pro počítače v lokální síti (poslední z uvedených možností). DNS forwarder zajistí rychlé zpracování DNS dotazů a jejich správné směrování ve složitějších síťových konfiguracích. Na opakované dotazy a dotazy na lokální DNS jména dokáže DNS forwarder odpovědět přímo, aniž by musel komunikovat s DNS servery v Internetu.
Pokud nedokáže DNS forwarder zodpovědět DNS dotaz sám, předá jej na některý z DNS serverů nastavených na internetové lince, přes kterou je dotaz odesílán. Podrobnosti o konfiguraci síťových rozhraní firewallu naleznete v kapitole 5 Síťová rozhraní, bližší informace o možnostech internetového připojení v kapitole 6 Internetové připojení.
Ve výchozím nastavení WinRoute je DNS forwarder zapnut a DNS dotazy automaticky předávány některému z DNS serverů nastavených na příslušné internetové lince (typicky DNS servery přidělené poskytovatelem internetového připojení). Podrobnou konfiguraci lze provést v sekci Konfigurace → DNS forwarder.
Tato volba zapíná / vypíná modul DNS
forwarder (služba používá protokol UDP a port
53
). Pokud ve vaší síťové konfiguraci DNS
forwarder nepoužijete, můžete jej vypnout. Chcete-li na tomtéž
počítači provozovat jiný DNS server, pak jej musíte
vypnout — jinak by nastala kolize na uvedeném portu.
Zapnutím této volby budou odpovědi na všechny dotazy ukládány do lokální vyrovnávací paměti (cache) DNS forwarderu. Odpovědi na opakované dotazy tak budou mnohonásobně rychlejší (opakovaným dotazem je i stejný dotaz vyslaný různými klienty).
Fyzicky je DNS cache udržována v operační paměti, zároveň
jsou však všechny DNS záznamy ukládány také do souboru
DnsCache.cfg
(viz kapitola 25.1 Zálohování a přenos konfigurace). Díky tomu zůstávají záznamy v DNS cache
uchovány i při zastavení WinRoute Firewall Engine, resp.
vypnutí počítače s WinRoute.
Poznámka:
Doba uchování DNS záznamů v cache je specifikována přímo v každém záznamu (zpravidla 1 den).
Použití DNS cache zrychlí také činnost vestavěného proxy serveru (viz kapitola 8.4 Proxy server).
Stisknutím tohoto tlačítka dojde ke smazání všech záznamů ve vyrovnávací paměti DNS forwarderu (bez ohledu na jejich dobu životnosti). Tuto funkci lze využít např. při změně konfigurace, při testování vytáčení na žádost, odhalování chyb apod.
Tato volba aktivuje pravidla pro předávání DNS dotazů na jiné DNS servery.
DNS forwarder umožňuje předávat určité DNS dotazy na specifické DNS servery. Tuto funkci lze využít např. v případě, chceme-li pro lokální doménu používat DNS server v lokální síti (ostatní DNS dotazy budou předávány přímo do Internetu, čímž se zrychlí odezva). Nastavení předávání DNS dotazů je rovněž důležité při konfiguraci virtuálních privátních sítí, kdy je potřeba zajistit správné předání dotazů na jména v doménách vzdálených subsítí (podrobnosti viz kapitola 23 Kerio VPN).
Předávání dotazů se definuje pravidly pro DNS jména nebo subsítě. Pravidla tvoří uspořádaný seznam, který je vždy procházen shora dolů. Pokud DNS jméno nebo subsíť v dotazu vyhovuje některému pravidlu, pak bude tento dotaz předán na specifický DNS server a vyhodnocování pravidel se ukončí. Dotazy, které nevyhovují žádnému pravidlu, jsou předávány na „výchozí“ DNS servery (viz výše).
Poznámka: Je-li aktivní Jednoduchý převod DNS jmen (viz dále), pak se pravidla pro předávání dotazů uplatní pouze v případě, že DNS forwarder nedokáže dotaz zodpovědět na základě informací ze systémového souboru hosts a/nebo tabulky přidělených adres DHCP serveru.
Tlačítko DNS forwarderu (viz obrázek 8.1 Nastavení parametrů modulu DNS forwarder) otevírá dialog pro nastavení pravidel pro předávání DNS dotazů.
v konfiguraciPravidlo lze definovat pro:
DNS jméno — pak budou na tento DNS server předávány dotazy
na odpovídající jména počítačů (dotazy typu A
)
subsíť — pak budou na tento DNS server předávány dotazy na
IP adresy v příslušné subsíti (reverzní doména — dotazy typu
PTR
)
Pořadí pravidel v seznamu je možné upravit tlačítky se šipkami
v pravé části dialogu. Takto je možné vytvářet složitější kombinace
pravidel — např. výjimky pro konkrétní počítače nebo subdomény. Protože
je seznam pravidel procházen shora dolů, měla by být pravidla seřazena od
nejspecifičtějšího (např. jméno konkrétního počítače) k nejobecnějšímu
(např. hlavní doména firmy). Podobně pravidla pro reverzní DNS dotazy by měla
být seřazena podle délky masky subsítě (např. od
255.255.255.0
k 255.0.0.0
). Pravidla
pro dotazy na jména a pro reverzní dotazy jsou vzájemně nezávislá. Pro
přehlednost doporučujeme nejprve uvést všechna pravidla pro dotazy na jména a
pak všechna pravidla pro reverzní dotazy, případně naopak.
Tlačítko
, resp. otevírá dialog pro definici pravidla pro předávání DNS dotazů.Volba DNS dotaz na jméno slouží ke specifikaci pravidla pro dotazy na jména. Do pole Jestliže dotazované jméno odpovídá výrazu je třeba zadat příslušné DNS jméno (počítač v dané doméně).
Ve většině případů nechceme předávat dotazy na konkrétní jména,
ale pro celé domény. Proto může zadané jméno obsahovat zástupné znaky
*
(hvězdička — nahrazení libovolného počtu znaků) a
?
(otazník — nahrazení právě jednoho znaku). Pravidlo
pak bude platit pro všechna jména vyhovující zadanému řetězci (počítače, domény
atd.).
DNS jméno zadáme ve tvaru:
*.?erio.c*
. Pravidlo bude platit pro všechna jména
v doménách kerio.cz
, cerio.com
,
aerio.c
apod., tedy např. www.kerio.cz
,
secure.kerio.com
, www.aerio.c
atd.
V pravidlech pro DNS dotazy na jména je nutné vždy uvést výraz, kterému bude odpovídat celé DNS
jméno! Pokud bychom zadali např. kerio.c*
, pak by tomuto
pravidlu vyhověla pouze jména kerio.cz
,
kerio.com
apod., nikoliv však jména počítačů v těchto
doménách (např. www.kerio.cz
nebo
secure.kerio.com
)!
Volba Reverzní DNS dotaz slouží ke
specifikaci pravidla pro DNS dotazy na IP adresy v dané subsíti. Subsíť se
zadává adresou sítě s příslušnou maskou (např. 192.168.1.0 /
255.255.255.0
).
Do pole Pak předat dotaz těmto DNS serverům lze zadat IP adresu jednoho nebo více DNS serverů, na který mají být dotazy předávány.
Je-li zadáno více DNS serverů, považují se za primární, sekundární atd.
Volba Nepředávat znamená, že dotaz
nebude předáván žádnému dalšímu DNS serveru — WinRoute bude
pouze prohledávat lokální soubor hosts
, příp. tabulky DHCP
serveru (viz dále).
Pokud zde dotazované jméno, resp. IP adresu nenalezne, odpoví klientovi, že toto jméno/adresa neexistuje.
DNS forwarder může zároveň fungovat jako jednoduchý DNS server, typicky pro lokální doménu. Je-li nastaven jednoduchý převod jmen, pak se DNS forwarder vždy nejprve pokusí zodpovědět přijatý DNS dotaz, a pouze v případě neúspěchu jej předá jinému DNS serveru.
Tyto volby umožňují nastavit, kde má DNS forwarder vyhledávat dotazované jméno (resp. IP adresu) předtím, než dotaz předá jinému DNS serveru.
Systémový soubor 'hosts' — tento soubor se nalézá v každém operačním systému, který podporuje TCP/IP. Každý řádek tohoto souboru obsahuje IP adresu počítače a seznam odpovídajících DNS jmen. Při každém DNS dotazu je nejprve prohledáván tento soubor, zda se v něm nachází požadované jméno (případně IP adresa), a teprve pak (není-li nalezeno) se dotaz předává DNS serveru.
Stejným způsobem se chová DNS
forwarder, je-li tato volba zapnuta. Tlačítko
otevírá speciální editor, kterým lze soubor
hosts
upravovat přímo v Administration
Console, a to i v případě, kdy je
k WinRoute připojena vzdáleně (tj. z jiného
počítače).
Tabulka adres přidělených DHCP serverem — jsou-li počítače v lokální síti konfigurovány pomocí DHCP serveru ve WinRoute (viz kapitola 8.2 DHCP server), pak má DHCP server informace o tom, jaká IP adresa byla přiřazena kterému počítači. Počítač při startu systému vysílá požadavek na přidělení IP adresy, který obsahuje i jméno počítače.
DNS forwarder má přístup do tabulek DHCP serveru a může tedy zjistit, jaká IP adresa je v tomto okamžiku přidělena danému jménu počítače. Na dotaz na jméno počítače v lokální síti tedy vždy odpoví správnou (aktuální) IP adresou.
Poznámka: Pokud jsou obě uvedené volby vypnuty, pak DNS forwarder předává všechny dotazy jiným DNS serverům.
Do pole Při prohledávání souboru 'hosts' nebo tabulky přidělených adres kombinovat jméno s touto doménou je třeba zadat jméno lokální DNS domény.
Jestliže počítač nebo síťové zařízení vysílá požadavek na přidělení IP adresy, vkládá do něj pouze své jméno (doménu v tomto okamžiku ještě nezná). V tabulce adres přidělených DHCP serverem jsou proto uložena pouze jména počítačů bez domény. Aby DNS forwarder dokázal správně zodpovídat dotazy na plně kvalifikovaná lokální DNS jména (tj. jména včetně domény), musí znát jméno lokální domény.
Poznámka: Je-li v DNS
forwarderu zadána lokální doména, pak mohou být v systémovém
souboru hosts
uvedena lokální jména včetně domény nebo bez
ní — v obou případech budou dotazy zodpovídány správně.
Pro snazší pochopení uveďme jednoduchý příklad.
Lokální doména má jméno firma.cz
.
V lokální síti je počítač se jménem honza
nastavený pro
automatickou konfiguraci IP adresy z DHCP serveru. Po startu operačního
systému vyšle tento počítač DHCP požadavek obsahující jméno stanice
honza
. DHCP server mu přidělí IP adresu
192.168.1.56
. Ve své tabulce uchová informaci o tom, že tato
IP adresa byla přidělena stanici se jménem honza
.
Jiný počítač, který bude chtít s tímto počítačem
komunikovat, vyšle dotaz na jméno honza.firma.cz
(jedná se o
počítač honza
v doméně firma.cz
).
Kdyby DNS forwarder neznal jméno lokální domény, předal by
tento dotaz na jiný DNS server (dle nastavení — viz výše), protože by
nerozpoznal, že se jedná o lokální počítač. Takto však může lokální
doménu firma.cz
oddělit a jméno honza
s příslušnou IP adresou nalezne v tabulce DHCP serveru.