NAT Troubleshooting Techniques for Developers and End Users
This topic contains techniques to help developers and end users who are trying to troubleshoot Network Address Translation (NAT) problems.
- Verify simple connectivity by attempting to access the World Wide Web.
- Use the Ping system utility to verify that packets can be sent to and from the computer's Internet Protocol (IP) gateway. Also use Ping to test the host or player that cannot join. Note that some firewalls might disallow the Internet Control Message Protocol echo packets used by Ping even though the two computers can communicate.
- Third-party NAT device owners should download and install the latest firmware revision available from the manufacturer.
- Microsoft?Windows?XP Internet Connection Sharing users should ensure that the Allow other network users to control or disable the shared Internet connection box in the shared connection's properties Advanced tab is set.
- Running a CPU-intensive application such as a game on the Windows Internet Connection Sharing computer can impact NAT performance. Clients behind the Internet Connection Sharing computer might experience higher latency and packet loss when the computer is heavily loaded.
- Many NAT devices have a Demilitarized Zone option that forwards all packets to a particular computer. This can be used to ensure connectivity for that computer if all other traversal mechanisms fail.
- When the IDirectPlay8Peer::Connect method completes with the DPNERR_PLAYERNOTREACHABLE error code, this means that the host was contacted, but one or more peers already in the session could not communicate with the joining player. Having the players join the session in a different order can prevent this, but it might mean some of the players are behind NAT devices that are not compatible.