ping6.net
Лучшие Практики

Как включить IPv6 на Windows, macOS, Linux и маршрутизаторах

Запустите IPv6 на ваших устройствах и в сети. Пошаговые инструкции для Windows, macOS, Linux и популярных брендов маршрутизаторов.

ping6.net1 марта 2024 г.7 min read
IPv6конфигурацияWindowsmacOSLinuxмаршрутизаторнастройка

Предварительные требования#

Вам нужны три вещи перед включением IPv6:

  1. Поддержка провайдера — Позвоните вашему провайдеру или проверьте их документацию. Если они не предлагают IPv6, ничто другое не имеет значения.
  2. Поддержка маршрутизатора — Любой маршрутизатор последних 5-7 лет должен работать. Проверьте спецификацию, если не уверены.
  3. Современная ОС — Windows 7+, macOS 10.7+ или любой Linux последнего десятилетия включают IPv6.

Большинство провайдеров включили IPv6, не рассказывая никому. У вас уже может быть он.

TL;DR - Краткое резюме

Ключевые моменты:

  • Проверьте, есть ли у вас уже IPv6, посетив ping6.net или выполнив ping6 ipv6.google.com
  • Windows/macOS/Linux: IPv6 включён по умолчанию — просто настройте ваш маршрутизатор
  • Маршрутизаторы: Включите IPv6, установите тип подключения на "Native/Auto", включите Router Advertisement
  • Безопасность: Настройте правила IPv6-файрвола так же, как политики IPv4
  • Приватность: Включите расширения приватности на клиентских устройствах для предотвращения отслеживания MAC-адресов

Перейти к: Конфигурация Windows | Настройка macOS | Руководство Linux | Конфигурация маршрутизатора


Проверьте, есть ли у вас уже IPv6#

Перед настройкой чего-либо проверьте ваш текущий статус. Посетите ping6.net чтобы увидеть, определяется ли ваш IPv6-адрес автоматически.

Из командной строки попробуйте пропинговать IPv6-only хост:

# Windows
ping -6 ipv6.google.com
 
# macOS/Linux
ping6 ipv6.google.com

Если вы получаете ответы, вы закончили. Если нет, продолжайте читать.

Windows 10/11#

IPv6 включён по умолчанию в Windows, но вот как проверить или повторно включить его.

Метод GUI#

  1. Нажмите Win + R, введите ncpa.cpl, нажмите Enter
  2. Правый клик на ваш сетевой адаптер → Свойства
  3. Найдите Протокол Интернета версии 6 (TCP/IPv6) в списке
  4. Убедитесь, что чекбокс отмечен
  5. Выберите его, нажмите Свойства
  6. Выберите Получить адрес IPv6 автоматически
  7. Выберите Получить адрес DNS-сервера автоматически
  8. Нажмите OK

Метод PowerShell#

Откройте PowerShell как Администратор:

# Проверить статус IPv6
Get-NetAdapterBinding -ComponentID ms_tcpip6
 
# Включить IPv6 на конкретном адаптере
Enable-NetAdapterBinding -Name "Ethernet" -ComponentID ms_tcpip6
 
# Включить на всех адаптерах
Get-NetAdapter | Enable-NetAdapterBinding -ComponentID ms_tcpip6
 
# Проверить, что сработало
Get-NetIPAddress -AddressFamily IPv6
 
# Тест связности
Test-NetConnection -ComputerName ipv6.google.com

Если что-то не работает, сбросьте IPv6-стек:

netsh int ipv6 reset
ipconfig /flushdns

Затем перезапустите ваш сетевой адаптер или перезагрузитесь.

Не отключайте IPv6 в Windows

Microsoft явно рекомендует оставлять IPv6 включённым, даже если вы его не используете. Отключение ломает DirectAccess, HomeGroup и может вызывать задержки разрешения DNS.

macOS#

IPv6 включён по умолчанию. Вот как проверить или настроить его.

