17. TCPView
TCPView, shown in Figure 5,
monitors both incoming and outgoing connections, as well as listening
applications, in real time. You can use TCPView to identify exactly
which servers a client connects to, including the port numbers, or
identify the clients connecting to a server.
To download TCPView, visit http://technet.microsoft.com/en-us/sysinternals/bb897437.aspx.
You do not need to install TCPView; simply copy the executable file to a
folder that allows applications to be run (such as C:\Program Files\)
and then double-click Tcpview.exe. TCPView also includes Tcpvcon.exe, a
command-line tool that provides similar functionality.
18. Telnet Client
Although it is not primarily a troubleshooting tool, Telnet
Client is extremely useful for determining whether TCP-based network
services are reachable from a client. Most commonly used network
services are TCP based, including Web services, mail services, and file
transfer services. Telnet Client is not useful for troubleshooting
UDP-based network services such as DNS and many streaming media
communications.
Telnet Client is not
installed by default in Windows 7. To install it, run the following
command from a command prompt with administrative privileges.
start /w pkgmgr /iu:"TelnetClient"
Alternatively, you can install it by following these steps:
Click Start and then click Control Panel.
Click Turn Windows Features On Or Off.
In the Windows Features dialog box, select the Telnet Client check box. Click OK.
Telnet
Client is useful only for determining whether a service is reachable,
and it will not provide information that you can use for troubleshooting
name resolution, network performance, or network connectivity problems.
Use Telnet Client
only after you have used Ping to eliminate the possibility of name
resolution problems.
19. Testing Service Connectivity
After you have
identified the port number for the service, you can use Telnet Client to
test connectivity to that service. To test connectivity to a service,
open a command prompt and run the following command.
telnet destination portnumber
For example, to test HTTP connectivity to www.microsoft.com, type the following command at the command line.
telnet www.microsoft.com 80
The destination might be a host
name, computer name, or IP address. The response you receive will
indicate whether a connection was established. If you receive the
message "Could not open connection to the host," the host did not
respond to the request for a connection on the port number you
specified, and the service you are testing is unreachable.
If you receive any other
response, including all text disappearing from the command window, the
connection was successfully established. This eliminates the possibility
that the problem you are troubleshooting is caused by a connectivity
issue between the client and the server. Depending on the service you
are testing, Telnet Client can be automatically disconnected, or the
session might remain open. Either circumstance indicates a successful
connection. If the Telnet Client session remains open, you should
disconnect Telnet Client to close the connection.
To disconnect Telnet Client, follow these steps:
When the Microsoft Telnet> prompt appears, type quit.
20. Test TCP
With Test TCP, you can both initiate TCP connections and listen for TCP connections. You can also use the Test TCP tool
for UDP traffic. With Test TCP, you can configure a computer to listen
on a specific TCP or UDP port without having to install the application
or service on the computer. This allows you to test network connectivity
for specific traffic before the services are in place.
Test TCP (Ttcp.exe) is a tool
that you can use to listen for and send TCP segment data or UDP messages
between two nodes. Ttcp.exe is provided with Windows Server 2003 in the
Valueadd\Msft\Net\Tools folder of the Windows Server 2003 or Windows XP
Service Pack 2 (SP2) product CD-ROM.
Test TCP differs from Port Query in the following ways:
With Test TCP, you
can configure a computer to listen on a specific TCP or UDP port without
having to install the application or service on the computer. This
allows you to test network connectivity for specific traffic before the
services are in place. For example, you could use Test TCP to test for
domain replication traffic to a computer before you make the computer a
domain controller.
Test TCP also supports IPv6 traffic.
When you are using a TCP port, the following code shows the basic syntax for Ttcp.exe on the listening node (the receiver):
ttcp -r -pPort
When using a UDP port, use the following syntax.
ttcp -r -pPort -u
After starting Test TCP in receive mode, the tool
will wait indefinitely for a transmission before returning you to the
command prompt. The first time you use Test TCP to listen from a
computer running Windows 7, you might be prompted to create a Windows
Firewall exception. You must create the exception for Test TCP to work.
If you choose to unblock the application, Windows Firewall will allow
all traffic for that computer on the specified port in the future.
Therefore, you will not need to create a new exception for that network
type, even if you listen on a different port. In Windows Firewall, the
exception is named Protocol Independent Perf Test Command.
When you are using a TCP port, the following code shows the basic syntax for Ttcp.exe on the sending node (the transmitter):
ttcp -t -pPort hostname
When using a UDP port, use the following syntax.
ttcp -t -pPort -u hostname
If the two computers are able to communicate, the transmitting computer will display output such as the following.
ttcp-t: Win7 -> 192.168.1.132
ttcp-t: local 192.168.1.196 -> remote 192.168.1.132
ttcp-t: buflen=8192, nbuf=2048, align=16384/+0, port=81 tcp -> Win7
ttcp-t: done sending, nbuf = -1
ttcp-t: 16777216 bytes in 1423 real milliseconds = 11513 KB/sec
ttcp-t: 2048 I/O calls, msec/call = 0, calls/sec = 1439, bytes/call = 8192
Meanwhile, the receiving computer will display output similar to the following.
ttcp-r: local 192.168.1.132 <- remote 192.168.1.196
ttcp-r: buflen=8192, nbuf=2048, align=16384/+0, port=81 tcp
ttcp-r: 16777216 bytes in 1416 real milliseconds = 11570 KB/sec
ttcp-r: 3492 I/O calls, msec/call = 0, calls/sec = 2466, bytes/call = 4804
You can use Test TCP to
connect to any computer listening for incoming TCP connections, even if
that computer is not running Test TCP. However, to accurately test UDP
connectivity, Test TCP must be running on both the receiver and
transmitter. For example, to attempt a connection to www.microsoft.com on TCP port 80, you would run the following command.
ttcp -t -p80 www.microsoft.com
ttcp-t: local 192.168.1.196 -> remote 10.46.20.60
ttcp-t: buflen=8192, nbuf=2048, align=16384/+0, port=80 tcp -> www.microsoft.com
send(to) failed: 10053
ttcp-t: done sending, nbuf = 2037
ttcp-t: 81920 bytes in 16488 real milliseconds = 4 KB/sec
ttcp-t: 11 I/O calls, msec/call = 1498, calls/sec = 0, bytes/call = 7447
In this example, the TCP
connection was successful, even though the output includes the line
"send(to) failed." If the connection was unsuccessful, the output would
have included the phrase "connection refused." Alternatively, some
servers will simply not respond to invalid communications, which will
cause the Test TCP transmitter to pause indefinitely while it awaits a
response from the server. To cancel Test TCP, press Ctrl+C.
Each instance of Test TCP
can listen on or send to only a single port. However, you can run it in
multiple command prompts to listen or send on multiple ports. For
additional command-line options, type Ttcp at the command prompt.
21. Windows Network Diagnostics
Troubleshooting network
problems is complicated, especially for users. Many users discover
network problems when they attempt to visit a Web page with Internet
Explorer. If the Web page is not available, Internet Explorer returns
the message "Internet Explorer cannot display the webpage." The problem
could be any one of the following, however:
The user mistyped the address of the Web page.
The Web server is not available.
The user's Internet connection is not available.
The user's LAN is not available.
The user's network adapter is misconfigured.
The user's network adapter has failed.
The cause of the problem is
important for the user to understand. For example, if the Web server is
not available, the user does not need to take any action—the user should
simply wait for the Web server to become available. If the Internet
connection has failed, the user might need to call her Internet service
provider (ISP) to troubleshoot the problem. If the user's network
adapter has failed, she should attempt to reset it and contact her
computer manufacturer's technical support for additional assistance.
Windows
Network Diagnostics and the underlying Windows Troubleshooting Platform
assist users in diagnosing and, when possible, resolving network
connectivity issues. When Windows 7 detects network problems, it will
prompt the user to diagnose them. For example, Internet Explorer
displays a link to start Windows
Network Diagnostics if a Web server is unavailable, and the Network And
Sharing Center will display a diagnostic link if a network is
unavailable.
Applications might prompt users
to open Windows Network Diagnostics in response to connectivity
problems. To start Windows Network Diagnostics manually, open Network
And Sharing Center, click Troubleshoot Problems, and follow the prompts
that appear.