12常见网络故障诊断与排除

更新时间:2024-05-17 20:31:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

12常见网络故障诊断与排除

? 掌握应用PING,IPCONFIG,ARP,TRACERT,ROUTE命令诊断和排除网络故障的方法 ? 掌握使用NBTSTAT,NETSTAT,PATHPING命令查看网络统计和路径信息的方法 ? 掌握根据网络故障现象使用相应命令检测并解除故障的操作 ? 掌握常用网络管理工具软件的使用

计算机网络管理人员在管理计算机网络的过程当中,碰到网络发生故障在所难免,及时地针对故障进行诊断与排除,能够避免不必要的损失,确保网络的正常运行。在微软的Windows系统中,自带了一些网络管理的工具,计算机网络管理人员可以借助这些工具,快速、有效地找出故障并且排除故障,使网络畅通无阻。

12.1 用ping命令测试网络连通性与故障排除

ping命令有助于验证网络层的连通性。管理员在进行故障排除时,可以使用ping命令向目标计算机名或 IP 地址发送 ICMP 回显请求,目标计算机会返回回显应答,如果目标计算机不能返回回显应答,说明在源计算机和目标计算机之间网络通路上存在问题,需进一步检查解决。

ping是Windows操作系统中集成的一个TCP/IP协议探测工具,它只能在有TCP/IP协议的网络中使用。

ping命令的格式:ping [参数1][参数2][??] 目的地址

如果不知道ping命令有哪些参数的话,只要在命令提示符中键入ping命令,就能得到详细的ping参数,如图12-1所示。

图12-1 ping参数

12.1.1 连通性测试

通常用 ping 命令测试时,首先测试本机TCP/IP配置是否正确,然后再测试本机与默认网关的连通性,最后测试本机与远程计算机的连通性。下面是故障检测和故障排除的基本步骤。(假如本地网段为192.168.1.0/24,默认网关为192.168.1.254)

(1)用ping命令测试环回地址

验证在本地计算机上的 TCP/IP配置是否正确,如果测试结果不通,应检查本台计算机的TCP/IP协议是否安装,Windows系列操作系统默认情况下是已经安装,一般情况下,测试环回地址都能通过,如果不能测试成功,则需重新安装TCP/IP协议,然后再进行测试。测试命令如下:

例如:C:\\>ping 127.0.0.1 (127.0.0.1为环回地址),测试结果见图12-2。

图12-2 用ping命令测试环回地址的测试结果 (2)用ping命令测试本地计算机的IP地址

用ping命令测试本地计算机的IP地址,可以测试出本地计算机的网卡驱动是否正确,IP地址设置是否正确,本地连接是否被关闭。如果能正常ping通,说明本地计算机网络设置没有问题,如果不能正常ping通,则要检查本地计算机的网卡驱动是否正确,IP地址设置是否正确,本地连接是否被关闭,以上几点一一排查,直到能正常ping通本地计算机的IP地址。下面是具体的例子,该例子中假如本地计算机的IP地址是192.168.1.2。

例如:C:\\>ping 192.168.1.2 ,测试结果见图12-3。

图12-3 用ping命令测试本地计算机的IP地址的测试结果

(3)用ping测试默认网关

用ping测试默认网关的IP地址,可以验证默认网关是否运行以及默认网关能否与本地网络上的计算机通信。如果能正常ping通,说明默认网关正常运行,本地网络的物理连接正常。如果不能正常ping通,则要检查默认网关是否正常运行,本地网络的物理连接是否正常,需要分别检查,直到能正常ping通默认网关。用ping测试默认网关的IP地址在ping命令后面直接跟默认网关的IP地址就可以了,下面的例子中假如默认网关的IP地址是192.168.128.254,具体命令如下。

例如:C:\\>ping 192.168.128.254,测试结果见图12-4。

图12-4 用ping测试默认网关的测试结果

(4)用ping命令测试远程计算机的IP 地址

用ping命令测试远程计算机的IP 地址可以验证本地网络中的计算机能否通过路由器与远程计算机正常通信。如果能正常ping通,说明默认网关(路由器)正常路由。假如远程计算机的IP 地址是192.168.100.100,可以用如下的命令实现。

例如:C:\\>ping 192.168.100.100,测试结果见图12-5。

图12-5 用ping命令测试远程计算机的IP 地址的测试结果

通过以上4个步骤的检测和修复,本地局域网内部和路由器的存在的问题就可以解决了,本地局域网内部计算机就可以正常与其他网络中的计算机通信了。

12.1.2 ping命令的其他应用

ping命令除了以上的应用外,还有很多其他应用,下面是在网络诊断过程中经常用到的几个典型应用。 (1)用ping命令测试计算机名与IP地址解析

