Почему Ping возвращает IPv6 адрес вместо IPv4

В некоторых случаях при выполнении ping по имени хоста (оба хоста при этом находятся в одной подсети / VLAN), вы можете обратить внимание, что команда вместо обычного IPv4 адреса хоста возвращает адрес в формате IPv6.

Ping server1

Pinging server1.contoso.com [fe80::c09::d4e6::258E::f661%3] with 32 bytes of data
Reply from fe80::c09::d4e6:258E:f661%3: time<1ms
Reply from fe80::c09::d4e6:258E:f661%3: time<1ms

команда ping возвращается ipv6 адрес вместо ipv4

Дело в том, что протокол IPv6 во всех версиях Windows, начиная с Vista имеет более высокий приоритет, чем протокол IPv4.

Если вы хотите, чтобы команда ping по-прежнему возвращала привычный IPv4 адрес хоста, воспользуйтесь такой командой:

ping hostname -4

Т.е. нужно добавить в команду ping дополнительный аргумент -4.

Ping server1 -4

Pinging server1.contoso.com [192.168.10.21] with 32 bytes of data
Reply from 192.168.10.21: bytes=32 time<1ms TTL=128
Reply from 192.168.10.21: bytes=32 time<1ms TTL=128

ключ -4 у команды пинг

Как вы видите, команда ping вернула обычный IPv4-адрес.

Из-за того, что при выполнении запроса клиентом к серверу, ему возвращается адрес в формате IPv6, могут наблюдаться проблемы с работой старых приложений. В этом случае можно изменить приоритет протокола IPv4 так, чтобы он стал выше приоритета, заданного для IPv6. Изменить приоритеты используемых протоколов можно с помощью команд:

netsh interface ipv6 set prefix ::/96 60 3
netsh interface ipv6 set prefix ::ffff:0:0/96 55 4

Изменения вступают в силу немедленно и перезагрузка сервера не требуется.

К примеру, после выполнения данных команд на Windows Server 2016, команда ping сразу стала возвращать IPv4 адрес хоста.

Pinging server1.contoso.com [192.168.10.21] with 32 bytes of data
Reply from 192.168.10.21: bytes=32 time<1ms TTL=128
Reply from 192.168.10.21: bytes=32 time<1ms TTL=128

netsh interface ipv6 set prefix ::/96 60 3

Теперь проверим, что мы ничего не сломали и удаленный хост все также доступен и по IPv4 адресу:

ping fe80::c09::d4e6:258E:f661%3

пинг ipv6 адрес

Все работает корректно.

Также можно изменить приоритет протоколов из графического интерфейса панели управления. Для этого, перейдите в раздел Control Panel -> Network and Internet -> Network Connections -> Advanced -> Advanced Settings.

расширенные настройки сети

Выберите сетевое подключения и с помощью зеленых стрелок поместите протокол IPv4 выше по списку, чем IPv6. Вы должны выполнить эту операцию для всех доступных протоколов.

настройки биндинга для сетевых адаптеров

Совет. Данное диалоговое окно (Adapters and Bindings) в новых ОС Windows 10 / Windows Server 2016 почему-то отсутствует.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *