Ping devuelve la dirección IPv6, ping IPv4 en el símbolo del sistema

Si su computadora y un dispositivo remoto están ubicados en la misma red IP, VLAN o subred, probablemente notará que si hace ping a dicho dispositivo por su nombre de host, devolverá una dirección IPv6. Por ejemplo, intentaremos hacer ping a un host de Windows Server en nuestra red con el comando:

Ping srv01

Pinging srv01.contoso.com [fe80::c09::d4e6::189f::f661%3] with 32 bytes of data

Reply from fe80::c09::d4e6:189f:f661%3: time<1ms

Reply from fe80::c09::d4e6:189f:f661%3: time<1ms

Como puede ver, el comando ping devolvió una dirección de host IPv6 en lugar de una IPv4.

Ping que devuelve una dirección IPv6 en lugar de IPv4

El hecho es que el protocolo IPv6 es el protocolo preferido sobre IPv4 en las ediciones modernas de Windows (e incluso en Linux).

Si aún desea ver una dirección IPv4 de un dispositivo remoto en el resultado del comando ping, simplemente use el siguiente comando:

ping hostname -4

Simplemente agregue un parámetro «-4» después de su comando de ping habitual:

Ping srv01 -4

Pinging srv01.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

hacer ping a ip4

Como puede ver, el comando ping devolvió la dirección IPv4 estándar.

¿Cómo forzar a Windows a usar IPv4 sobre IPv6?

En todas las versiones de Windows a partir de Vista, las direcciones de unidifusión global IPv6 son preferibles a las direcciones IPv4 (según RFC 3484). Windows normalmente prefiere usar IPv6 sobre IPv4 si IPv6 está habilitado en el sistema local.

El Protocolo de Internet versión 6 (IPv6) es una parte obligatoria de Windows. Si lo desactiva, es posible que algunos componentes de Windows no funcionen correctamente. Microsoft recomienda usar la opción «Preferiblemente usar IPv4 en lugar de IPv6» en las políticas de prefijo de Windows en lugar de deshabilitar completamente IPv6.

Si el cliente intenta acceder a un servidor remoto utilizando un protocolo ICMP (comandos ping, telnet o pathping) y devuelve la dirección IPv6 (o hay algunos problemas con el funcionamiento de algunas aplicaciones heredadas), existe una solución más avanzada.

Nota. Aprenda a solucionar el problema de que no se pudo contactar con el controlador de dominio de Active Directory.

La solución es aumentar la prioridad del protocolo IPv4 sobre el IPv6. Puede utilizar una solución de este tipo sin necesidad de desactivar por completo el IPv6 en un host de origen y de destino.

Para mostrar la tabla de políticas actual en Windows, ejecute el siguiente comando:

netsh interface ipv6 show prefixpolicies

fuerza de ping ipv4

La siguiente configuración de directiva de prefijo se usa de forma predeterminada en Windows 10/11 y Windows Server 2019/2016.

Prefijo de etiqueta de precedencia

———- —– ——————————–

50 0 ::1/128

40 1 ::/0

35 4 ::ffff:0:0/96

30 2 2002::/16

5 5 2001::/32

3 13 fc00::/7

1 11 fec0::/10

1 12 3ffe::/16

1 3 ::/96

La tabla de políticas de prefijos es similar a la tabla de enrutamiento. Determina qué direcciones IP se prefieren al establecer una conexión remota. Windows usa esta tabla de prefijos para determinar qué dirección usar, luego hay varias direcciones disponibles para el nombre de host (IPv4 e IPv6 en este caso).

En esta tabla, la póliza “1 ::/0” (IPv6 nativo) tiene prioridad sobre “::ffff:0:0/96” (IPv4). Un protocolo con un valor de Precedencia más alto en esta tabla tiene una prioridad más alta. De forma predeterminada, el prefijo ::ffff:0:0/96 tiene una prioridad más baja que ::0, lo que significa que se prefiere IPv6 sobre IPv4 en este host de Windows.

Preferir IPv4 sobre IPv6 en Windows

La solución no requiere un reinicio, surte efecto inmediatamente. Debe abrir un símbolo del sistema elevado y ejecutar 2 comandos:

