Výsledky výzkumu a další informace nejen
z oblasti přístupových telekomunikačních sítí.
Access server ISSN 1214-9675
Server vznikl za podpory Grantové agentury ČR.
21. ročník
Hlavní stránka | Seznam rubrik | Ke stažení | Odkazy  

Doporučujeme
Knihu o FTTx

Matlab server - on-line výpočty a simulace

E-learning - on-line kurzy

Kontakt
KTT FEL ČVUT
Napište nám

Redakční rada - pokyny pro autory a recenzenty

Copyright

Aplikace, sítě a služby

* Praktické provedení konfigurace DNS serveru a koncových stanic v síti IP verze 6

Vydáno dne 19. 09. 2012 (16014 přečtení)

Předchozí článek poskytl praktickou ukázku adresace koncové sítě IPv6 a nastavení automatické konfigurace. Tento článek se zabývá praktickým postupem konfigurace DNS serveru a koncových stanic s operačními systémy Microsoft Windows XP, Microsoft Windows 7 a Ubuntu v experimentální síti IPv6 se směrovačem Mikrotik a servery založenými na Scientific Linux.


Example of DNS Server and Hosts Configuration in IPv6 LAN Network - Abstract

This is the fourth article of a series of articles dealing with the IPv6 implementation on the LAN networks. There was described the recommendations for assigned of IPv6 address space, individual types of auto-configuration of computers, possibility of implementing the DNS and monitoring of network nodes and traffic in IPv6 LAN network in the first two articles. Finally, there was provided an example of IPv6 site addressing and auto configuration settings in IPv6 LAN network in the third article. This article provides an example of DNS server and hosts configuration in an experimental IPv6 LAN network with MikroTik RB1200 as default router and servers based on Scientific Linux distribution.

Keywords: IPv6, DNS, BIND9


Konfigurace DNS serveru

Služba DNS (Domain Name System), pomocí které lze překládat doménová jména na adresy IPv6, je v dnešních sítích nepostradatelná. Problematika implementace DNS v prostředí IPv6 je popsána v [2].

Aktuálně se nabízí výběr z celé řady programů, ze kterých lze pro DNS server volit. V současné době je nejrozšířenější program BIND (Berkler Internet Name Domain) verze 9 [4], který je šířen pod licencí GNU GPL a kompletně podporuje IPv6. Je určen jak pro linuxové distribuce, tak i pro systémy Microsoft Windows. BIND9 plně pokryje nároky většiny správců sítě.

Experimentální síť IPv6 se byla vytvořena na katedře Telekomunikační techniky, Fakulty elektrotechnické, Českého vysokého učení technického v Praze. Její zjednodušená topologie je zobrazena na obr. 1, kde jsou zobrazeny pouze síťové prvky, kterých se implementace protokolu IPv6 bezprostředně týká.

IPv6_part4_01

Obr. 1 Topologie experimentální sítě IPv6 (všechny uvedené IP adresy jsou smyšlené z důvodu bezpečnosti sítě)

V našem případě byla zvolena linuxová verze, která běží na fyzickém serveru s linuxovou distribucí Scientific Linux s adresou 2001:718:4000:132::50, viz obr. 1. Základní konfigurace není obtížná a provádí se editací konfiguračního souboru named.conf, který se po instalaci nachází v adresáři /etc. Konfigurace DNS serveru spočívá v definování zón, jejichž tvar zápisu je uveden na obr. 2, a nastavením voleb [4], které specifikují chování DNS serveru.

IPv6_part4_02

Obr. 2 Tvar zápisu zón v konfiguračním souboru named.conf

Volba type master, viz obr. 2, značí, že DNS server je primární. V zásadě existují dva typy serverů: Primární a sekundární, k jejichž rozlišení slouží volby master a slave. Primární DNS server (master) obsahuje všechny informace o příslušných zónách a sekundární (slave) si podle primárního tyto informace synchronizuje. Dále lze DNS servery rozdělit na autoritativní a neautoritativní podle toho, zda na příslušný dotaz poskytují tazateli autoritativní či neautoritativní odpověď [3]. Autoritativní odpověď je poskytována přímo z autoritativního zdroje, kdežto neautoritativní odpověď je poskytována z vyrovnávací paměti (cache paměti) DNS serveru. Každý DNS server je vždy autoritativní pro vlastní doménu, pokud nějakou má.

V našem případě je DNS server instalován i jako tzv. cache server (server, který ukládá často požadované záznamy do paměti a při opakovaných požadavcích na stejné záznamy je poskytuje přímo z paměti). To znamená, že se pokusí požadavek zodpovědět vlastními silami, například vlastními zónami, a pokud se mu to nepodaří, bude se dotazovat nadřazeného DNS serveru [3]. Tuto funkci umožňuje volba forward first, viz obr. 3. Druhou možností je volba forward only, při jejímž nastavení se server nebude pokoušet přeložit doménové jméno vlastními silami a bude se přímo dotazovat nadřazeného serveru.

