Konfigurace IPv6 rozhraní

Popis problému

Pokud je součástí služby, kterou u nás máte objednanou, také IPv6 adresa, je možné, že v případě použití určitého operačního systému narazíte na problém s rozhraním IPv6, které je po instalaci daného OS, respektive vytvoření a spuštění stroje s obrazem daného OS, špatně nakonfigurováno nebo není vůbec definováno. Tato skutečnost může být příčinou toho, že přestože máte IPv6 adresu přidělenu, není komunikace prostřednictvím IPv6 možná. Předmětem tohoto návodu je popis konfigurace IPv6 rozhraní pro jednotlivé OS (v jejichž rámci se daný problém může vyskytnout), jejíž aplikace by měla problém s použitím IPv6 vyřešit.

POZNÁMKA: Příčina absence možnosti komunikace prostřednictvím IPv6 se může nacházet mimo infrastrukturu poskytovatele. Před použitím tohoto návodu se vždy raději jistěte, že podmínky, v jejichž rámci testujete použití IPv6, komunikaci prostřednictvím tohoto protokolu umožňují – např. prostřednictvím nástrojů od společnosti cz.nic .

Ověření připravenosti připojení na IPv6

Kdy se problém vyskytuje

Pro většinu služeb, které poskytujeme, je k dispozici řada obrazů operačních systémů. Problém s výchozí konfigurací rozhraní IPv6 jsme zaznamenali pouze u obrazů následujících serverových verzí operačních systémů GNU/Linux:

  • Ubuntu
  • Fedora
  • CentOS
  • Arch Linux

Pro uvedené distribuce OS dále uvádíme postup, který by Vám měl pomoci správně nakonfigurovat IPv6 rozhraní a odstranit tak problémy s komunikací prostřednictvím IPv6, pokud se vyskytují.

Ověření existence správně nakonfigurovaného IPv6 rozhraní

Je možné, že problémem není IPv6 rozhraní, ani jeho konfigurace. V takovém případě je problém někde jinde a tento návod Vám s problémy týkajícími se IPv6 nepomůže. Pro ověření existence a správné konfigurace IPv6 rozhraní doporučujeme provést 2 následující kroky. Budete potřebovat IPv6 adresu daného stroje, kterou můžete nalézt v zákaznickém portálu na detailu dané služby nebo v e-mailu, který jste obdrželi v rámci zřízení dané služby. Připojte se k danému stroji (např. prostřednictvím konzole v zákaznickém portálu nebo pomocí programu PuTTY) a postupujte takto:

  1. V rámci stroje, který obsahuje IPv6 rozhraní, o jehož konfiguraci se zajímáte, ověřte, že existuje IPv6 rozhraní. Použijte příkaz ip -6 addr, který vám zobrazí všechna dostupná IPv6 rozhraní. Pokud ve výpisu nenaleznete IPv6 rozhraní s IPv6 adresou, která byla přidělena danému stroji, IPv6 rozhraní není definováno. V takovém případě přejděte k následující kapitole tohoto návodu. V opačném případě postupte k následujícímu kroku. Pro ujištění můžete ještě použít kombinaci příkazů v následujícím tvaru:
    ip -6 addr | grep ipv6.adresa.vašeho.serveru.
  2. Ověření existence IPv6 rozhraní – úspěšné
    Ověření existence IPv6 rozhraní – neúspěšné
  3. Ověřte dostupnost daného stroje pod danou IPv6 adresou z jiného stroje, ideálně z jiné sítě. Postup se bude lišit v závislosti na operačním systému jiného stroje, ze kterého budete dostupnost pod IPv6 testovat:
    • a. Linux – otevřete emulátor shellu a použijte příkaz
      ping6 –c 5 ipv6.adresa.vašeho.serveru
    • b. Windows – spusťte příkazový řádek cmd a použijte příkaz
      ping -6 ipv6.adresa.vašeho.serveru

    Jestliže příkaz vrátí odpověď beze ztráty, je daný stroj pod IPv6 dostupný, IPv6 rozhraní je nakonfigurováno a funkční, není třeba jej nijak konfigurovat a tento návod nemusíte dále číst. V případě, že příkaz vrátí odpověď se 100% ztrátou, IPv6 rozhraní není správně nakonfigurováno nebo připojení stroje, ze kterého dostupnost pod IPv6 testujete, není na IPv6 připraveno. V takovém případě přejděte k následující kapitole tohoto návodu. Vždy je lepší se ujistit, že stroj, z něhož dostupnost pod IPv6 testuje je na IPv6 připraven, tj. např. otestovat dostupnost z nějakého stroje, u něhož jsme si dostupností prostřednictvím IPv6 naprosto jisti.

    Ověření dostupnosti stroje pod IPv6 adresou – úspěšné, neúspěšné

