cmd

Ping returns IPv6 Address, ping IPv4?


If you are on the same network, or VLAN, or subnet as someone else – you will probably notice that if you ping their hostname it will return with an IPv6 address.

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

ping ipv4

The fact is that the IPv6 protocol in Windows Vista and above is the preferred protocol over IPv4.

If you want to still see what’s their IPv4 address, then simply use the command below:

ping hostname -4

Simply add a flag “-4” after your normal ping command:

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

ping ipv4 cmd

As you can see, the ping command returned standard IPv4 address.

In the event that, when the client requests the server and it returns the IPv6 address, and there are some problems with the operation of some legacy applications, there is a more advanced solution.

The solution is to increase the priority of the IPv4 over the IPv6 protocol, but with the continued operation of IPv6.

The solution doesn’t require a reboot, it takes effect immediately. You need to open an elevated Command Prompt, and execute 2 commands:

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

On an example of a clean Windows Server 2016, execute these two commands and check ping again:

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

ping return ipv4

As you can see, the result changed dramatically in the direction we needed, the IPv4 address 192.168.10.21 began to return. Now we’ll check that the server is still pinging using its IPv6 address, and we didn’t break anything:

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

ping ipv4 command line

Everything works as it should be.

You can also change the preferred IP protocol from GUI. To do it, open Control Panel > Network and Internet > Network Connections > Advanced > Advanced Settings.

Tip. Adapters and Bindings dialog box is missing in the newest Windows 10/Windows Server 2016.

how to ping ipv4

Select your network connection and using the green button set the IPv4 protocol above IPv6. You should perform this operation for all available bindings.

ping returns ipv6

Comments
  1. Posted by the brain
    • Posted by Brian Jackson
      • Posted by Ronny Ong
      • Posted by AM
  2. Posted by Rod
  3. Posted by Pascal
  4. Posted by Darwin Jacob
  5. Posted by Sam Nguyen
  6. Posted by Steffen
  7. Posted by Paul Betances

Add Your Comment