IPv6_part4_03

Obr. 3 Volba forward first

Aby DNS server podporoval IPv6 musí konfigurační soubor named.conf obsahovat volbu listen-on-v6, viz obr. 4. Díky této volbě začne server naslouchat na IPv6 adresách na portu 53. Klíčové slovo „any“ lze zaměnit za jakékoliv IPv6 adresy, které jsou přiřazeny na rozhraní serveru.

IPv6_part4_04

Obr. 4 Volba listen-on-v6

Výsledná konfigurace DNS serveru je zobrazena na obr. 5.

IPv6_part4_05

Obr. 5 Základní konfigurace DNS serveru

Z konfigurace je patrné, že DNS server je nakonfigurován jako cache server s adresami nadřazených DNS serverů 2001:718:4000:100::100 a 2001:718:4000:100::101, a že bude DNS server naslouchat na portu 53 a IPv6 adresách ::1 a 2001:718:4000:132::50. Dále z konfigurace vyplývá, že soubory s jednotlivými zónami jsou uloženy v adresáři /var/named, kde kromě jiných zón je definována i zóna ipv6.com, což je testovací zóna v experimentální síti.

Konfigurace zón

Definice zón se provádí editováním souborů, které jsou uloženy v adresáři /var/named, viz obr. 5. Tyto soubory mohou mít libovolný název, ale obvykle se nazývají stejně jako zóny samotné.

V testovací síti byla vytvořena zóna ipv6.com, která obsahuje jeden testovací záznam pro IPv6 (test6), viz obr. 6. Jméno souboru, ve kterém se odehrává konfigurace je named.ipv6.com.

IPv6_part4_06

Obr. 6 Konfigurace zóny ipv6.com

Parametr TTL na počátku konfiguračního souboru named.ipv6.com definuje dobu platnosti záznamu a zároveň zajišťuje, že po vypršení jeho platnosti se musí neautoritativní servery na něj znovu dotázat autoritativního serveru. Doba platnosti je nastavena na 24 hodin. Parametr IN znamená typ adresy (internet). Další parametr SOA určuje začátek autority ipv6.com. Dále následuje sériové číslo, které funguje zároveň i jako číslo revizní. Hodnotou může být jakékoliv číslo, které je ale nutné při každé změně konfiguračního souboru zvýšit, jinak se změny neprojeví. Dobrým zvykem je zvolit formát data a nakonec zařadit libovolné číslo, např. RRRRMMDDXX.

Další čtyři údaje jsou časové intervaly, které zajišťují synchronizaci sekundárních DNS serverů s primárními DNS servery. První časový interval (refresh) udává dobu, po které dochází k pravidelné synchronizaci. Druhý (retry) udává dobu, po které dojde k synchronizaci v případě, že předchozí pokus byl neúspěšný. Třetí časový údaj (expire) udává dobu, po které sekundární DNS servery přestanou poskytovat informace, jestliže se jim nepodaří synchronizovat s primárním DNS serverem. A poslední časový údaj (default_ttl) udává výchozí hodnotu parametru TTL pro záznamy, které ji nemají danou explicitně.

Jako poslední je definován testovací záznam testv6.ipv6.com s adresou 2001:718:4000:132::50, jehož funkčnost překladu lze otestovat například pomocí programu ping6.

Konfigurace koncových stanic

Z topologie sítě, viz obr. 1, je patrné, že pro testování IPv6 byly k dispozici koncové stanice s operačními systémy Microsoft Windows XP, Microsoft Windows 7 a linuxovou distribucí Ubuntu 12.04 s verzí kernelu 3.2.0-24.

Konfigurace operačního systému Microsoft Windows XP

Operační systém Microsoft Windows XP má implementován protokol IPv6 od verze SP1, nicméně ve výchozím nastavení není na systému nainstalován na žádném rozhraní. To znamená, že konfigurace IPv6 na koncových stanicích s Windows XP vyžaduje asistenci administrátora sítě. Zda je protokol IPv6 na koncové stanici nainstalován lze zjistit pomocí následujícího příkazu, který se zadává v příkazovém řádku operačního systému:

sc query tcpip6

V případě, že je protokol IPv6 na koncové stanici nainstalován, zobrazí se výpis, který popisuje stav jeho služby. V opačném případě dojde k výpisu chybové hlášky, že služba není v systému nalezena. V okamžiku, kdy není protokol IPv6 na systému nainstalován, lze jej nainstalovat následujícím příkazem:

netsh interface ipv6 install

Po úspěšné instalaci se vypíše v příkazovém řádku hláška „OK“. V případě, že je protokol nainstalován, ale jeho služba je pozastavena, hodnota „STOP-PENDING“ u položky STATE při zadání příkazu sc query tcpip6, je nutné službu povolit následujícím příkazem:

