
|
Troubleshooting
The following set of notes corresponds to the Troubleshooting module of the Internet
Design course, providing students an outline of the information they are expected to
understand. The corresponding reading for this module is chapter ten of i-Net+ Study
Guide by David Groth, et. al., pages 456-501.
Pre-Testing Web Site
- Before a web site is made public, it should be tested in a private space to
assure that everything works.
- Private testing may be done on a non-public portion of the regular web server. This
option allows the developer to incorporate and test server functions (such
as server-side scripting, CGI, and stylesheets), as well as make the site
available to others for critique before going public.
- A staging server, or separate web server for privately testing a web site,
may be used if site testing would conflict with the active site if done
on a private portion of the active web server.
- When moving tested files from the private testing area to the public server, be certain
to maintain the integrety of all links.
- Storyboards aid in site development and testing by recording how each
page on the site should look and connect to other pages within the site.
A tester can then use the storyboard to compare the actual site to the
intended plan.
- Test all links on every page of a site to make sure they function correctly.
Software is available to run these tests automatically and return a list
of all broken links.
- Before making a website public, be certain to test it in a variety of browsers.
Since browsers are notorious for not supporting the same standards, a site
that works well in one browser may be un-readable in another. Some minor
code changes can often correct some of these problems.
- If a page uses CGI scripts or forms, test it by entering valid information, and then
test with a wide variety of invalid information (blank entries, overly long
entries, garbage text, and so forth) to assure the script handles errors well.
- Load testing software can help test how well equipped a server is to handle a large
volume of traffic to a web site.
- If the expected volume of traffic on a server is more than the server can handle, a
mirror site would be helpful. A mirror site is a separate web server that
holds the same web site files as the original. Mirror sites may be used to
ease the load on a main server, or to speed transactions by providing geographically
closer access to the files.
Troubleshooting
- In determining and solving a problem, it helps to follow a procedure such as the following:
- Identify the exact issue.
- Re-create the problem.
- Isolate the cause
- Formulate a correction
- Try the corrective measure
- Test the solution
- Document the problem and its solution
- Give feedback
- If a user complains about a problem, attempting to recreate the problem can help
determine if it was a random and isolated incident, a true problem, or
simply a user error.
- Asking specific questions can help isolate the cause of a problem. If a user is
having troubles, determine if they were ever able to perform the procedure, if
so what has happened since they were last able to do it, and if the problem
is effecting other users as well. Questions along these lines can help to
isolate the cause of an error.
- After a problem has been isolated, determine and write down possible fixes. If possible,
rank the fixes in the order of their likelihood of success and try the most
likely candidate first. Be sure to keep track of what fixes you have tried
and how each attempt turned out, including the fix that actually worked.
- If a browser encounters a file it is unable to process, it will give an error message.
- Error messages such as No DNS Entry, Connection Reset by Peer,
Server Not Responding, and File Contains No Data indicate a problem
communicating with the server. These may be indications of high network
traffic, mistyped address, or a more serious problem.
- HTTP response codes come in four basic varieties to help diagnose the source of a problem:
- 2nn -- A successful transmission.
- 3nn -- The file has been moved.
- 4nn -- An error on the client's part.
- 5nn -- An error on the server's part
- If a site is not accessible to anyone, then there is a problem with the connection
to the web server.
- If the site is inaccessible by a group of people, but accessible
by others, then there may be a problem with their Internet connection, even if
they are able to access other sites. It is possible they have been disconnected
from a portion of the Internet.
- If a user cannot access anything on the Internet, then the problem is with his connection
only.
- Web servers use file permission settings to limit user access. These file permissions
determine whether a "general" user is permitted to read, write, or execute a file. If
the permissions are set improperly, they may render portions of the website
inaccessible.
- Log files keep track of all of a server's transactions. These log files can be quite
useful in identifying the source of a problem.
Network Utilities
- ARP (Address Resolution Protocol) resolves IP address with hardware (MAC) addresses.
The ARP utility displays a table showing which IP addresses correspond to which
MAC addresses. This information is very useful for determining if more than one
host has been assigned the same address, thus causing conflict.
- netstat displays the statistics on all TCP/IP transmissions currently
running on your machine.
- The Ping utility simply sends a test message to a given IP address to
see if the addressed host is connected and responding.
- winipcfg and ipconfig are TCP/IP configuration utilities that allow
a user to see his IP address configuration and make basic changes.
- The tracert (trace route) utility actually traces the path taken by a packet
to reach its destination. The utility reveals the IP address of every device
it passes through and the time it took to be sent on to the next device.
- Network analyzers are software tools that allow a user to monitor and
manipulate the traffic on a local network.
Viruses
- Viruses are malicious programs that cause damage on a computer system
and then spread to other systems.
- A virus in the wild is on that is currently spreading around a network
or the Internet.
- Viruses come in two main types: macro viruses, which are typically limited
to specific applications, and boot sector viruses, which rewrite
the boot sector on a hard drive making it appear as if the hard drive
itself has been erased.
- Antivirus programs use definition files to identify known viruses and an engine
to scan files, compare them with the known viruses, and clean the files
as necessary.
- Virus definitions should be updated at least monthly.
- Anti-virus scans may be either on-demand, meaning they are run only when
the user specifically requests them (which may mean as part of an automatic
maintenance schedule), or on-access, meaning the virus scan is run whenever
a file is accessed.
Restricted access |