|
Page 1 of 4 In this Internet-connected world it is an essential skill to know how to troubleshoot network problems. High-quality software suites exist to do the job but can easily cost in excess of tens of thousands of dollars. With a handful of absolutely free open source tools you can do it yourself – on any computer anywhere in the world.
Sound thinking says you should use the best tool for the job, and the best tool may well be a commercial solution. Yet, open source lets you "trial" an app, without restriction and without any time limit. If it doesn't work for you, you haven't spent a cent. Additionally, you can use open source utilities and give them up if something better comes along. Often, spending money on a bad product makes you feel emotionally compelled to keep using that product simply because of the financial investment you made.
And, something that money can't buy is a third very good reason to learn open source apps: they can be used anywhere, on any machine. If you have to resolve a problem on your brother's ancient clunking computer, you are assured ping will always be there. If you are stuck in a remote office without your laptop you can always download tcpdump. So long as you have access to a working web browser, unrestricted utilities are always at hand.
What's great is most all of these come bundled with your favourite Linux distro. But even if you're still stuck in the Windows world, you'll find the majority can still be downloaded and used making them even more versatile and worthwhile. Or, even better, make yourself a Live Linux CD or USB stick and boot it up on any system to perform all your faultfinding in a known, secure environment.
The five tools we'll cover here are ping, traceroute, netstat, tcpdump and MRTG.
ping
The first point of call is a program so ubiquitous, so fundamental, it almost doesn't even need mentioning. This is "ping", named after the sound of a submarine radar, and its role is to send a low-level Internet Protocol (the "IP" in TCP/IP) message to a remote computer and report on the response.
The simplest use of ping is to tell you if a computer is reachable. If you ping a host and get a reply then this tells you valuable information: the machine is up; the machine is connected to the network; your machine is connected to the network; there's a path between both machines. That's a lot of info for one simple command!
If you don't get a reply then that computer can't be reached. It may be down. It may not be connected to the network. Hardware or cabling connecting it and your computer may be faulty. Your computer may be off the network.
This gives you a starting point to investigate further. Can your computer browse the web? If so, then you're online. If not, maybe the problem is local.
There's more to ping than this. A useful flag will cause ping to keep sending packets and reporting on the reply. In Linux, this is the default behaviour. Under Sun's Solaris you use the "-s" flag. Under Windows you use the "-t" flag. This variation of ping lets you observe how the network health varies as you perform various tasks. For instance, you might unplug a cable, turn on a router, request a new DHCP-assigned IP address or more. As you do each of these, keep an eye on the recurring ping results to see how the path between your computer and the remote computer is influenced.
Additionally, you might have just rebooted a remote computer. How do you know when you can connect to it again, whether via telnet, ssh, RDP? You can attempt periodic connections to test your luck, or you could set ping off while attending to other things. The output from ping will show no responses coming back while the remote system is down, changing as the machine boots back up.
There's still more to ping: the response also tells the time it took for the round-trip message. This can help identify where network performance is suffering by comparing ping results to those for other systems. Another option changes the size of the data packet sent from the default of 64 bytes. Most networks have a "maximum transmission unit" (MTU) of 1,500 bytes. Setting the ping packet size to something approaching that limit helps ensure your network can handle data of that size. It's possible a failing network will cope fine with lightweight amounts of data but may choke on larger volumes - like transferring files or routing e-mail.
<< Start < Prev 1 2 3 4 Next > End >> |