用ping命令测试计算机名与IP地址解析可以测试网络中的DNS服务器工作是否正常。如果工作正常,应能正确解析,如果工作不正常则不能正常解析,需要网络管理员对DNS服务器进行维护。用ping命令测试计算机名与IP地址解析直接用ping命令,后面跟上计算机名称即可,假如192.168.128.205主机的名称是20030217-2032,按照下面的命令格式测试。

例如:C:\\>ping 20030217-2032,测试结果见图12-6。

图12-6 用ping命令测试计算机名与IP地址解析的测试结果

(2)用ping命令测试网络对数据包的处理能力

在默认情况下,Windows都只发送4个数据包,通过ping命令可以自己定义发送的个数,对衡量网络速度很有帮助,比如想测试发送50个数据包的返回的平均时间为多少,最快时间为多少,最慢时间为多少,可以用ping命令的“-n”参数实现,另外还可以指定发送数据包的大小,用ping命令的“-l”参数实现,两个参数可以联合使用测试网络对数据包处理能力,假如要发送 50个回响请求消息来验证目的地 192.168.128.204,且每个消息的“数据”字段长度为 1000 字节,可以用如下命令:

例如:C:\\>ping -n 50 -l 192.168.128.204,测试结果见图12-7。

图12-7 用ping命令测试网络对数据包的处理能力的测试结果1

另外还可以用ping命令的“-t”参数,该命令将一直执行下去,只有用户按下“Control-C”键中断才能停止,根据命令执行的结果可以查看网络对数据包处理能力(例如丢包率,响应时间等),测试结果见图 12-8。

图 12-8 用ping命令测试网络对数据包的处理能力的测试结果2

(3)用ping命令探测IP数据包经过的路径

为了清楚网络结构,了解数据包经过的路径,帮助排除网络故障,可以通过ping命令的“-r”参数探测IP数据包经过的路径,此参数可以设定探测经过路由的个数,不过最多只能9个,也就是说只能跟踪到路径上9个路由器。下面例子是验证目的计算机192.168.100.100并记录路径上4个路由器的命令:

例如:C:\\>ping -r 4 192.168.100.100测试结果见图 12-9。

图12-9用ping命令探测IP数据包经过的路径的测试结果

(4)用ping命令判断目的计算机操作系统类型

有时为了清楚目的计算机操作系统类型,便于远程维护,可以通过ping命令返回的TTL值大小,粗略判断目的计算机的操作系统是Windows系列还是UNIX/Linux系列。一般情况下Windows系列的操作系统返回的TTL值在100~130之间,而UNIX/Linux系列的操作系统返回的TTL值在240~255之间,当然TTL的值在对方的主机里是可以修改的,测试结果见图 12-10。

图 12-10用ping命令判断目的计算机操作系统类型的测试结果

12.2 ipconfig命令的应用

对网络进行故障排除时,通常要检查出现问题的计算机上的TCP/IP配置。管理员可以使用 ipconfig 命令获得计算机的配置信息,这些信息包括 IP 地址、子网掩码和默认网关以及网络接口(网卡)的MAC地址等,可以根据这些信息来判断网络连接出现了何种问题,另外还可以直接通过ipconfig 命令解决网络故障问题。下面是用ipconfig命令解决网络问题的典型例子。

12.2.1 用ipconfig命令查看计算机上的TCP/IP 配置信息

使用带 /all 选项的 ipconfig 命令可以查看所有网络接口(网卡)的详细配置报告,可以根据该命令的输出结果,进一步调查 TCP/IP 网络问题。例如,如果计算机配置的 IP 地址与现有的 IP 地址重复,则子网掩码显示为 0.0.0.0等问题。

下面是在运行Windows XP Professional的计算机上使用ipconfig /all的命令输出该计算机的TCP/IP配置信息的例子,结果见图12-11:

图12-11 计算机的TCP/IP配置信息

12.2.2 用ipconfig命令刷新TCP/IP配置信息

1.使用 ipconfig命令释放配置信息

如果计算机是通过DHCP服务器动态获取IP地址及其他网络设置时,ipconfig命令的“/release”参数能取消正在使用的IP并删除所有网络设置,如图12-12

图12-12使用 ipconfig命令释放配置信息

2.使用 ipconfig命令刷新配置 在对网络进行故障排除时,管理员如果发现问题是出在计算机上的TCP/IP配置方面,而用户的计算机是从网络中DHCP服务器获得的配置的,这时需要使用ipconfig命令的“/renew”参数更新现有配置或者获得新配置来解决问题,如图12-13

图12-13使用 ipconfig 命令刷新配置

12.2.3 用ipconfig命令修复TCP/IP的配置信息

TCP/IP配置参数出错,导致用户不能正常使用网络,修复TCP/IP配置参数是排除这一网络故障常用的一种方法,可以用ipconfig命令的“/repair”参数修复当前计算机的TCP/IP配置参数。ipconfig命令的“/repair”参数功能非常强大,执行可修复连接的一系列命令。表12-1中列出了ipconfig命令的“/repair”参数调用的命令与其对应的命令行。

表12-1 Repair参数调用的命令与其对应的命令行 修复项目(命令?) 对应的其他命令行工具 检查是否启用了 DHCP,如果已启用,则签发广无对应的命令行工具 播更新来刷新 IP 地址。 刷新 ARP 缓存 刷新 NetBIOS 缓存 刷新 DNS 缓存 重新注册 WINS 重新注册 DNS arp -d * nbtstat -R ipconfig /flushdns nbtstat -RR ipconfig /registerdns 特 别 提 示 ipconfig命令的“/repair”参数使用广播更新,计算机将接受来自网络上任何 DHCP 服务器的任何租约。相比之下,ipconfig命令的“/renew”参数将仅更新客户端已经从中获得一份租约的最后一个 DHCP 服务器的现有租约。 12.2.4 用ipconfig命令刷新DNS缓存,解决域名解析故障

用户在使用网络过程中有时会发现个别网站不能正常访问,这可能是DNS客户端解析程序缓存内容不正确,可以用ipconfig命令的“/flushdns”参数刷新和重置 DNS 客户端解析程序缓存内容,该命令可以从缓存中丢弃缓存项和其他动态添加项(该命令不删除从本地hosts文档中预加载的项目),运行结果如图12-14

图12-14用ipconfig命令刷新DNS缓存,解决域名解析故障

12.2.5 用ipconfig命令启用DNS名称动态注册解决域名解析故障

在网络使用过程中,有时出现DNS名称(域名)注册错误,用户不能正常通过DNS名称(域名)方式访问某些计算机。这个问题可以通过手工的方式将计算机的DNS名称(域名)和IP地址向DNS服务器注册来解决。ipconfig命令的“/registerdns”参数提供了该功能,该命令还可以刷新所有的 DHCP 地址租约,并注册由客户端配置和使用的所有相关DNS名称。

12.3使用arp命令解决网络故障

有时由于网络中计算机的IP地址和MAC地址解析出错,造成用户不能相互访问,这时可以用arp命令查看解决,ARP命令可以显示和修改“地址解析协议 (ARP)”缓存中的项目。ARP 缓存中包含一个或多个表,它们用于存储IP地址及其经过解析的MAC地址。计算机上安装的每一个网卡都有自己单独的表。arp命令对于查看ARP缓存和解决地址解析问题非常有用。下面是典型的ARP命令应用案例。

12.3.1 使用arp命令查看本地计算机上的ARP表项

查看本地计算机上的ARP表项可以用arp命令的“-a”参数,在命令提示符下,键入 “arp –a”即可。例如,如果最近使用过 ping 命令测试并验证从这台计算机到IP地址为 192.168.1.3 的主机的连通性,则ARP缓存显示如图12-15:

图12-15使用arp命令查看本地计算机上的ARP表项

在此例中,缓存项说明IP地址为192.168.1.3的远程主机MAC地址为00-00-00-00-01-fe。

12.3.2 使用arp命令在本地计算机中添加静态ARP缓存条目

ARP协议采用广播的方式实现IP地址和MAC地址的解析,广播会占用网络大量的带宽。为了减少ARP协议的广播,可以采用静态ARP缓存项目,用手工的方式添加ARP缓存条目。添加静态ARP缓存条目可以用arp命令的“-s”参数,命令格式为“arp –s ip_address mac_address”,其中“ip_address”指本地(在同一子网上)某计算机的 IP 地址。“mac_address” 指本地某计算机上安装并使用网卡的MAC地址。

下面用具体例子说明该命令的使用。例如,为IP地址是10.0.0.200,MAC地址是00-10-54-CA-E1-40的本地计算机添加静态ARP缓存条目的命令是:

C:\\>arp -s 10.0.0.200 00-10-54-CA-E1-40

这里需要说明的是静态ARP缓存条目一旦添加,就一直有效,直到重新启动计算机。要想让静态ARP缓存项保持不变,可以用arp命令将其添加到系统启动时运行的批处理文件中。

12.3.3 使用arp命令删除本地计算机上的ARP缓存条目

