凹丫丫网络社区's Archiver

稻草人 发表于 2007-11-15 11:05

TCP/IP 故障排除工具

[b]TCP/IP 故障排除工具[/b]
下面的列表显示 Windows XP 附带的一些 TCP/IP 诊断工具。 基本工具[b]“帮助和支持”中的“网络诊断”[/b]
有关网络配置和自动测试结果的详细信息。

[b]“网络连接”文件夹[/b]
位于“控制面板”中[b]网络和 Internet 连接[/b]下。包含计算机上所有网络连接的信息和配置。

[b]IPConfig[/b]
显示当前 TCP/IP 网络配置值;更新或发布动态主机配置协议 (DHCP) 分配租约;显示、注册或刷新域名系统 (DNS) 名。

[b]Ping[/b]
发送 ICMP 回显请求消息以检查是否正确配置了 TCP/IP 以及 TCP/IP 主机是否可用。

高级工具[b]Hostname[/b]
显示计算机的主机名。

[b]Nbtstat[/b]
显示 TCP/IP 连接上当前 NetBIOS 的状态;更新 NetBIOS 名称缓存;显示注册的名称和 Scope ID。

[b]PathPing[/b]
显示 TCP/IP 主机路径并报告途经每个路由器上的数据包丢失。

[b]Route[/b]
显示 IP 路由表以及添加或删除 IP 路由。

[b]Tracert[/b]
显示到 TCP/IP 主机的路径。

若要查看以上每个工具的正确命令语法,请在命令提示符处工具名称之后键入 [b]-?[/b]。

常用操作系统工具除了特定于 TCP/IP 的工具之外,您还可以使用 Windows XP Professional 工具。

[b]事件查看器[/b]
记录系统错误和事件。