Системные настройки#

  1. Откройте Системные настройкиСеть
  2. Выберите ваше соединение (Wi-Fi или Ethernet)
  3. Нажмите Детали
  4. Перейдите на вкладку TCP/IP
  5. Под Настроить IPv6 выберите:
    • Автоматически — Для SLAAC/DHCPv6 (рекомендуется)
    • Только link-local — Только для локальной сети
    • Вручную — Для статических адресов

Терминал#

# Проверить текущую конфигурацию IPv6
networksetup -getinfo "Wi-Fi"
 
# Включить автоматический IPv6
networksetup -setv6automatic "Wi-Fi"
 
# Показать все IPv6-адреса
ifconfig | grep inet6
 
# Тест связности
ping6 ipv6.google.com

Для статической конфигурации:

# Установить статический адрес
sudo networksetup -setv6manual "Wi-Fi" 2001:db8::10 64 2001:db8::1

Linux#

Метод конфигурации зависит от вашего дистрибутива и сетевого менеджера.

NetworkManager (Ubuntu, Fedora, RHEL)#

GUI:

  1. НастройкиСеть
  2. Нажмите иконку шестерёнки рядом с вашим соединением
  3. Перейдите на вкладку IPv6
  4. Установите метод на:
    • Автоматический — SLAAC с Router Advertisement (по умолчанию)
    • Автоматический, только DHCP — Только DHCPv6
    • Вручную — Статическая конфигурация
  5. Нажмите Применить

Командная строка с nmcli:

# Проверить текущие настройки
nmcli connection show "Wired connection 1" | grep ipv6
 
# Включить SLAAC
nmcli connection modify "Wired connection 1" ipv6.method auto
 
# Включить DHCPv6
nmcli connection modify "Wired connection 1" ipv6.method dhcp
 
# Статическая конфигурация
nmcli connection modify "Wired connection 1" \
  ipv6.method manual \
  ipv6.addresses "2001:db8::10/64" \
  ipv6.gateway "2001:db8::1"
 
# Применить изменения
nmcli connection up "Wired connection 1"

systemd-networkd (Arch, серверные установки Debian)#

Редактировать /etc/systemd/network/20-wired.network:

[Match]
Name=eth0
 
[Network]
DHCP=yes
IPv6AcceptRA=yes
 
# Или для статического:
# Address=2001:db8::10/64
# Gateway=2001:db8::1

Перезапустить сервис:

sudo systemctl restart systemd-networkd

Ручная конфигурация с командами ip#

Для временной конфигурации или отладки:

# Показать текущие IPv6-адреса
ip -6 addr show
 
# Добавить IPv6-адрес
sudo ip -6 addr add 2001:db8::10/64 dev eth0
 
# Добавить маршрут по умолчанию
sudo ip -6 route add default via 2001:db8::1 dev eth0
 
# Проверить таблицу маршрутизации
ip -6 route show

Эта конфигурация не переживёт перезагрузку. Для постоянных изменений используйте NetworkManager или systemd-networkd.

Тестирование на Linux#

# Пропинговать IPv6-адрес
ping6 2001:4860:4860::8888
 
# Пропинговать hostname через IPv6
ping -6 google.com
 
# Traceroute
traceroute6 google.com
 
# Проверить таблицу маршрутизации
ip -6 route show
 
# Показать кэш neighbor discovery
ip -6 neigh show

Конфигурация маршрутизатора#

Ваш маршрутизатор должен запросить IPv6 у вашего провайдера и анонсировать префиксы в вашу LAN. Конфигурация варьируется по брендам.

Общие шаги для потребительских маршрутизаторов#

  1. Войдите в ваш маршрутизатор (обычно 192.168.1.1 или 192.168.0.1)
  2. Найдите настройки IPv6 (под Расширенные, Интернет или WAN)
  3. Включите IPv6
  4. Выберите тип соединения на основе вашего провайдера:
    • Native/Auto — Самый распространённый, используйте это сначала
    • DHCPv6 — Провайдер использует делегирование префикса DHCPv6
    • PPPoE — Если вы используете PPPoE для IPv4
    • 6rd или 6to4 — Устаревшее туннелирование (редко)
  5. Включите Router Advertisement для вашей LAN
  6. Включите SLAAC или DHCPv6 (или оба) для клиентов вашей LAN
  7. Сохраните и перезагрузитесь, если нужно