在计算机的ARP缓存表中,由于病毒等原因造成错误的ARP缓存条目会造成网络中计算机不能正常通信,可以使用arp命令的“–d”参数手动删除那些ARP缓存项。

例如,删除所有接口上IP地址为192.168.0.1的ARP映射命令为“arp -d 192.168.0.1”。

12.4使用nbtstat命令诊断网络故障问题

nbtstat命令可以显示基于TCP/IP的NetBIOS(NetBT)协议的统计资料、本地计算机和远程计算机的

NetBIOS名称表和NetBIOS名称缓存。nbtstat命令可以刷新NetBIOS名称缓存和使用Windows Internet名称服务(WINS)注册的名称。

nbtstat命令是解决NetBIOS名称解析问题的有用工具,可以使用nbtstat命令删除或更正预加载的条目,具体如下:

? nbtstat –n命令显示本地计算机的NetBIOS名称表。

? nbtstat -c命令NetBIOS名字高速缓存的内容。NetBIOS名字高速缓存用于寸放和本电脑最近进行通信的其他电脑的NetBIOS名字和IP地址对。

? nbtstat -R命令清除名称缓存,然后从Lmhosts文件重新加载。

? nbtstat -RR命令释放在WINS服务器上注册的NetBIOS名称,然后更新它们的注册。

? nbtstat -a name命令显示名字为“name”计算机的MAC地址和名字列表,所显示的内容就像对方计算机自己运行nbtstat -n一样。例如显示计算机名为“CORP07”的远程计算机的NetBIOS名称表的命令为“nbtstat -a CORP07”。

? nbtstat –a IP该命令可以查询本计算机所提供的网络共享资源名称,也可查询计算机的网卡地址,见图12-16:

图12-16 nbtstat –a IP命令的运行结果

? nbtstat -S 列出当前的 NetBIOS 会话及其状态(包括统计),见图12-17:

图12-17 nbtstat -S 命令的运行结果

C:\>nbtstat -S 本地连接: Node IpAddress: [192.168.1.21] Scope Id: [] NetBIOS Connection Table

Local Name State In/Out Remote Host Input Output ----------------------------------------- ICEBLOOD <00> Connected Out 192.168.1.22 8MB 316KB ICEBLOOD <03> Listening ICEBLOOD$ <03> Listening LIU_ICEBLOOD <03> Listening (?) 从上面例子可以知道本地计算机现在正在和192.168.1.22进行会话,看得出是在复制文件,而且是从对方计算机往自己的计算机里复制。通过以上命令所得到的信息可以为了解网络连接状况,解决网络故障,解除潜在的网络威胁提供线索。

12.5使用netstat命令诊断网络故障问题

Netstat命令用于显示和IP、TCP、UDP和ICMP协议相关的统计数据,用于检验本机各端口的网络连接情况。假如用户计算机有时候接收到的数据包会导致出错、数据删除或故障,TCP/IP能够容许这些类型的错误,并能够自动重发数据包。但假如累计的出错情况数目占到所接收的数据包相当大的百分比,或它的数目正迅速增加,那么就应该使用netstat命令进行诊断,查一查网络出了什么问题。

Netstat命令可以显示活动的TCP连接、计算机侦听的端口、以太网统计信息、IP路由表、IPv4统计信息(对于 IP、ICMP、TCP 和 UDP 协议)以及IPv6统计信息(对于 IPv6、ICMPv6、通过IPv6的TCP以及通过IPv6的UDP协议)。

12.5.1 使用netstat命令显示以太网统计信息

使用netstat命令,可以显示以太网统计信息,如发送和接收的字节数、数据包数、错误数据包和广播的数量等。得知网络工作的状况和网络整体流量,对于解决网络阻塞,制订不同业务数据流的优化策略很重要。下面是用netstat命令的“–e”参数显示以太网统计信息的具体的例子,结果见图12-18。

图12-18使用netstat命令显示以太网统计信息

若接收错和发送错接近零或全为零,网络的接口没有问题。但当这两个字段有100个以上的出错分组时就可以认为是高出错率了。高的发送出错表示本地网络饱和或在计算机与网络之间有不良的物理连接;高的接收出错表示整体网络饱和、本地计算机过载或物理连接有问题,可以用ping命令的“-t”参数统计误码率,进一步确定故障的程度。netstat -e和ping命令结合使用能解决一大部分网络故障。

12.5.2 使用netstat命令显示活动的TCP连接

显示活动的TCP连接可以根据网络TCP连接状况,判断一些连接是否为非法连接,例如查看是否存在

木马。

(1)用netstat 命令以数字形式显示地址和端口号

