Like the other potential server and client computer problems we've discussed in this chapter, problems with connectivity can revolve around software and hardware. In the case of software, many connectivity problems can be caused by incorrect LAN protocol configurations. For example, two computers inadvertently configured with the same IP address will knock each other off the network.
In terms of connectivity problems related to hardware, networking cables, hubs, network interface cards, and just about any other hardware devices that are important to the network communications can cause connective problems if they are malfunctioning. Although connectivity problems can be difficult to troubleshoot, there are tools you can use to troubleshoot network protocol and hardware issues. Let's take a look at each of these areas individually, starting with some of the tools that can be used to help diagnose network configuration problems. Then we can take a look at some of the devices used to diagnose hardware connectivity problems.
Checking Settings and Connections from the Command Line
Because IPX/SPX (and other LAN protocols such as NetBEUI or AppleTalk) pretty much configures itself as far as computer identification on the network goes, the protocol stack that seems to offer the most pitfalls as far as configuration goes is TCP/IP. Fortunately, there are commands that allow you to quickly check the configuration of a computer or check the connection between two hosts on the network. Let's take a look at these commands: ipconfig , ping , and traceroute .
Ipconfig is a command ( ipconfig ) that can be used on Windows NT, 2000, and XP clients or on any Windows server to quickly check the IP configuration. This is particularly useful when you are using automatic addressing of computers on the network using a DHCP server (DHCP is discussed in Chapter 12, "TCP/IP Network Administration") and want to make sure the client is receiving the appropriate IP settings from the DHCP server. Figure 19.10. shows the results of the ipconfig/all command issued on a Windows server.
Figure 19.10. Ipconfig can be used to view the current IP settings of a Windows server or client.
Ipconfig comes with a number of different switches that allow you to view more IP-related information or to release or renew the computer's current IP address provided by a DHCP server. In the Windows 9x environment, the command winipcfg is launched from the Run box (started by clicking Start, Run). It provides the same type of information that the ipconfig command does.
An excellent way to check the connection between two computers or other devices on an IP network is to use the ping command. Ping stands for Packet InterNet Groper and uses ICMP echo packets to test the connection. The command syntax is ping ip address , where ip address is the IP address of the target device.
You can also use the ping command using the FQDN name of a computer or other device on the network (DNS provides this capability because it resolves the friendly FQDN to the appropriate IP address). Figure 19.11 shows the ping command used to check the connection with a local computer on the network using the destination computer's IP address (10.0.1.1). Figure 19.11 also shows the results of the ping command when it is used to check the connection with a remote mail server. The remote server is designated by FQDN, which is converted to the appropriate IP address by a DNS server on the network.
Figure 19.11. Ping can be used to check the connection between any two computers or devices on an IP network, including the Internet.
Traceroute (or trace ; or on a Windows machine, tracert ) allows you to actually see the route that data packets take on the network. Traceroute is a tool used for checking data flow on larger networks (internetworks) that include routers; it is very useful in situations where you want to check and see whether a particular router has malfunctioned or whether other equipment is not working properly, causing certain routes to be down on the internetwork. Figure 19.12 shows the tracert command used on a Windows client to check the route to a remote host on the Internet.
Figure 19.12. Traceroute is used to determine the route that packets take from one network device to another.
In Figure 19.12, the ICMP packet that was sent to the remote host took 13 hops to reach its final destination (a hop is one router on the internetwork). If the traceroute command is used in the future to check the route to this same IP address, any change in the number of hops or the intermediary routers would show that something has happened on the network to affect the route that the packets have taken from source to destination device.
Although most of our discussion has been limited to commands used on PCs, both the ping and traceroute commands are often used on other network devices, such as routers, to check connections and the routing of packets between two devices. On a router (such as a Cisco router), the trace command is used to determine the route between two devices. It is commonly used to make sure that routers on the network are working and that the paths you assume are up and running are indeed functional. Figure 19.13 shows the traceroute command (on a Cisco router that command is abbreviated as "trace") being used to check the route between two routers on a network (Alice and sweetpea).
Figure 19.13. Traceroute is used to determine the route that packets take from one network device to another.
Basic Connectivity Troubleshooting Tools
Although commands such as ping and traceroute are very useful for checking network connectivity, there are devices available that can be used to check connectivity problems related to physical cabling. Physical cabling is always suspect when you are experiencing connectivity problems. Network cables can experience disconnections, breaks, shorts, and other problems. Diagnosing these types of problems is done using various tools, ranging from voltmeters to time domain reflectometers (TDRs).
A digital voltmeter is a simple device that can be connected to a cable to test the cable for a break or a short. Basically, the voltmeter can tell you whether the cable is bad or not and whether you are looking at a short or break. If the cable has a short, replace it. If there is a break, you must trace the cable (have fun crawling around in the drop-ceiling) to find where the break has occurred.
A time domain reflectometer (TDR) is a more sophisticated device that can diagnose shorts and breaks in a cable, but it can also provide you with information on where the short or break exists on the cable. The TDR actually emits short pulses down the cable and is able to use a timing mechanism that estimates the distance that the pulse has traveled.
As I've already mentioned, network cabling is always suspect when there is a network problem. For example, people moving furniture can disrupt cable connections, and a leaky roof can cause cabling in the ceiling to become soaked with water (sometimes leading to shorts)all sorts of weird things can happen to cables that can sever the connections they provide. Always check cables first.