Подождите 30-60 секунд после перезагрузки, затем проверьте ваши устройства на IPv6-адреса.

Маршрутизаторы ASUS#

  1. Расширенные настройкиIPv6
  2. Тип соединения: Native или Auto
  3. Интерфейс: Соответствует вашему типу WAN (PPP для PPPoE, Ethernet для DHCP)
  4. DHCP-PD: Включить
  5. Router Advertisement: Включить
  6. Применить

Маршрутизаторы ASUS обычно автоопределяют правильные настройки. Если «Auto» не работает, попробуйте «Native».

  1. РасширенныеIPv6
  2. Включить IPv6: Вкл
  3. Тип интернет-соединения: Dynamic IP (SLAAC/DHCPv6)
  4. Сохранить

Прошивка TP-Link значительно варьируется по моделям. Некоторые старые модели нуждаются в «Auto Configuration» или «Auto Detect» вместо этого.

Маршрутизаторы Netgear#

  1. РасширенныеРасширенная настройкаIPv6
  2. Тип интернет-соединения: Auto Detect (или Auto Config)
  3. Применить

Автоопределение Netgear хорошо работает с большинством провайдеров. Если отказывает, попробуйте «DHCPv6» вручную.

Проверка#

После настройки IPv6 проверьте, что всё работает:

  1. Проверьте адрес: Используйте ipconfig /all (Windows), ifconfig (macOS/Linux) или ip -6 addr (Linux)
  2. Проверьте связность: Посетите ping6.net или используйте наш тест связности
  3. Тест DNS: Используйте наш инструмент поиска IPv6 DNS
  4. Проверьте маршрутизацию: Используйте наш инструмент Traceroute для трассировки путей к 2001:4860:4860::8888

Вы должны увидеть как IPv6-адрес (начинающийся с 2 или 3, не fe80), так и успешную связность с IPv6-хостами.

А как насчёт fe80-адресов?

Link-local адреса, начинающиеся с fe80::, нормальны и существуют на каждом IPv6-интерфейсе. Они используются только для локальной сетевой коммуникации, а не для интернет-связности. Вам нужен глобально маршрутизируемый адрес (начинается с 2 или 3) для достижения IPv6-интернета.

Отладка#

Нет IPv6-адреса#

Проверьте по порядку:

  1. Ваш провайдер поддерживает IPv6? Позвоните им или проверьте их веб-сайт.
  2. IPv6 включён на вашем маршрутизаторе? Войдите и проверьте.
  3. Router Advertisement включён на вашем маршрутизаторе? Он должен транслировать RA-сообщения.
  4. Ваш файрвол блокирует ICMPv6? ICMPv6 обязателен для IPv6, в отличие от ICMP для IPv4.

Быстрый тест: Подключите устройство напрямую к вашему модему (обходя маршрутизатор). Если вы получаете IPv6-адрес, проблема в конфигурации вашего маршрутизатора.

Есть адрес, но нет связности#

Проверьте по порядку:

  1. У вас есть маршрут по умолчанию? Запустите ip -6 route (Linux) или netstat -rn -f inet6 (macOS) и ищите запись default.
  2. Можете пропинговать ваш шлюз? Найдите ваш шлюз с ip -6 route, затем пропингуйте его с ping6 <шлюз>.
  3. Можете пропинговать внешние IPv6-хосты? Попробуйте ping6 2001:4860:4860::8888.
  4. Ваш DNS работает? Попробуйте nslookup google.com 2001:4860:4860::8888.

Большинство проблем «нет связности» — это либо отсутствующие маршруты по умолчанию, либо правила файрвола, блокирующие IPv6-трафик.

Для детальной отладки смотрите наше руководство по отладке IPv6-связности.

Связанные статьи#

  • Отладка IPv6 — Решение распространённых проблем с IPv6-подключением и связностью
  • DHCPv6 против SLAAC — Поймите варианты автоматической конфигурации для вашей IPv6-сети

Протестируйте ваше подключение

Используйте наши инструменты IPv6 Ping и Поиск DNS для проверки, что ваше IPv6-подключение работает правильно.