可以运用netstat 命令的“-n”和“-o”参数,其中“-n”参数是以数字形式显示地址和端口号,“-o”参数显示每个连接的进程 ID (PID),具体例子见图12-19。

图12-19用netstat 命令以数字形式显示地址和端口号

上面例子中显示本地计算机和远程计算机的连接状况,例如“TCP 192.168.128.205:4351 61.174.18.254:8080 ESTABLISHED 1340”一行表示IP地址为192.168.128的本地计算机通过TCP的4351端口与IP地址为61.174.18.254,端口号为8080的远程计算机的连接,状态为“ESTABLISHED”(创建连接),当前进程为1340。

(2)用netstat 命令显示所有活动的TCP、UDP连接以及计算机侦听的TCP和UDP端口

可以用netstat 命令的“-a”参数显示所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接,断开连接(CLOSE_WAIT)或者处于联机等待状态的(TIME_WAIT)等。了解这些信息很重要,一方面可以了解网络连接状况,另一方面可以发现木马,及时对木马进行查杀,特别是对于一些不明的IP地址连接和状态是“TIME_WAIT”的连接更要特别关注,具体例子见图12-20。

图12-20用netstat 命令显示所有活动的TCP、UDP连接以及计算机侦听的TCP和UDP端口

上例中显示了连接的状况,现以“TCP 20030217-2032:4351 61.174.18.254:8080 ESTABLISHED”一行进一步解释,“20030217-2032:4351”表示本地计算机“20030217-2032”端口号为“4351”与远程计算机“61.174.18.254”端口为“8080”正在创建连接。

12.5.3 使用netstat命令显示协议统计信息

可以利用netstat命令的“-s”参数显示TCP、UDP、ICMP和IP协议的统计信息。如果计算机应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么就可以用该命令来查看一下所显示的信息,仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在,然后就可以根据具体的错误解决问题了。

下面是具体的命令显示和显示内容的解释。

C:\\>netstat -s

IPv4 Statistics (IP统计结果)

Packets Received = 369492(接收包数)

Received Header Errors = 0(接收头错误数) Received Address Errors = 2(接收地址错误数) Datagrams Forwarded = 0(数据报递送数)

Unknown Protocols Received = 0(未知协议接收数) Received Packets Discarded = 4203(接收后丢弃的包数) Received Packets Delivered = 365287(接收后转交的包数) Output Requests = 369066(请求数) Routing Discards = 0(路由丢弃数 )

Discarded Output Packets = 2172(包丢弃数) Output Packet No Route = 0(不路由的请求包) Reassembly Required = 0(重组的请求数) Reassembly Successful = 0(重组成功数) Reassembly Failures = 0(重组失败数)

Datagrams Successfully Fragmented = 0(分片成功的数据报数) Datagrams Failing Fragmentation = 0(分片失败的数据报数) Fragments Created = 0(分片建立数)

ICMPv4 Statistics Received Sent(ICMP统计结果,包括Received和Sent两种状态)

Messages 285 784(消息数)

Errors 0 0(错误数)

Destination Unreachable 53 548(无法到达主机数目) Time Exceeded 0 0(超时数目) Parameter Problems 0 0(参数错误) Source Quenches 0 0(源夭折数) Redirects 0 0(重定向数) Echos 25 211(回应数)

Echo Replies 207 25(回复回应数) Timestamps 0 0(时间戳数) Timestamp Replies 0 0(时间戳回复数) Address Masks 0 0(地址掩码数) Address Mask Replies 0 0(地址掩码回复数)

TCP Statistics for IPv4(TCP统计结果)

Active Opens = 5217(主动打开数) Passive Opens = 80(被动打开数) Failed Connection Attempts = 2944(连接失败尝试数) Reset Connections = 529(复位连接数) Current Connections = 9(当前连接数目) Segments Received = 350143(当前已接收的报文数) Segments Sent = 347561(当前已发送的报文数) Segments Retransmitted = 6108(被重传的报文数目) UDP Statistics for IPv4(UDP统计结果) Datagrams Received = 14309(接收的数据包) No Ports = 1360(无端口数) Receive Errors = 0(接收错误数) Datagrams Sent = 14524(数据包发送数) 该命令显示了IPv4 、ICMPv4、TCP、UDP的统计信息,其中ICMPv4的统计信息,包含了发送和接收两部分内容。用户可以根据具体的统计信息进一步分析网络运行情况,解决可能存在的问题。

12.5.4 使用netstat命令显示某一特定协议的连接状态信息

在检查网络协议的过程中,有时只想对某一种特定的协议进行检查,这时可以用netstat命令的“-p”参数,参数后面直接跟上具体的协议就可以显示具体协议的连接状态信息了,下面是显示tcp协议连接状态信息的例子,具体见图12-21。