net start tcpip6

Nyní je operační systém Microsoft Windows XP ve stavu, kdy protokol IPv6 je nainstalován a jeho služba povolena. Po úspěšném spuštění dojde k automatickému vygenerování identifikátoru rozhraní dle modifikovaného standardu EUI-64 [1] a lokální linkové adresy IPv6. Vygenerované adresy lze zobrazit zadáním příkazu:

ipconfig /all

Operační systém Microsoft Windows XP podporuje obě varianty automatické konfigurace [1], avšak v případě použití stavové konfigurace (DHCPv6) je nutno na systém nainstalovat klienta, který podporuje tuto službu. Windows XP ve výchozím stavu neobsahuje žádného DHCPv6 klienta. Rovněž lze použít bezestavovou konfiguraci pro automatickou konfiguraci koncové stanice, ale v tomto případě koncová stanice nedostane IPv6 adresu DNS serveru [5]. Z toho důvodu je nutné na koncové stanici zprovoznit službu DHCPv6 klient.

V našem případě jsme zvolili software DHCPv6 Dibbler verzi 0.8.2 [6], kdy jsme na koncovou stanici nainstalovali pouze podporu pro DHCPv6 klienta. Před jeho samotným spuštěním je nutno provést konfiguraci daného rozhraní v konfiguračním souboru client.conf, viz obr. 7. Tento konfigurační soubor lze najít v nabídce Start/Programy/Dibbler/Client Edit config file. DHCPv6 Dibbler Client lze spustit jako službu volbou Client Install as service, která se spouští vždy při spuštění operačního systému. Bezprostředně po instalaci klienta je nutné pro získání parametrů sítě IPv6 budˇ restartovat operační systém nebo spustit klienta v konzoly prostřednictvím volby Client Run in the console. DHCPv6 Dibbler Client generuje identifikátor rozhraní dle standardu RFC 4941, v jehož důsledku je identifikátor náhodný a v čase proměnný [1]. Náhodné a v čase proměnné určení identifikátoru rozhraní může způsobit problémy při zpětné identifikaci koncové stanice, což může vést k narušení bezpečnosti sítě. Tento problém lze řešit například pomocí mapování IPv6 a MAC adres.

IPv6_part4_07

Obr. 7 Konfigurační soubor client.conf

V případě potřeby lze operační systém Microsoft Windows XP nakonfigurovat manuálně. K nastavení nové IPv6 adresy na rozhraní slouží příkaz:

netsh interface ipv6 set address „jméno síťového rozhraní“ ipv6_adresa

Dále je nezbytné přiřadit IPv6 adrese prefix. Ten lze přiřadit následujícím příkazem:

netsh interface ipv6 set interface „jméno síťového rozhraní“ siteprefixlength=prefix

Jako poslední krok je nutné nastavit adresu výchozího směrovače:

netsh interface ipv6 add route ::/0 „jméno síťového rozhraní“ ipv6_adresa_default_router

Správnost zadání příkazu a úspěšného nastavení je vždy oznámena výpisem „OK“ v příkazovém řádku.

Konfigurace operačního systému Microsoft Windows 7

Operační systém Microsoft Windows 7 má velmi dobrou podporu protokolu IPv6, a tudíž s jeho konfigurací nebyl žádný problém. Koncová stanice byla nastavena tak, aby veškeré parametry sítě IPv6 byly získány pomocí stavové automatické konfigurace (DHCPv6), viz obr. 8.

IPv6_part4_08

Obr. 8 Konfigurace koncové stanice s operačním systémem Microsoft Windows 7

Jedinou nástrahou je fakt, že operační systém Microsoft Windows 7 používá pro generování identifikátoru rozhraní standard RFC 4941, místo modifikovaného standardu EUI-64, v jehož důsledku je identifikátor náhodný a v čase proměnný [1]. Toto chování lze explicitně vypnout následujícím příkazem v příkazovém řádku operačního systému:

netsh interface ipv6 set global randomize-identifiers=disabled

Po zadání výše uvedeného příkazu se identifikátor rozhraní začne generovat dle modifikovaného standardu EUI-64.

Konfigurace operačního systému Ubuntu

Posledním testovaným operačním systémem byla linuxová distribuce Ubuntu 12.04 s verzí kernelu 3.2.0-24. U systémů Linux byla podpora IPv6 vždy mezi nejlepšími a od verze kernelu 2.6.12 v roce 2005 přestala být implementace IPv6 označována jako experimentální. Stejně jako u operačního systému Microsoft Windows 7, byl linuxový host nakonfigurován tak, aby získal síťové parametry automaticky, respektive aby se řídil ohlášením směrovače a jeho příznaky, viz obr. 9. Koncová stanice po získání parametrů sítě IPv6 fungovala bez problémů.

