Konfigurace IPv6 Servery
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
Konfigurace IPv6 - Servery
1/6
Obsah IPv6 pro servery...................................................................................................................................2 Statická vs. dynamická adresa.........................................................................................................2 Nastavení IPv6 adres.......................................................................................................................2 Nastavení IPv6 směrování...............................................................................................................3 Nastavení vybraných služeb............................................................................................................3 StateLess Auto Configuration.....................................................................................................3 DHCPv6......................................................................................................................................4 DNS.............................................................................................................................................5 Reference.........................................................................................................................................5
IPv6 pro servery V této kapitole se zaměříme na specifickou skupinu počítačů, které jsou připojeny do sítě trvale a jsou nositeli služeb. Servery, jak jsou tyto počítače nazývány, jsou typické během 24/7/365 a bez nich by nebyl dnešní Internet takový, jak jej známe. Servery mohou poskytovat velikou škálu služeb. Mnohé služby pracují na vyšších vrstvách modelu ISO/OSI, proto se jich nedotkne změna protokolu IP z verze 4 na verzi 6. Jiné, které jsou většinou podpůrné systémy pro síťovou infrastrukturu, jsou úzce svázány s 2. a 3. vrstvou a je tedy nutné je upravit tak, aby si s IPv6 rozuměli.
Statická vs. dynamická adresa Jak již z konfigurace koncových stanic víme, IPv6 nabízí 2 způsoby autokonfigurace. Pro koncová zařízení, která jsou odběrateli služeb, je v pořádku, jestliže je IP adresa dynamická. V případě serverů je však toto chování zcela nevhodné. Nicméně i autokonfiguraci lze v IPv6 použít a klient nebude muset pokaždé složitě zjišťovat, kde že se jeho oblíbená služba nachází. Právě pro tyto účely IPv6 definuje sadu adres, na kterých musí servery, poskytující standardní služby, poslouchat. Tyto adresy jsou dobře známé a popsány v [1]. Jestliže server používá tyto adresy, pak nemusí mít statickou adresu v dané síti, neboť má statickou adresu pro danou službu v této síti. Služby, které nejsou zahrnuty v [1], nemají definovanou IPv6 adresu. Pro ně již platí pravidla známá z IPv4 a je vhodné pro servery těchto služeb zvolit statickou IP adresu. Autokonfiguraci lze využít i v případě statické konfigurace. Pomocí bezstavové konfigurace si server zjistí jednak adresu sítě, ale hlavně také směrovací záznamy výchozí brány, popř. i další údaje. Tyto údaje již plně dostačující k tomu, aby server mohl komunikovat. Pokud k nim přidáme navíc statickou adresu (uvedenou např. v DNS), pak je již server plně schopen obsluhovat služby, které má na starosti.
Nastavení IPv6 adres Pro Unixový svět je vodné využít nástroj ip nebo ifconfig. Syntaxe ifconfigu je následující. ifconfig [-L] [-m] [-r] interface [create] [address_family] [address [dest_address]] [parameters]
Volitelný parametr address_family je implicitně nastaven na inet, tedy IPv4, lze jej však nastavit na hodnotu inet6, tedy IPv6. Příklad: Konfigurace IPv6 - Servery
2/6
# ifconfig en0 inet6 2001:718:2:1600:0:0:1:123/64
Linux upřednostňuje mocnější nástroj ip, s ním se pracuje obdobně. Příklad: # ip -6 address add 2001:718:2:1600:0:0:1:123/64 dev eth0
Oba výše zmíněné příkazy pouze nastaví adresu po dobu běhu serveru. Pokud je nutné, aby adresa byla přítomna i po restartu stroje, je nutné využít buď vestavěných možností zvolené distribuce (např. /etc/rc.conf či /etc/network/interfaces) nebo přidat do systému skript, který adresy po startu přidá. V prostředí Windows lze využít grafické nástroje, které uživatele sami provedou nastavením.
Nastavení IPv6 směrování Pokud potřebujeme nastavit statické směrovací záznamy pro IPv6, pak lze v Unixových systémech využít nástroj route. Příklad: # route add -inet6 default 2001:718:2:1600::1
Tímto příkazem jsme nastavili výchozí bránu na stroj s adresou 2001:718:2:1600::1. Klíčové slovo default je zástupný symbol pro příkaz -net ::/0. Pomocí přikazu # route add -inet6 -host 1234:5678:9abc::1 2001:718:2:1600::1
lze přidávat i záznamy pro jednotlivé stroje. Příkaz route je plně funkční i v Linuxu, preferován je však nástroj ip. Ten pracuje obdobně. Příklad: # ip -6 route add default via 2001:718:2:1600::1 # ip -6 route add 1234:5678:9abc::1/128 via 2001:718:2:1600::1
Nastavení vybraných služeb V této kapitole se zaměříme na vybrané služby, které jsou závislé na IPv6, popř. slouží jako podpůrné služby pro IPv6. Jmenovitě se zaměříme na služby SLAC, DHCP a DNS.
StateLess Auto Configuration Ohlášení směrovače (RA) nemusí vysílat pouze směrovač (ve smyslu specializovaného HW), ale i každý server, který se chová jako směrovač. K tomuto účelu se využívá program radvd, lze se však setkat i s jinými programy, např. rtadvd. Konfigurace radvd se opírá o soubor /etc/radvd.conf. Konfigurační soubor se skládá z několika sekcí, ty mohou být i zanořené, v nichž se nastavují příznaky RA. Základní konfigurace, kdy směrovač pouze ohlašuje svoji přítomnost a adresu sítě, je vypsána zde: interface eth0 { AdvSendAdvert on; prefix 2001:718:2:1600::/64 { AdvOnLink on; AdvAutonomous on; }; };
Pokud chceme využít rozšíření RA, kdy se vysílají i další informace, jako např. Adresa DNS serveru, pak je třeba nastavit konfiguraci následovně: interface eth0 { AdvSendAdvert on;
Konfigurace IPv6 - Servery
3/6
prefix 2001:718:2:1600::/64 { AdvOnLink on; AdvAutonomous on; }; RDNSS 2001:718:2:1601::8 { AdvRDNSSLifetime infinity; }; };
Jestliže chceme použít kombinaci SLAC a DHCP, kdy přes SLAC si klient nastaví IP adresu a přes DHCP si zjistí ostatní údaje o síti, je třeba změnit hodnotu u atributu AdvOtherConfigFlag. interface eth0 { AdvSendAdvert on; prefix 2001:718:2:1600::/64 { AdvOnLink on; AdvAutonomous on; AdvOtherConfigFlag on; }; };
Poslední konfigurace používá minimální nastavení RA, kdy je pouze vysíláno, že všechny parametry klient získá u DHCPv6 serveru. interface eth0 { AdvSendAdvert on; prefix 2001:718:2:1600::/64 { AdvOnLink on; AdvAutonomous off; AdvOtherConfigFlag on; AdvManagedFlag on; }; };
DHCPv6 Implementací DHCP serverů lze nalézt více. Standardem v IPv4 se stala implementace od ISC. Tento server je již delší dobu rozšířen i pro podporu IPv6, proto si zde ukážeme, jak jej nastavit. Pokud budeme jako základ konfigurace považovat SLAC a DHCP použijeme pouze pro zasílání doplňujících informací pro klienty, pak si vystačíme s následující konfigurací v souboru /etc/dhcpd6.conf. Default-lease-time 600; max-lease-time 7200; subnet6 2001:718:2:1600::/64 { # Range for clients range6 2001:718:2:1600::129 2001:718:2:1600::254; # Additional options option dhcp6.name-servers fec0:0:0:1::1; option dhcp6.domain-search "domain.example" }
Pokud však chceme přidělovat i adresy, pak musíme konfiguraci rozšířit. Na rozdíl od IPv4, v IPv6 se nepoužívá MAC adresa pro jednoznačnou identifikaci klienta. Používá se DUID, tedy DHCP Unique ID, které si klient vytváří při instalaci OS, obsahuje v sobě jak MAC adresu, tak také čas nebo i jiné údaje, které jsou závislé na HW klienta. Problémem tohoto přístupu je, že i když se jedná o stejného klienta, jen používá více operačních systémů, pak se v síti bude tvářit jako 2 identity. Dalším problémem je, že není určeno standardní místo, kde lze DUID daného systému Konfigurace IPv6 - Servery
4/6
nalézt, viz. [2]. Jakmile však známe DUID, můžeme nastavit DHCP server, aby pro jednoho klienta přiděloval vždy stejnou adresu: /etc/dhcpd6.conf. Default-lease-time 600; max-lease-time 7200; subnet6 2001:718:2:1600::/64 { # Range for clients range6 2001:718:2:1600::129 2001:718:2:1600::254; # Additional options option dhcp6.name-servers fec0:0:0:1::1; option dhcp6.domain-search "domain.example" # Example for a fixed host address host specialclient { host-identifier option dhcp6.client-id 00:01:00:01:4a:1f:ba:e3:60:b9:1f:01:23:45; fixed-address6 2001:718:2:1600::127; } }
DNS Také DNS serverů lze nalézt celou řadu. V tomto návodu se zaměříme na BIND, který je považován za standard v *nixových systémech. IPv6 pro BIND nevyžaduje žádné specifické nastavení. Pokud máme na serveru správně nastavenou IP adresu a v konfiguraci ve volitelných parametrech přidánu volbu, na jakých IPv6 adresách máme poslouchat. options { // Relative to the chroot directory, if any directory "/etc/namedb"; pid-file "/var/run/named/pid"; dump-file "/var/dump/named_dump.db"; statistics-file "/var/stats/named.stats"; allow-recursion { internal; }; listen-on-v6 { 2001:718:2:1600:0:0:0:90; ::1; }; zone-statistics yes; };
Aby mohl plnit práci primárního DNS serveru, je nutné přidat správné záznamy do konfigurace. Principy jsou stále stejné, jen pro zóny je třeba uvádět místo in-addr.arpa hodnotu ip6.arpa, tak jak ukazuje následující příklad pro doménu 2001:718:2:1600/64 zone "0.0.6.1.2.0.0.0.8.1.7.0.1.0.0.2.ip6.arpa" { type master; file "ip6.rev"; };
Pro reverzní záznamy je pak důležité dbát na dostatečný počet nul i jiných hodnot, adresy jsou opravdu dlouhé. Pro adresu 2001:718:2:1600::18 bude záznam následující: 8.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0
IN
PTR
pc.example.com.
Dopředný záznam pro stejnou adresu pak bude vypadat: pc
IN
AAAA
Konfigurace IPv6 - Servery
2001:0718:0002:1600:0000:0000:0000:0018
5/6
Reference [1] IP Version 6 Addressing Architecture, RFC 4291, Sekce 2.7.1 [2] IPv6 Třetí vydání, Pavel Satrapa, Edice CZ.NIC
Konfigurace IPv6 - Servery
6/6