图12-21使用netstat命令显示某一特定协议的连接状态信息

该例子显示了TCP协议的活动连接状态信息,可以帮助用户查找具体的问题。

12.5.5 使用netstat命令显示路由表

当用户网络中计算机不能与其他网络中计算机进行通信时,可以通过查看路由表来判断网络中的路由有没有问题,查看路由表可以运用netstat命令的“-r”参数实现,具体见图12-22。

图12-22使用netstat命令显示路由表

以上是使用netstat命令的“–r”参数显示的结果,用户可以从命令显示的路由信息判断是否有到达目的网络的路由,如果没有需要进一步检查网络接口和路由协议运行情况,判断问题原因进而解决问题。

12.6 使用tracert命令跟踪网络连接

Tracert(即跟踪路由)是路由跟踪实用程序,用于确定IP包访问目标所经过的路径,是解决网络路径错误非常有用的工具,通常用该命令跟踪路由,确定网络中某一个路由器节点是否出现故障,然后进一步解决该路由器节点故障。

12.6.1 tracert的工作原理

在Internet网络中,每一个路由器在接到一个IP包后,均会将该IP包的TTL值减1(TTL值是IP包包头中的一个字段,共一个字节,该字段名称是“Time To Live”,即经常称的TTL),当IP包上的TTL减为0时,路由器将“ICMP Time Exceeded”的消息发回源计算机,这时源计算机就获得了路由器的IP地址。

tracert命令首先发送IP包TTL值为1的回显数据包,并在随后的每次发送过程中将TTL递增1,直到目标响应或TTL达到最大值,中间路由器返回“ICMP超时”消息与目标返回“ICMP回显应答”消息,Tracert命令将据此按顺序打印出返回“ICMP Time Exceeded”消息的路由器接口列表,从而确定到达目的的路径。默认情况下路由器节点最大值是30(可使用tracert命令的“ –h” 参数指定)。但是某些路由器不会为TTL值为0的IP包返回“已超时”消息,而且这些路由器对于tracert命令不可见,在这种情况下,将为该路由器节点显示一行星号(*)。

12.6.2 tracert命令的应用实例

在下例中,IP包必须通过路由器(192.168.128.254)才能到达主机 192.168.100.100。主机的默认网关是192.168.128.254,具体见图12-23。

图12-23 tracert命令的应用实例

从该例显示的内容可以看出,经过路由器192.168.128.254到达主机192.168.100.100显示的先后顺序就是IP包到达目的计算机的路径。例中“ms”是追踪所用时间,以ms为单位。

12.6.2 用tracert命令进行路由故障检测

可以使用tracert命令追踪IP包在网络上的停止位置,从而确定IP包从源计算机到目的计算机路径上哪一路由器节点故障。下例中,默认网关10.0.0.1返回信息“Destination net unreachable”(目的网络不可达),说明到达目的计算机192.168.10.99没有有效路径,具体见图12-24。。这可能是路由器配置的问题,或者是192.168.10.99 网络不存在,需要进一步检查路由器的配置。

图12-24用tracert命令进行路由故障检测

12.7 使用pathping命令测试路由器

pathping命令是一个路由跟踪工具,该命令是将ping命令和tracert命令的功能结合起来并有所增强的网络诊断工具,它可以反映出数据包从源主机到目标主机所经过的路径、网络延时以及丢包率。因此用户可据此确定可能导致网络问题的路由器或链路(两个相邻路由器节点之间的数据传输路径),解决网络问题。默认设置情况下,完成一次pathping操作会花几分钟时间。

使用pathping命令时根据实际情况可以跟多个参数选项,下面简单介绍pathping命令常用的参数选项及涵义。

? pathping -n不显示每一台路由器的主机名。

? pathping – h value 设置跟踪到目的地的最大路由器节点数量,默认值是30个节点。 ? pathping –w value 设置等待应答的最多时间(按毫秒计算)。

? pathping –p 设置在发出新的ping命令之前等待的时间(以毫秒计算),默认值是250毫秒。 ? pathping -q value 设置ICMP回显请求信息发送的数量,默认是100。

下面是pathping命令追踪计算机为“www.163.com”的典型应用,该命令中用了“-n”和“-p”参数,具体见图12-25。

图12-25 使用pathping命令追踪计算机

上面例子中共5栏,其含义分别如下: ? Hop:跳,即网络中路由器节点。 ? RTT:往返时间。

? Source to Here Lost/Sent = Pct:从源到此的丢包率,是各跳的丢包率总和。

