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 a 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
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
As you can see, 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 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
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:
Everything works as it should be.
You can also change 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 a newest Windows 10/Windows Server 2016.
Select your network connection and using green button set the IPv4 protocol above IPv6. You should perform this operation for all available bindings.