Projekt Debian IPv6
Účelem projektu je poskytnout centrální rozcestník pro hledání informací o IP verzi 6 v Debianu. Všechny počítače v Internetu používají ke komunikaci protokol zvaný IP (Internet Protocol), tento protokol používají ve verzi 4.
Cílem Squeeze je mimo jiné plná podpora IPv6. Další detaily viz Full IPv6 Support.
Contents
Nativní IPv6
Máte-li již nativní konektivitu IPv6, Debian by ji měl převzít automaticky, tj. z ohlášení směrovače (router advertisement), a adresy by pro vás měl vytvořit sám. Nebo můžete v /etc/network/interfaces využít metody "static" a nastavit tak adresy ručně. Protože ne všechny PPP RAS servery podporu IPv6 ohlašují (i když by ji na požádání vyjednali), uživatelé PPP mohou navíc potřebovat přidat +ipv6 do /etc/ppp/options.
Pokud váš směrovač neprovádí ohlašování, bude možná třeba zavést IPv6 ručně:
ip -6 addr add 2002:c000:203::1/64 dev eth0
Adresu samozřejmě nahraďte adresou odpovídající vaší IPv4 adrese, nebo čímkoliv, co chcete přiřadit k eth0. Obdobně můžete IPv6 ze zařízení odstranit:
ip -6 addr del 2002:c000:203::1/64 dev eth0
Pokud máte nativní podporu IPv6 i IPv4 (tzv. duální implementace), budete možná chtít použít obě: 6to4 i vaše nativní adresy. IPv6 totiž specifikuje pravidla, která zajistí, že nativní stanice budou využívat vaši nativní IPv6 konektivitu, kdežto stanice se 6to4 konektivitou využijí vaši 6to4 konektivitu (což z hlediska konfigurace sníží počet možných poruch).
Konfigurace IPv6 6to4
Možná o tom nevíte, ale pokud máte veřejnou IPv4 adresu, máte již automaticky rezervovanou také adresu IPv6. Existuje přechodný systém zvaný 6to4 (někdy psáno "stf" nebo "6 to 4"), který přiřazuje každé IPv4 adrese celou podsíť z prostoru IPv6. Tento systém můžete použít k přiřazení jedné adresy k vašemu počítači, nebo prefixu pro vaši lokální IPv6 podsíť. Tuto metodu je tedy možné využít k vytvoření privátní IPv6 sítě s použitím privátní IPv4 adresy (RFC 1918) namísto zavržených "místních individuálních" adres, tj. fec0::/10
Chcete-li nastavit 6to4, je nejdříve třeba na základě vaší stávající IPv6 adresy vypočítat IPv6 adresu. To lze provést pomocí shellu. V následujícím příkladu je IPv4 adresa 192.0.2.3; tuto nahradíte svou skutečnou veřejnou IP adresou. Notace ::1 na konci znamená, že se bude jednat o stroj s adresou 1 v podsíti 0. Máte tedy k dispozici 16 bitů pro adresy sítí a 64 bitů pro adresy rozhraní.
$ printf "2002:%02x%02x:%02x%02x::1\n" 192 0 2 3 2002:c000:0203::1
nebo použijte ipv6calc, který vám vrátí prefix:
$ ipv6calc --quiet --action conv6to4 192.0.2.3 2002:c000:203::
Dále upravte /etc/network/interfaces, kde přidejte následující sloku (speciální tunelovací zařízení je zde nazváno tun6to4, můžete však použít i jiný název):
auto tun6to4 iface tun6to4 inet6 v4tunnel address 2002:c000:0203::1 netmask 16 gateway ::192.88.99.1 endpoint any local 192.0.2.3 # odpovida adrese
Můžete také použít zavržené rozhraní sit0:
auto sit0 iface sit0 inet6 static address 2002:c000:0203::1 netmask 16 gateway ::192.88.99.1
Adresa 192.88.99.1 je speciální výběrová (anycast) adresa, která ukazuje na nejbližší 6to4 směrovač. Za předpokladu že nejbližší 6to4 směrovač funguje, mělo by již zbývat jen provést ifup tun6to4 (resp. sit0) a pak už se jen kochat vaší novou IPv6 konektivitou!
Zkušenější uživatelé IPv6 se možná zeptají, proč je maska podsítě pro sit0 /16, ne /64. Nastavením masky na /16 svému systému říkáte, aby pakety posílal přímo na IPv4 adresy ostatních účastníků 6to4. Pokud by maska byla /48, pakety by byly odesílány nejbližším 6to4 směrovačem, což by znamenalo další prodlení.
V případě příkladu se sit0 může dojít k interakci s IPv4 adresou, která neodpovídá 6to4 adrese na "vícedomoveckém" (multihomed, výraz Pavel Satrapa, IPv6, 2011,) rozhraní. Obecné tunelovací zařízení sit0 navíc neumožňuje specifikovat filtrování na základě zařízení.
Viz také:
Nastavení 6to4 směrovače v Debianu
Máte-li duální rozhraní (tj. s nativní konektivitou jak IPv4 tak IPv6), možná budete chtít zbytku vaší sítě nabídnout službu zprostředkovatele (relay router). Zprostředkovatel ve vaší síti pomáhá také s konektivitou rozhraní jen s IPv6 konektivitou; raději než se spoléhat na veřejného zprostředkovatele 6to4, může "zapouzdřit" IPv6 do IPv4 váš směrovač.
Existují dva způsoby jak toto provést; jedním z nich je mít zprostředkovatele na normální adrese, kterou sdílíte s ostatními klienty. Druhým způsobem je přidat k vašim IPv64 adresám a ke směrování 192.88.99.1/24, takže klienti využívající 6to4 si vašeho zprostředkovatele vyberou automaticky. Poběží-li zprostředkovatel na jiné adrese než 192.168.88.1, bude třeba na klientech patřičně změnit výchozí bránu.
Zprostředkovatel by měl již být automaticky nakonfigurován, aby pakety IPv6 klientům přeposílal. Poté přidáte rozhraní sit0 bez brány--pro zprostředkování 6to4. V /etc/network/interfaces to vypadá takto:
auto sit0 iface sit0 inet6 static address 2002:c000:0203::1 netmask 16
Všimněte si, že toto nastavení je téměř identické jako nastavení jednoduchého 6to4; jediným rozdílem je, že protože nativní konektivitu již máte, nemusí se zprostředkovatel tvářit jako brána.
Konfigurace IPv6 tunelu
IPv6 tunel může být v Debianu nastaven v /etc/network/interfaces:
auto 6in4 iface 6in4 inet6 v4tunnel address [Your IPv6 Endpoint] netmask [Prefix Length] endpoint [PoP IPv4 Endpoint] gateway [PoP IPv6 Endpoint] ttl 64 up ip link set mtu 1280 dev $IFACE
Teď můžete váš tunel ovládat pomocí ifup(8) a ifdown(8). Ještě lepší je, že tunel bude zaveden během startu systému: v /etc/init.d/networking je voláno "ifup -a", což zavede všechna rozhraní z /etc/network/interfaces, která mají volbu "auto".
Automatická konfigurace tunelu
Pokud chcete většinu nastavení tunelu automatizovat, vyzkoušejte balík aiccu pro SixXS, nebo 'tspc' pro Hexago.
Ruční konfigurace tunelu
Společnost Hurricane Electric provozuje tunnel broker zdarma, včetně registrace přes web a diskuzních fór. K dispozici jsou i příklady pro Debian s použitím příkazů ifconfig nebo ip. Pokyny k použití s ifupdown (/etc/network/interfaces) jsou k dispozici ve fóru tunelbroker.net.
Jak vypnout IPv6
Ve squeeze
Vypněte ipv6 v kernelu: echo net.ipv6.conf.all.disable_ipv6=1 > /etc/sysctl.d/disableipv6.conf zakáže ipv6 při dalším startu.
- fetchmail přestane posílat AND dotazy na AAAA
pokud máte vlastní upravený kernel s IPv6 ve formě modulu, mějte na vědomí, že z důvodu načasování souběhu s init skripty, budete muset nahrát modul IPv6 dříve, než bude spuštěn init skript procps (viz /usr/share/doc/procps/README.Debian a 507788)
- bude pravděpodobně také třeba zakomentovat veškeré IPv6 adresy v /etc/hosts (zejména adresu pro loopback), jinak ssh nezvládne přeposílat porty (nebo budete muset ssh používat vždy s volbou -4)
- V exim4:
do konfiguračního souboru pro exim přidejte disable_ipv6 = true
spusťte update-exim4.conf
- poté restartujte exim4
- V sshd:
do /etc/ssh/sshd_config přidejte ?AddressFamily inet
- restartujte sshd: /etc/init.d/ssh restart
Upravte /etc/avahi/avahi-daemon.conf, aby v něm bylo use-ipv6=no
Swisscom DSL v kombinaci s novějším směrovačem od Netopia nebude v Lennym fungovat sám od sebe.
Například, ssh bude fungovat s volbou -4 navzdory tomu, že:
provedete všechny kroky doporučené v http://wiki.debianforum.de/IPv6Deaktivieren
v /etc/modprobe.d/blacklist.conf nastavíte blacklist ipv6
Jsou opravdu zapotřebí "špinavé" triky jako v http://osdir.com/ml/debian-user-german-debian/2009-07/msg00516.html?
Čtěte také
Original (since 2001) IPv6 resources page, by CSmall
. There was a http://people.debian.org/~csmall/ipv6/ Debian IPv6 (thanks to archive.org).How to set up IPv6 on Debian, by madduck
. documentation on.debian-ipv6 mailing list: http://lists.debian.org/debian-ipv6/
Debian IPv6 IRC Channel: #debian-ipv6 on irc.debian.org
IPv6 IRC: #ipv6 on irc.freenode.net