? This Node/Link Lost/Sent = Pct:此结点和链路的丢包率,其中,链路丢包率(在最右边的栏中标记为“|”一行)表明路径转发时的丢包情况,从而说明链路拥挤情况,丢包率越高说明链路越拥挤;结点丢包率(在最右边的栏中标记为IP地址一行)表明该路由器的CPU负荷情况,丢包率越高说明路由器的CPU负荷越重。

? Address:标记为“|”和IP地址。

从上面命令运行结果可以看出,当运行pathping命令时,pathping将首先显示路径信息,此路径与tracert命令所显示的路径相同。接着,将显示约90秒(该时间随着路由器节点数的变化而变化)的繁忙消息。在此期间,命令会从先前列出的所有路由器及其链接之间收集信息,在此期间结束时将显示测试结果。本例中显示的结果统计如下:

第0跳:即本机。

第1跳:即到192.168.128.254,所有丢包率为0%,即没有丢包。 第2跳:即到172.18.1.1,所有丢包率为0%,即没有丢包

第3跳:即到192.168.1.8,本链路丢包率为0,本结点丢包率为100%,总丢包率为0%+100%=100%。 第4跳:即到下一跳,无数据包

12.8 使用route命令对路由操作

route命令主要用来管理本机路由表,可以查看、添加、修改或删除路由表条目。可以用该命令对路由表进行维护,解决网络路由问题,是网络维护、网络故障解除常用的命令。该命令在Windows 2000以上操作系统都可使用。下面将讲解其具体的应用。

12.8.1 使用route命令检查本机的路由表信息

检查本机的路由表信息可以用route 命令的print子命令实现,该命令可以显示本机路由表的完整信息,用户可以通过观察路由表的信息来判断网络路由故障,例如网关的设置是否正确,通过观察、判断,进一步解决网络路由问题。下面是显示本机的路由表的具体命令,具体见图12-26。

图12-26 显示本机的路由表的具体命令

上面命令中,本机地址是218.192.82.181,采用的是默认路由,网关是218.192.80.1。

12.8.2 使用route命令添加路由

有时网络路由出现故障,需要手工维护路由表,添加默认路由,可以用route命令的add子命令实现。

下面是几个具体的例子的相关命令。

? 添加默认网关地址为192.168.12.1的默认路由:

route add 0.0.0.0 mask 0.0.0.0 192.168.12.1

? 添加目标为10.41.0.0,子网掩码为255.255.0.0,下一个跃点地址为 10.27.0.1 的路由: route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 ? 添加目标为 10.41.0.0,子网掩码为 255.255.0.0,下一个跃点地址为 10.27.0.1,跃点数为 7 的路由:

route add 10.41.0.0 mask 255.255.0.0 10.27.0.1 metric 7

12.8.3 使用route命令删除路由

当路由表中有错误的路由时,可能会导致用户不能上网,为了解决这个问题,用户可以将错误的路由删除。下面是两个具体的删除路由的例子的相关命令。

? 删除目标为 10.41.0.0,子网掩码为 255.255.0.0 的路由: route delete 10.41.0.0 mask 255.255.0.0 ? 删除IP路由表中以10.开始的所有路由: route delete 10.*

12.8.3 使用route命令修改路由

修改路由也是对错误路由处理的一个办法,修改路由可以用route命令的hange子命令实现,下面是将目标为10.41.0.0,子网掩码为255.255.0.0的路由的下一个跃点地址由 10.27.0.1更改为10.27.0.25的具体例子,使用的route命令为:

route change 10.41.0.0 mask 255.255.0.0 10.27.0.25

route命令是一个常用的查看和维护路由的命令,应根据网络故障的具体情况灵活采用其子命令进行维护。

12.9 常用的网络工具软件简介

对于网络管理,我们经常要使用一些网络工具软件,确保网络的安全,下面介绍常用的两款网络工具软件的使用。

12.9.1 X-Scan工具软件

X-Scan采用多线程方式对指定的IP地址段进行安全漏洞检测,其主界面如图12-27所示。

图12-27 X-Scan工具软件的主界面

其使用方法如下:

1.安装好X-Scan工具软件,在其目录中双击“xscan_gui.exe”,打开X-Scan。 2.依次单击【设置】→【扫描参数】,在【扫描参数】对话框中对需要扫描的选项进行设置,设置完毕单击【确定】,结果如图12-28

图12-28 X-Scan工具软件扫描参数的设置界面 3.依次单击【文件】→【开始扫描】,对目标主机进行扫描,具体如图12-29所示。

图12-29 X-Scan工具软件的扫描窗口 4.扫描结束,将弹出扫描结果报告(如图12-30),管理员可根据报告对本机系统进行分析。