netsh interface ipv6 set prefix ::/96 60 3

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

Estos comandos aumentaron la prioridad de la política de prefijos de IPv4 y redujeron la prioridad de IPv6. De forma predeterminada, este cambio se hace persistente en todos los reinicios.

Por ejemplo, ejecute estos dos comandos en un host limpio de Windows Server 2016 y vuelva a ejecutar una solicitud de ping:

Pinging srv01.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

cmd ping ipv4

Como puede ver, el resultado cambió drásticamente en la dirección que necesitábamos. El servidor remoto comenzó a devolver una dirección IPv4 (192.168.10.21) en lugar de una dirección IPv6. Ahora comprobaremos que el servidor sigue haciendo ping por su dirección IPv6 y que no rompimos nada:

ping fe80::c09::d4e6:189f:f661%3

hacer ping solo a ipv4

Todo funciona como debe ser.

Imprima la tabla de prioridad de prefijos actual:

netsh interface ipv6 show prefixpolicies

Como puede ver, IPv4 ahora se usa de forma predeterminada al enviar los paquetes de red.

ventanas ping ipv4

Para que este cambio sea permanente, puede cambiar o crear el parámetro de registro DisabledComponents con un valor 0x20, lo que le indicará a Windows que siempre prefiera IPv4 sobre IPv6 (consulte a continuación).

También puede cambiar el protocolo IP preferido desde la GUI. Para hacerlo, abra Panel de control > Red e Internet > Conexiones de red > Avanzado > Configuración avanzada.

hacer ping a ipv4 cmd

Seleccione su conexión de red y configure el protocolo IPv4 por encima de IPv6 con el botón verde. Debe realizar esta operación para todos los enlaces disponibles.

hacer ping a ip v4

Consejo. Falta el cuadro de diálogo «Adaptadores y enlaces» en las versiones más recientes de Windows 10/11 y Windows Server 2016/2019.

Otra forma de cambiar la pila TCP/IP predeterminada de IPv6 a IPv4 en estos sistemas operativos es a través del registro. La funcionalidad IPv6 se puede configurar en Windows modificando el Componentes deshabilitados parámetro de registro HKLMSISTEMACurrentControlSetServiciosTcpip6Parámetros.

Abra el símbolo del sistema elevado y ejecute el comando:

reg.exe add HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpip6Parameters /v DisabledComponents /t REG_DWORD /d 0x20 /f

hacer ping con ipv4

O puede cambiar el valor de DisabledComponents a 0x20 a través de la GUI de Regedit.exe. Este valor le permite preferir un protocolo IPv4 sobre IPv6 cambiando las entradas en la tabla de políticas de prefijos. Reinicie su computadora para que los cambios surtan efecto.

Puede usar las Preferencias de directiva de grupo para implementar esta clave de registro en varias computadoras en un dominio de Active Directory usando un GPO.

hacer ping a las ventanas ipv4

Después de eso, la funcionalidad de IPv6 cambiará a las políticas «Preferir IPv4 sobre IPv6». Microsoft recomienda usar esta política en lugar de deshabilitar IPv6 en el host.

Pista. Para volver al comportamiento predeterminado de Windows (preferir IPv6 sobre IPv4), ejecute el comando:

reg add hklmsystemcurrentcontrolsetservicestcpip6parameters /v DisabledComponents /t REG_DWORD /d 0x0

Otros valores posibles para el parámetro DisabledComponents:

Funcionalidad IPv6 Valor de registro de DisabledComponents
Deshabilitar el protocolo IPv6 0xFF
Preferir IPv4 sobre IPv6 0x20
Deshabilite IPv6 en todas las interfaces que no sean de túnel 0x10
Deshabilite IPv6 en todas las interfaces de túnel 0x01
Deshabilite IPv6 en todas las interfaces que no sean de túnel (excepto el loopback) y en la interfaz de túnel IPv6 0x11
Valor por defecto 0x00

Tenga en cuenta que el valor de este parámetro de registro no afecta la casilla de verificación IPv6 en las propiedades del adaptador de red. Este es el comportamiento esperado.

ping v4

Valora este artculo post

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *