IPv6 (англ. Internet Protocol version 6) — новая версия протокола IP, призванная решить проблемы, с которыми столкнулась предыдущая версия (Структура межсетевого протокола IPv4) при её использовании в Интернете, за счёт использования длины адреса 128 бит вместо 32. В настоящее время протокол IPv6 уже используется в нескольких сотнях сетей по всему миру (более 1600 сетей на март 2009), но пока ещё не получил столь широкого распространения в Интернете, как IPv4. В России практически не используется. Протокол был разработан IETF.
По прогнозам, после того, как адресное пространство в IPv4 закончится (предположительно 2011—2012 г.), два стека протоколов — IPv6 и IPv4 будут использоваться параллельно (англ. dual stack), с постепенным увеличением доли трафика IPv6 по сравнению с IPv4. Такая ситуация станет возможной из-за наличия огромного количества устройств, в том числе устаревших, не поддерживающих IPv6 и требующих специального преобразования для работы с устройствами, использующими только IPv6.
Маршрутизаторы больше не разбивают пакет на части (возможно разбиение пакета с передающей стороны). Соответственно оптимальный MTU придётся искать через Path MTU Discovery. Для лучшей работы протоколов, требовательных к потерям, минимальный MTU поднят до 1280 байтов. Информация о разбиении пакетов вынесена из основного заголовка в расширенные;
Исчезла контрольная сумма. С учётом того, что канальные (Ethernet) и транспортные (TCP) протоколы тоже проверяют корректность пакета, контрольная сумма на уровне IP воспринимается как излишняя. Тем более каждый роутер уменьшает hop limit на единицу, что в IPv4 приводило к пересчёту суммы.
Несмотря на огромный размер адреса IPv6, благодаря этим улучшениям заголовок пакета удлинился всего лишь вдвое: с 20 до 40 байт.
Скорей всего ваш домашний интернет провайдер не поддерживает IPv6. При наличии статического IPv4, можно получить подсеть IPv6 от туннельного брокера.
В достаточно свежих дистрибутивах ОС Linux уже присутствует полноценная поддержка IPv6. В более старых проверьте настройки ядра и установите значения двух переменных в 0:
net.ipv6.conf.default.disable_ipv6 = 0 net.ipv6.conf.all.disable_ipv6 = 0
Для диагностики правильной работы IPv6, используйте команду ping6 или traceroute с ключами:
ping6 ipv6.google.com traceroute -n -6 -I ipv6.google.com
В Debian, Ubuntu правим конфигурационный файл /etc/network/interfaces
# The primary network interface auto ens3 iface ens3 inet static address 5.252.21.186/24 gateway 5.252.21.1 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 1.1.1.1 8.8.8.8 2001:4860:4860::8888 2001:4860:4860::8844 dns-search test ### Start IPV6 static configuration iface ens3 inet6 static address 2a09:7c44::8c6 netmask 32 gateway 2a09:7c44::1 ### END IPV6 configuration
CentOS: /etc/sysconfig/network-scripts/ifcfg-eth0
IPV6INIT=yes IPV6ADDR=2a01:4f8:231:1aa1::2/64 IPV6_DEFAULTGW=fe80::1 IPV6_DEFROUTE=yes IPV6_DEFAULTDEV=eno1
FreeBSD v10.XX и выше в файле /etc/rc.conf
defaultrouter="185.XXX.209.1" ifconfig_xn0="inet 185.XXX.209.41 netmask 255.255.255.0" ipv6_defaultrouter="2a04:XXXX:1::1" ifconfig_xn0_ipv6="2a04:XXXX:1:0:0:0:0:12/48" ifconfig_xn0_aliases="inet6 2a04:XXXX:1:0:0:0:0:15/48 inet6 2a04:XXXX:1:0:0:0:0:16/48 inet 185.XXX.209.104 netmask 255.255.255.255 inet 185.XXX.209.131 netmask 255.255.255.255"