IPv6_part4_09

Obr.9 Konfigurace koncové stanice s operačním systémem Ubuntu

Většina linuxových distribucí ve svém výchozím nastavení používá pro generování identifikátoru rozhraní modifikovaný standard EUI-64. Náhodná generace identifikátoru rozhraní dle RFC 4941 lze v případě potřeby zapnout přidáním následujícího řádku do souboru sysctl.conf v adresáři /etc. Pokud tento soubor neexistuje, je třeba ho vytvořit. Povolení generace náhodného identifikátoru rozhraní je naznačeno pouze pro rozhraní eth0.

net.ipv6.conf.eth0.use_tempaddr=2

Po přidání výše uvedeného řádku je nutné provést sérii následujících příkazů:

sudo sysctl net.ipv6.conf.eth0.use_tempaddr=2
sudo /etc/init.d/networking restart

Ubuntu od verze 12.04 generuje ve výchozím nastavení identifikátor rozhraní již podle RFC 4941. To lze v případě potřeby vypnout stejnou posloupností výše uvedených příkazů, ale s hodnotou 0.

Závěr

Tento článek poskytl čtenáři praktickou ukázku konfigurace DNS serveru, konkrétně programu BIND9, a koncových stanic s operačními systémy Microsoft Windows XP, Microsoft Windows 7 a Ubuntu v prostředí IPv6. Další článek se bude zabývat ukázkou konfigurace dohledového systému pro monitorování sítí IPv6. Dále poskytne návod pro vytvoření skriptu, který bude provádět mapování IPv6 a MAC adres, což umožní jednoznačnou identifikaci koncových stanic v dané síti IPv6. Mapování IPv6 a MAC adres je jeden z možných způsobů jak lze identifikovat koncové stanice, které používají pro generaci svého identifikátoru rozhraní standard RFC 4941.

Tento příspěvek vznikl v souvislosti s řešením projektu Fondu rozvoje sdružení CESNET „Implementace protokolu IPv6 do experimentální a výzkumné sítě katedry Telekomunikační techniky a její metodické zobecnění“ a projektu Studentské grantové soutěže ČVUT v Praze č. SGS11/124/OHK3/2T/13.

Seznam použitých zkratek

BIND9Berkeley Internet Name Domain
DHCPDynamic Host Configuration Protocol
DHCPv6Dynamic Host Configuration Protocol for Internet Protocol Version 6
DNSDomain Name System
EUI-64Extended Unique Identifier-64
GNU GPLGNU General Public License
IPv4Internet Protocol Version 4
IPv6Internet Protocol Version 6
LANLocal Area Network
MACMedia Access Control
RFCRequest for Comments
TTLTime To Live

Literatura

[1] ČEPA, L. – KAČER, J. Konfigurace adres při implementaci IP verze 6 v koncových sítích. Access server [online]. 2012, roč. 10, č. 2012060001, [cit. 2012-07-18]. Dostupné z: http://access.fel.cvut.cz/view.php?cisloclanku=2012060001
[2] ČEPA,L. – KAČER, J. Implementace protokolu DNS a možnosti monitorování síťových prvků a datového provozu v koncové síti s IPv6. Access server [online]. 2012, roč. 10, č. 2012070002, [cit. 2012-07-18]. Dostupné z: http://access.fel.cvut.cz/view.php?cisloclanku=2012070002
[3] MOCKAPETRIS, P. DOMAIN NAMES - IMPLEMENTATION AND SPECIFICATION. [online]. C1987, [cit. 2012-06-13]. Dostupné z: http://www.ietf.org/rfc/rfc1035.txt
[4] DNS, BIND Nameserver, DHCP, LDAP and Directory Services. [Online]. Dostupné z: http://www.bind9.net/
[5] ČEPA, L. – KAČER, J. Praktický postup adresace koncové sítě IP verze 6 a nastavení automatické konfigurace. Access server [online]. 2012, roč. 10, č. 2012080001, [cit. 2012-07-18]. Dostupné z:http://access.fel.cvut.cz/view.php?cisloclanku=2012080001
[6] DHCPv6: Dibbler – a portable DHCPv6. [Online]. Dostupné z: http://klub.com.pl/dhcpv6/#DOWNLOAD



Autor:        L. Čepa, J. Kačer, Z. Kocur, J. Vodrážka
Pracoviště: České vysoké učení technické v Praze, FEL

Informační e-mail Vytisknout článek
Zprávy
UPOZORNĚNÍ
Činnost serveru byla ukončena.


Tento web site byl vytvořen prostřednictvím phpRS - redakčního systému napsaného v PHP jazyce.
Na této stránce použité názvy programových produktů, firem apod. mohou být ochrannými známkami
nebo registrovanými ochrannými známkami příslušných vlastníků.