[b]计算机管理[/b]
允许对网络接口驱动程序和其他系统组件进行更改。 [url=http://support.microsoft.com/kb/314067/zh-cn#top][img]http://support.microsoft.com/library/images/support/en-us/uparrow.gif[/img][color=#003a7b]回到顶端[/color][/url]
故障排除过程用于解决 TCP/IP 问题的步骤取决于您使用的网络连接的类型以及所遇到的连接问题。

自动故障排除对于大多数涉及 Internet 连接的问题,请先使用“网络诊断”工具确定问题的原因。若要使用“网络诊断”,请执行以下步骤: [table][tr][td]1.[/td][td]单击[b]开始[/b],然后单击[b]帮助和支持[/b]。[/td][/tr][tr][td]2.[/td][td]单击[b]使用工具查看您的计算机信息并分析问题[/b]链接,然后单击左边列表中的[b]网络诊断[/b]。[/td][/tr][tr][td]3.[/td][td]当单击[b]扫描您的系统[/b]之后,“网络诊断”收集配置信息并执行网络连接自动故障排除。[/td][/tr][tr][td]4.[/td][td]此过程完成后,检查所有标有红色“失败”的项,展开这些类别,然后查看有关测试所显示内容的其他详细信息。[/td][/tr][/table]您可以使用该信息解决问题,或者将该信息提供给网络支持专家以获得帮助。如果将失败的测试与“手动故障排除”部分(本文稍后部分有所介绍)中的文档进行比较,则有可能确定问题的原因。若要解释 TCP/IP 的结果,请展开结果的“网络适配器”部分,然后展开测试失败的网络适配器。

您还可以使用以下命令直接启动“网络诊断”界面: netsh diag gui
手动故障排除[b]使用 IPConfig 工具检查配置[/b]
在解决 TCP/IP 网络问题时,请先检查出现问题的计算机上的 TCP/IP 配置。使用 [b]ipconfig[/b] 命令获取主机配置信息,其中包括 IP 地址、子网掩码和默认网关。

IPConfig 的 [b]/all[/b] 参数生成所有接口的详细配置报告,其中包括所有远程访问适配器。您可以将 IPConfig 输出重定向到一个文件,以将输出粘贴到其他文档中。为此,请键入: ipconfig > \folder_name\file_name
输出接收指定的文件名并存储在指定的文件夹中。

您可以检查 IPConfig 输出以确定存在于计算机网络配置中的问题。例如,如果手动配置计算机的 IP 地址与已检测到的现有 IP 地址重复,则子网掩码显示为 0.0.0.0。

如果返回的本地 IP 地址显示为 169.254.y.z,子网掩码为 255.255.0.0,则该 IP 地址是由 Windows XP Professional 的自动专用 IP 寻址 (APIPA) 功能分配的。这意味着该 TCP/IP 配置用于自动配置,未找到 DHCP 服务器,未指定备用配置。该配置没有用于接口的默认网关。

如果返回的本地 IP 地址显示为 0.0.0.0,则 DHCP 介质侦测功能替代生效,这是因为网络适配器检测到缺少网络连接或因为 TCP/IP 检测到 IP 地址与手动配置的 IP 地址重复。

[b]使用 Ping 工具测试连接性[/b]
如果未确定 TCP/IP 配置中的任何问题,则下一步是查看计算机是否可以连接到 TCP/IP 网络上的其他主机。

Ping 是用于验证 IP 级连接性的工具。[b]ping[/b] 命令向目标主机发送 ICMP 回显请求消息。在需要的时候使用 Ping 验证主机可以向目标主机发送 IP 数据包。您还可以使用 Ping 确定网络硬件问题和不兼容的配置。

请注意,如果您运行 [b]ipconfig /all[/b] 命令并显示了 IP 配置,则无需 ping 环回地址和您自己的 IP 地址。IPConfig 已执行这些任务来显示配置。当进行故障排除时,检查本地计算机和网络主机间是否存在路由,方法是先对要连接的网络主机的 IP 地址使用 Ping。该命令语法为: ping IP address
在使用 Ping 时执行以下步骤: [table][tr][td]1.[/td][td]Ping 环回地址以检查本地计算机上是否安装并正确配置了 TCP/IP。使用以下命令: ping 127.0.0.1
如果环回测试失败,则 IP 栈不响应。TCP 驱动程序损坏、网络适配器不工作或另一个服务正在干预 IP 都会导致不响应。[/td][/tr][tr][td]2.[/td][td]Ping 本地计算机的 IP 地址,验证它已正确添加到网络中。如果路由表正确,则此步骤会将数据包转发到环回地址 127.0.0.1。使用以下命令: ping IP address of local host
如果环回测试成功但无法 ping 本地 IP 地址,则可能是路由表或网络适配器驱动程序有问题。[/td][/tr][tr][td]3.[/td][td]Ping 默认网关的 IP 地址,验证默认网关可正常运行,并且可以与本地网络上的本地主机通讯。使用以下命令: ping IP address of default gateway
如果此步骤中 ping 不成功,则表明网络适配器本身、路由器/网关设备、线路或其他连接硬件存在问题。[/td][/tr][tr][td]4.[/td][td]Ping 一台远程主机的 IP 地址,验证您可通过路由器进行通讯。使用以下命令: ping [i]IP address of remote host[/i]
如果此步骤中 ping 不成功,则表明远程主机不响应或计算机间网络硬件存在问题。再次对另一台远程主机使用 Ping 以消除第一种可能性。[/td][/tr][tr][td]5.[/td][td]Ping 远程主机的主机名以验证您可以解析远程主机名。使用以下命令: ping Host name of remote host
Ping 使用名称解析将计算机名解析为 IP 地址。因此,如果通过 IP 地址 ping 成功但通过名称 ping 失败,则问题在于主机名称解析,而不是网络连接。检查以确保为计算机配置了 DNS 服务器地址,在 TCP/IP 属性中手动配置或自动分配皆可。如果在使用“ipconfig /all”后列出 DNS 服务器地址,则接着尝试 ping 服务器地址以确保它们是可访问的。[/td][/tr][/table]如果此时不能成功使用 Ping: [table][tr][td]?[/td][td]确保本地计算机的 IP 地址有效,并且该 IP 地址在[b]Internet 协议 (TCP/IP) 属性[/b]对话框的[b]常规[/b]选项卡上或当用于 Ipconfig 工具时是正确的。[/td][/tr][tr][td]?[/td][td]确保配置了默认网关并且主机和默认网关之间的链路正常工作。出于故障排除的目的,确保只配置一个默认网关。虽然您可以配置多个默认网关,但只有在 IP 栈确定原网关不工作时才使用第一个网关之外的其他网关。故障排除的目的是确定配置的第一个网关的状态,因此您可以删除所有其他网关来简化任务。[/td][/tr][tr][td]?[/td][td]确保当前未启用 IP 安全设置 (IPSec)。根据 IPSec 策略,Ping 数据包可能被阻塞或需要安全设置。有关 IPSec 的更多信息,请参见本文的“检查 IP 安全设置”。[/td][/tr][/table][b]重要说明:[/b] 如果您正在 ping 的远程系统跨高延迟链路(例如卫星链路),则响应时间会加长。您可以使用 [b]-w[/b](等待)参数指定比默认超时值(4 秒)更长的超时时间。

[b]使用 PathPing 工具验证路由[/b]
PathPing 是检测多跃点路径上数据包丢失的工具。对远程主机运行 PathPing 分析以验证通向目标沿途的路由器正常工作。使用以下命令: pathping IP address of remote host
[b]使用 Arp 工具清除 ARP 缓存[/b]
如果可以 ping 环回地址 (127.0.0.1) 和您自己的 IP 地址,但不能 ping 任何其他 IP 地址,则尝试清除地址解析协议 (ARP) 缓存。可以使用 Arp 工具执行此操作。使用 arp -a 或 arp -g 显示缓存条目。使用 arp -d[i]IP address[/i] 删除这些条目。若要刷新 ARP 缓存,请使用以下命令: netsh interface ip delete arpcache
[b]验证默认网关[/b]
网关地址必须和本地主机在同一个网络上,否则来自主机的消息将不能转发到本地网络外的任何位置。如果网关地址和本地主机在同一个网络上,则确保正确输入了默认网关地址。最后,确保默认网关是一个路由器,而不仅仅是一个主机,并且该路由器支持转发 IP 数据报。

[b]使用 Tracert 工具或 Route 工具检查通讯[/b]
如果默认网关正确响应,则 ping 远程主机以确保网络间的通讯按预期方式正常工作。如果通讯未能按预期方式正常工作,则使用 Tracert 工具跟踪到目标的路径。如果 IP 路由器是运行 Microsoft Windows 2000 或 Microsoft Windows NT 的计算机,则使用 Route 工具或这些计算机上的“路由和远程访问”管理单元检查 IP 路由表。如果 IP 路由器不是运行 Windows XP Professional、Windows 2000 或 Windows NT 的计算机,则使用供应商指定的适当工具或设备检查 IP 路由表。

在故障排除过程中,Ping 通常会返回以下四条错误消息: TTL Expired in Transit
此错误消息表示所需跃点的数目超过了“生存时间”(TTL)。通过使用 [b]ping-i[/b] 参数增加 TTL。可能存在路由循环。使用 [b]tracert[/b] 命令检查是否是配置有问题的路由器导致了路由循环。 Destination Host Unreachable
此错误消息表示在发送主机或路由器上不存在目标主机的本地或远程路由。对本地主机或路由器的路由表进行故障排除。 Request Timed Out
此错误消息表示在指定的超时时间(默认值是 4 秒)内未收到回显答复消息。使用 [b]ping -w[/b] 命令增加超时值。 Ping request could not find host
此错误消息表示无法解析目标主机名。验证 DNS 或 WINS 服务器的名称和可用性。[b]检查 IP 安全设置[/b]
虽然使用 IPSec 可以提高网络的安全性,但使用 IPSec 同时也会使更改网络配置或解决问题更加困难。在某些情况下,在基于 Windows XP Professional 的计算机上 IPSec 策略要求安全通讯,该要求使连接到远程主机变得困难。如果 IPSec 是在本地实现的,则可以关闭“服务”管理单元中的“IPSEC 服务”。

如果在停止 IPSec 服务后问题消失,则原因是 IPSec 策略阻塞了必要的通讯或者它需要安全设置才能进行所需的通讯。要求安全管理员修改 IPSec 策略。

[b]检查数据包筛选[/b]
数据包筛选中的错误会导致地址解析或连接无法正常进行。若要查出数据包筛选是否是网络问题的原因,请关闭 TCP/IP 数据包筛选。请按照下列步骤操作: [table][tr][td]1.[/td][td]在“控制面板”中,单击[b]网络和 Internet 连接[/b],然后单击[b]网络连接[/b]。[/td][/tr][tr][td]2.[/td][td]右键单击要修改的本地连接,然后单击[b]属性[/b]。[/td][/tr][tr][td]3.[/td][td]在[b]常规[/b]选项卡上,在[b]此连接使用下列项目[/b]列表中,单击 [b]Internet 协议 (TCP/IP)[/b],然后单击[b]属性[/b]。[/td][/tr][tr][td]4.[/td][td]单击[b]高级[/b],然后单击[b]选项[/b]选项卡。[/td][/tr][tr][td]5.[/td][td]在[b]可选的设置[/b]对话框中,单击 [b]TCP/IP 筛选[/b],然后单击[b]属性[/b]选项卡。[/td][/tr][tr][td]6.[/td][td]单击以清除[b]启用 TCP/IP 筛选(所有适配器)[/b]复选框,然后单击“确定”。[/td][/tr][/table]尝试通过使用其 DNS 名称、其 NetBIOS 计算机名或其 IP 地址 ping 某个地址。如果 ping 成功,则数据包筛选选项可能配置错误,或者这些选项限制过严。例如,筛选可能允许计算机充当 Web 服务器,但在此过程中筛选可能关闭某些工具(例如远程管理)。您可以恢复多个非限制性的筛选选项,方法是更改 TCP 端口、UDP 端口和 IP 协议的允许值。

[b]检查连接到特定服务器的故障[/b]
若要确定尝试通过基于 NetBIOS 的连接连接到特定服务器时所出现连接问题的原因,请在服务器上使用 [b]nbtstat -n[/b] 命令确定该服务器在网络上注册的名称。

[b]nbtstat -n output[/b] 命令列出该计算机注册的多个名称。应该有一个名称类似于在“控制面板”中[b]系统[/b]下[b]计算机名[/b]选项卡上配置的计算机名称。如果没有,尝试使用 Nbtstat 显示的其他唯一名称之一。

Nbtstat 工具还可以显示 Lmhosts 文件的 #PRE 条目或最近解析的名称中远程计算机的缓存条目。如果远程计算机用于服务器的名称相同并且其他计算机在远程子网上,则确保其他计算机在其 Lmhosts 文件或 WINS 服务器中具有计算机名到地址的映射。

[b]确定远程连接停止响应(挂起)的原因[/b]
若要确定到远程计算机的 TCP/IP 连接未能正常工作的原因,请使用 [b]netstat -a[/b] 命令显示本地计算机上 TCP 和 UDP 端口所有活动的状态。

正常的 TCP 连接通常显示发送和接收队列中为 0 字节。如果数据在任何一个队列中阻塞或队列的状态出现异常,那么连接便可能出现故障。如果数据未阻塞并且队列的状态正常,则可能是遇到了网络或程序延迟。

[b]使用 Route 工具检查路由表[/b]
若要让两个主机交换 IP 数据报,则两个主机必须都具有到对方的路由或者必须使用了解路由的默认网关。您可以在命令提示符处键入以下内容检查基于 Windows XP 的主机上的路由表: route print
[b]使用 Tracert 工具检查路径[/b]
Tracert 是一个路由跟踪工具,它通过在 IP 包头 TTL 字段中使用不断增大的值发送 ICMP 回显请求消息来确定网络中从一台主机到另一台主机的路径。然后,Tracert 分析返回的 ICMP 消息。Tracert 允许您跟踪从路由器到路由器的路径,最高可达 30 个跃点。如果某个路由器出现故障或数据包进入循环,Tracert 可以发现该问题。在找到出现问题的路由器之后,您可以与路由器管理员联系(如果该路由器不在现场)或者将路由器恢复为完全正常的状态(如果该路由器在您的控制之下)。

[b]网关故障排除[/b]
如果在配置过程中接收到以下消息,则检查默认网关是否和计算机的网络适配器在同一个逻辑网络上: Your default gateway does not belong to one of the configured interfaces
将默认网关 IP 地址的网络 ID 部分与计算机网络适配器的网络 ID 进行比较。具体说来,检查 IP 地址和子网掩码的位逻辑 [b]AND[/b] 是否等于默认网关和子网掩码的位逻辑 [b]AND[/b]。

例如,某台计算机只有一个网络适配器,其 IP 地址配置为 172.16.27.139,子网掩码配置为 255.255.0.0,该计算机需要 172.16.y.z 形式的默认网关。此 IP 接口的网络 ID 为 172.16.0.0。

[b]查找其他资源[/b]
以下资源包含有关解决 Microsoft TCP/IP 问题的其他信息:

Microsoft Windows XP Professional Resource Kit 文档中的“配置 TCP/IP”主题。

Microsoft Windows 2000 Server Resource Kit 中 [i]TCP/IP 核心联网指南[/i] 中的“TCP/IP 介绍”提供有关 TCP/IP 协议套件的一般信息。

Microsoft Windows 2000 Server Resource Kit 中[i]网络互联指南[/i] 中的“单路广播路由概述”提供有关路由原则的更多信息。

Microsoft Windows 2000 Server Resource Kit 的 [i]TCP/IP 核心联网指南[/i] 中的“TCP/IP 故障排除”提供有关 IP 数据包筛选的更多信息。

小呆瓜 发表于 2007-11-23 13:51

TCP/IP 故障排除工具

学习了~~谢谢分享

页: [1]

Powered by Discuz! Archiver 7.0.0  © 2001-2009 Comsenz Inc.