图12-30 X-Scan工具软件的扫描结果报告

12.9.2 网路岗网络监管软件

网路岗网络监管软件的使用方法如下:

1.下载并安装好网路岗网络监管软件,打开该软件,其界面如图12-31

图12-31网路岗网络监管软件的界面

2.在基本设置树目录中,可根据各项对计算机的服务、IP流量等进行监控。 3.在高级设置中可以设置监控的项目内容、监控时间、监控端口等,如图12-32

图12-32网路岗网络监管软件的高级设置窗口

本 章 小 结 本章讲述了常用网络命令ping,ipconfig,arp,tracert,pathing,nbtstat,netstat和route,重点是用户要能根据网络故障的具体情况,采用不同的命令解决网络故障问题,做到灵活应用,并且会利用网络管理工具对现有网络进行分析,查找故障,然后给出解决的方案。本章中讲到的ping和ipconfig是最为常用的命令,希望读者熟练掌握。

一、单项选择题

1.ping命令用的是下列哪一个协议的echo 报文( )。 A、IP 报文 B、ICMP报文 C、L2TP报文 D、SNMP报文。

2.如果想显示本台计算机的网络配置参数,可以选择如下( )命令。

A、ipconfig/all B、ipconfig /renew C、ipconfig/repair D、ipconfig/flushdns。 3.下列哪条命令可以查看IP 地址和MAC 地址的对应关系( )。

A、ping命令 B、ipconfig 命令 C、arp命令 D、tracert命令。 4.如果想显示NetBIOS 名称缓存可以采用下列( )命令。 A、netstat -a B、netstat -e C、arp -a D、nbtstat -c。 5.如果想显示以太网统计信息可以采用下列( )命令。

A、netstat -a B、netstat -e C、arp -a D、nbtstat -c。

6.从tracert命令原理上讲,tracert命令使用了IP 包头中的( )字段。 A、TTL字段 B、校验和字段 C、版本号字段 D、协议号字段。

7.从tracert命令原理上讲,tracert命令使用了下列ICMP协议中的( )报文。

A、Destination Unreachable B、Router Solicitation C、Redirect D、Time Exceeded。

8.Windows 系统中,下列可以显示路由表的命令是( )

A、netstat -a B、netstat -r C、arp -a D、nbtstat -c。 9.Windows 系统中,下列可以显示路由表的命令是( )

A、netstat -a B、route print C、arp -a D、nbtstat -c。 10.Windows 系统中,下列可以添加静态路由的命令是( )

A、netstat -a B、route add C、arp -a D、nbtstat -c。

二、填空题

1.可以使用( )命令和( )命令结合使用查看同一网段中某一台主机的MAC 地址。 2.当用ping命令ping不同网段中的主机时,可以ping通,在本机上用ARP命令( )查看到该远程主机的MAC 地址(填“可以”或者“不可以”)。 3.使用命令C:\\>netstat -e

Interface Statistics

Received Sent

Bytes 3995837940 47224622 Unicast packets 120099 131015 Non-unicast packets 7579544 3823 Discards 0 0 Errors 0 0

Unknown protocols 363054211

其中“Bytes 3995837940 47224622”一行的含义是( )。 4.“Destination net unreachable”的含义是( )。 5.当路由器接收到IP 包,IP 包中TTL=1时,路由器对该IP 包( )处理。

三、简答题

1.有A和B两台计算机通过三层交换机连接,IP 地址分别是192.168.1.3/24,192.168.2.5/24,两台计算机相互PING 不通,已知该两台计算机均可以PING 通同一网段内的计算机,两个网段中其他计算机是可以相互PING 通的,请你写出解决该问题的解决方案。

2.一家小型公司采用ADSL连接宽带路由器上网,公司内每台计算机均采用手动地址设置,其中一台计算机无法连接互联网,请你写出解决办法。

参考答案:

一、单项选择题

1.B 2.A 3.C 4.D 5.B 6.A 7.D 8.B 9.B 10.B 二、填空题

1.ping ,arp 或者ping 主机,arp –a。

2.不可以。

3.接收“3995837940”字节,发送“47224622” 字节。 4.目的网络不可达。 5.转发。 三、简答题

1.应该是两台计算机的网关设置有问题,检查两台计算机的网关设置是否正确,然后PING网关进行测试。

2.按照如下顺序检查:

(1).IP地址检查,是否是同一网段。 (2).子网掩码检查,是否是同一网段子网掩码。 (3).网关检查,是否是宽带路由器局域网接口ip。

(4).DNS设置检查,是否是可用的DNS服务器地址。

本文来源:https://www.bwwdw.com/article/hqe7.html

Top