Konfigurace IPv6 rozhraní v rámci GNU/Linux Ubuntu / Fedora / CentOS / Arch Linux

  1. Připojíme se k danému stroji s instalovaným OS Ubuntu / Fedora / CentOS / Arch Linux.
  2. (Ověříme, že se skutečně jedná o OS Ubuntu / Fedora / CentOS / Arch Linux prostřednictvím příkazu cat /etc/os-release)
  3. Ujistíme se, že se v příslušném adresáři nenachází konfigurační soubor rozhraní eth1. Pokud by takový soubor existoval, museli bychom v následujícím kroku zvolit v názvu konfiguračního souboru číslo o 1 vyšší, než by bylo nejvyšší číslo v rámci všech existujících konfiguračních souborů v daném adresáři.
  4. Distribuce Konfigugrační soubor Ověření existence
    Ubuntu 14 eth1.cfg ls -a /etc/network/interfaces.d/
    Ubuntu 16 60-ens4.cfg ls -a /etc/network/interfaces.d/
    Fedora ifcfg-eth1 ls -a /etc/sysconfig/network-scripts/
    CentOS ifcfg-eth1 ls -a /etc/sysconfig/network-scripts/
    Arch Linux eth1-dhcp.network ls -a /etc/systemd/network
  5. Vytvoříme příslušný konfigurační soubor rozhraní, které bude zajišťovat komunikaci prostřednictvím IPv6.
  6. Distribuce Vytvoření konfiguračního souboru IPv6 rozhraní
    Ubuntu 14 sudo touch /etc/network/interfaces.d/eth1.cfg
    Ubutnu 16 sudo touch /etc/network/interfaces.d/60-ens4.cfg
    Fedora sudo touch /etc/sysconfig/network-scripts/ifcfg-eth1
    CentOS sudo touch /etc/sysconfig/network-scripts/ifcfg-eth1
    Arch Linux sudo touch /etc/systemd/network/eth1-dhcp.network
  7. Do takto vytvořeného souboru vložíme následující řádky a uložíme provedené změny.
  8. Distribuce Obsah konfiguračního souboru IPv6 rozhraní
    Ubuntu 14 auto eth1
    iface eth1 inet6 auto
    Ubuntu 16 auto ens4
    iface ens4 inet6 dhcp
    Fedora DEVICE=“eth1″
    BOOTPROTO=“dhcp“
    ONBOOT=“yes“
    TYPE=“Ethernet“
    PERSISTENT_DHCLIENT=“yes“
    DHCPV6C=“yes“
    CentOS DEVICE=“eth1″
    BOOTPROTO=“dhcp“
    ONBOOT=“yes“
    TYPE=“Ethernet“
    PERSISTENT_DHCLIENT=“1″
    DHCPV6C=“yes“
    Arch Linux [Match]
    Name=eth1
    [Network]
    DHCP=ipv6
    [DHCP]
    UseMTU=true
  9. Restartujeme stroj, např. prostřednictvím příkazu sudo reboot
  10. Ověříme existenci správně nakonfigurovaného IPv6 rozhraní výše uvedeným způsobem.
Konfigurace IPv6 rozhraní v rámci GNU/Linux Ubuntu 14
Konfigurace IPv6 rozhraní v rámci GNU/Linux Ubuntu 16
Konfigurace IPv6 rozhraní v rámci GNU/Linux Fedora
Konfigurace IPv6 rozhraní v rámci GNU/Linux CentOS
Konfigurace IPv6 rozhraní v rámci GNU/Linux Arch Linux