Windows 7 / Networking

Troubleshooting IPv6 Connectivity

The standard approach for troubleshooting TCP/IP network connectivity issues on IPv4 networks is to follow these steps:

  1. Type ipconfig /all at a command prompt to verify the IPv4 configuration of the computer that is experiencing the problem.
  2. If verifying the computer's IPv4 configuration doesn't resolve the issue, try using the ping command to test for network connectivity, beginning with the local computer and working outward until the cause of the problem is determined. Specifically, follow these steps in the order listed:
    a. Ping the IPv4 loopback address 127.0.0.1 to verify that TCP/IP is installed and configured properly on the computer.
    b. Ping the IPv4 address of the local computer.
    c. Ping the IPv4 address of the default gateway.
    d. Ping the IPv4 address of an IPv4 host on a remote subnet.
    Other TCP/IP troubleshooting steps you can use on IPv4 networks include:

    • Use the route print command to verify the configuration of the local computer's routing table.
    • Use tracert to verify that intermediate routers are configured properly.
    • Use the pathping command to identify packet loss over multihop paths.
    • Clear the ARP cache by typing netsh interface ip delete arpcache at a command prompt.
    • Verify the computer's DNS configuration, clear the DNS client resolver cache, and verify DNS name resolution.

Troubleshooting IPv6 network connectivity issues requires many of the same tools you use when troubleshooting IPv4. However, you use some of these tools in a different way because of the nature of IPv6 addressing and the way IPv6 is implemented in Windows 7 and Windows Vista. The differences include:

  • You might need to specify a zone ID when attempting to verify IPv6 network connectivity with a target host using the ping command. The syntax for using ping with IPv6 is ping IPv6Address%ZoneID, where ZoneID is the zone ID (or scope ID) of the sending interface. For example, if the target host has the link-local unicast IPv6 address FE80::D3:00FF:FE28:9C5A and the sending interface has a zone ID of 12, to verify IPv6 connectivity with this host, you type ping FE80::D3:00FF:FE28:9C5A%12 at a command prompt. To determine the zone ID for an interface, you can either use the ipconfig /all command or type netsh interface ipv6 show interface at a command prompt. Note that because the zone ID is locally defined, a sending host and a receiving host on the same link may have different zone IDs. (Global and unique local unicast IPv6 addresses do not need a zone ID.)
  • You should view and clear the neighbor cache on your computer before attempting to use ping to verify IPv6 network connectivity. The neighbor cache contains recently resolved link-layer IPv6 addresses; you can view it by typing netsh interface ipv6 show neighbors and flush it by typing netsh interface ipv6 delete neighbors at an elevated command prompt.
  • You should also view and clear the destination cache on your computer before attempting to verify IPv6 network connectivity using ping. The destination cache contains next-hop IPv6 addresses for destinations. You can view the cache by typing netsh interface ipv6 show destinationcache; you can flush it by typing netsh interface ipv6 delete destinationcache at an elevated command prompt.
  • You should use the -d option when attempting to trace the route to a remote IPv6 host using tracert or the -n option when using pathping. These options prevent these commands from performing DNS reverse queries on every near-side router interface along the routing path. Using these options can help speed up the display of the routing path.

Note Disabling IPv4 can also be a useful troubleshooting technique for developers who need to verify that their applications are IPv6-capable.

[Previous] [Contents] [Next]

In this tutorial:

  1. Deploying IPv6
  2. Understanding IPv6
  3. Understanding IPv6 Terminology
  4. Understanding IPv6 Addressing
  5. Understanding IPv6 Prefixes
  6. Understanding IPv6 Address Types
  7. Understanding Unicast Addresses
  8. Identifying IPv6 Address Types
  9. Understanding Interface Identifiers
  10. Comparing IPv6 with IPv4
  11. Understanding IPv6 Routing
  12. How IPv6 Routing Works
  13. IPv6 Route Determination Process
  14. IPv6 Routing Table Structure
  15. Understanding ICMPv6 Messages
  16. Understanding Neighbor Discovery
  17. Understanding Address Autoconfiguration
  18. Understanding Name Resolution
  19. Understanding Name Queries
  20. Understanding Name Registration
  21. PTR Records and IPv6
  22. IPv6 Enhancements in Windows 7
  23. Summary of IPv6 Enhancements in Windows 7
  24. Configuring and Troubleshooting IPv6 in Windows 7
  25. Configuring IPv6 in Windows 7 Using the User Interface
  26. Configuring IPv6 in Windows 7 Using Netsh
  27. Other IPv6 Configuration Tasks
  28. Enabling or Disabling IPv6
  29. Disabling Random Interface IDs
  30. Resetting IPv6 Configuration
  31. Displaying Teredo Client Status
  32. Troubleshooting IPv6 Connectivity
  33. Planning for IPv6 Migration
  34. Blocking Teredo
  35. Understanding ISATAP
  36. Migrating an Intranet to IPv6
  37. Step 1: Upgrading Your Applications and Services
  38. Step 2: Preparing Your DNS Infrastructure
  39. Step 3: Upgrading Your Hosts
  40. Step 4: Migrating from IPv4-only to ISATAP
  41. Step 5: Upgrading Your Routing Infrastructure
  42. Step 6: Upgrading Your DHCP Infrastructure
  43. Step 7: Migrating from ISATAP to Native IPv6
  44. The Advantages of IPv6
  45. Address Resolution in IPv6