常用的网络工具命令有哪些

2024-11-30 22:55:55
推荐回答(1个)
回答1:

如果你玩过路由器的话,就知道路由器里面那些很好玩的命令缩写。

例如,"shint"的意思是"showinterface"。

现在Windows2000也有了类似界面的工具,叫做netsh。

我们在Windows2000的cmdshell下,输入netsh
就出来:netsh>提示符,
输入intip就显示:
interfaceip>

然后输入dump,我们就可以看到当前系统的网络配置:

#----------------------------------

#InterfaceIPConfiguration

#----------------------------------

pushdinterfaceip

#InterfaceIPConfigurationfor"LocalAreaConnection"

setaddressname="LocalAreaConnection"source=staticaddr=192.168.1.168
mask=255.255.255.0
addaddressname="LocalAreaConnection"addr=192.1.1.111mask=255.255.255.0
setaddressname="LocalAreaConnection"gateway=192.168.1.100gwmetric=1
setdnsname="LocalAreaConnection"source=staticaddr=202.96.209.5
setwinsname="LocalAreaConnection"source=staticaddr=none

popd
#EndofinterfaceIPconfiguration

上面介绍的是通过交互方式操作的一种办法。
我们可以直接输入命令:
"netshinterfaceipaddaddress"LocalAreaConnection"10.0.0.2255.0.0.0"
来添加IP地址。

如果不知道语法,不要紧的哦!
在提示符下,输入?就可以找到答案了。方便不方便啊?
原来微软的东西里面,也有那么一些让人喜欢的玩意儿。可惜,之至者甚少啊!

Windows网络命令行程序
这部分包括:

使用ipconfig/all查看配置
使用ipconfig/renew刷新配置
使用ipconfig管理DNS和DHCP类别ID
使用Ping测试连接
使用Arp解决硬件地址问题
使用nbtstat解决NetBIOS名称问题
使用netstat显示连接统计
使用tracert跟踪网络连接
使用pathping测试路由器
使用ipconfig/all查看配置
发现和解决TCP/IP网络问题时,先检查出现问题的计算机上的TCP/IP配置。可以使用ipconfig命令获得主机配置信息,包括IP地址、子网掩码和默认网关。

注意

对于Windows95和Windows98的客户机,请使用winipcfg命令而不是ipconfig命令。
使用带/all选项的ipconfig命令时,将给出所有接口的详细配置报告,包括任何已配置的串行端口。使用ipconfig/all,可以将命令输出重定向到某个文件,并将输出粘贴到其他文档中。也可以用该输出确认网络上每台计算机的TCP/IP配置,或者进一步调查TCP/IP网络问题。

例如,如果计算机配置的IP地址与现有的IP地址重复,则子网掩码显示为0.0.0.0。

下面的范例是ipconfig/all命令输出,该计算机配置成使用DHCP服务器动态配置TCP/IP,并使用WINS和DNS服务器解析名称。

Windows2000IPConfiguration

NodeType.........:Hybrid
IPRoutingEnabled.....:No
WINSProxyEnabled.....:No

EthernetadapterLocalAreaConnection:

HostName.........:corp1.microsoft.com
DNSServers.......:10.1.0.200
Description.......:3Com3C90xEthernetAdapter
PhysicalAddress.....:00-60-08-3E-46-07
DHCPEnabled........:Yes
AutoconfigurationEnabled.:Yes
IPAddress.........:192.168.0.112
SubnetMask........:255.255.0.0
DefaultGateway......:192.168.0.1
DHCPServer........:10.1.0.50
PrimaryWINSServer....:10.1.0.101
SecondaryWINSServer...:10.1.0.102
LeaseObtained.......:Wednesday,September02,199810:32:13AM
LeaseExpires.......:Friday,September18,199810:32:13AM

如果TCP/IP配置没有问题,下一步测试能够连接到TCP/IP网络上的其他主机。

使用ipconfig/renew刷新配置
解决TCP/IP网络问题时,先检查遇到问题的计算机上的TCP/IP配置。如果计算机启用DHCP并使用DHCP服务器获得配置,请使用ipconfig/renew命令开始刷新租约。

使用ipconfig/renew时,使用DHCP的计算机上的所有网卡(除了那些手动配置的适配器)都尽量连接到DHCP服务器,更新现有配置或者获得新配置。

也可以使用带/release选项的ipconfig命令立即释放主机的当前DHCP配置。有关DHCP和租用过程的详细信息,请参阅客户机如何获得配置。

注意

对于启用DHCP的Windows95和Windows98客户,请使用winipcfg命令的release和renew选项,而不是ipconfig/release和ipconfig/renew命令,手动释放或更新客户的IP配置租约。
使用ipconfig管理DNS和DHCP类别ID
也可以使用ipconfig命令:

显示或重置DNS缓存。
详细信息,请参阅使用ipconfig查看或重置客户解析程序缓存。

刷新已注册的DNS名称。
详细信息,请参阅使用ipconfig更新DNS客户注册。

显示适配器的DHCP类别ID。
详细信息,请参阅显示客户机上的DHCP类别ID信息。

设置适配器的DHCP类别ID。
详细信息,请参阅设置客户机上的DHCP类别ID信息。

使用Ping测试连接
Ping命令有助于验证IP级的连通性。发现和解决问题时,可以使用Ping向目标主机名或IP地址发送ICMP回应请求。需要验证主机能否连接到TCP/IP网络和网络资源时,请使用Ping。也可以使用Ping隔离网络硬件问题和不兼容配置。

通常最好先用Ping命令验证本地计算机和网络主机之间的路由是否存在,以及要连接的网络主机的IP地址。Ping目标主机的IP地址看它是否响应,如下:

pingIP_address

使用Ping时应该执行以下步骤:

Ping环回地址验证是否在本地计算机上安装TCP/IP以及配置是否正确。
ping127.0.0.1

Ping本地计算机的IP地址验证是否正确地添加到网络。
pingIP_address_of_local_host

Ping默认网关的IP地址验证默认网关是否运行以及能否与本地网络上的本地主机通讯。
pingIP_address_of_default_gateway

Ping远程主机的IP地址验证能否通过路由器通讯。
pingIP_address_of_remote_host

Ping命令用Windows套接字样式的名称解析将计算机名解析成IP地址,所以如果用地址成功,但是用名称Ping失败,则问题出在地址或名称解析上,而不是网络连通性的问题。详细信息,请参阅使用Arp解决硬件地址问题。

如果在任何点上都无法成功地使用Ping,请确认:

安装和配置TCP/IP之后重新启动计算机。
“Internet协议(TCP/IP)属性”对话框“常规”选项卡上的本地计算机的IP地址有效而且正确。
启用IP路由,并且路由器之间的链路是可用的。
您可以使用Ping命令的不同选项来指定要使用的数据包大小、要发送多少数据包、是否记录用过的路由、要使用的生存时间(TTL)值以及是否设置“不分段”标志。可以键入ping-?查看这些选项。

下例说明如何向IP地址172.16.48.10发送两个Ping,每个都是1,450字节:

C:>ping-n2-l1450172.16.48.10
Pinging172.16.48.10with1450bytesofdata:

Replyfrom172.16.48.10:bytes=1450time<10msTTL=32
Replyfrom172.16.48.10:bytes=1450time<10msTTL=32

Pingstatisticsfor157.59.8.1:
Packets:Sent=2,Received=2,Lost=0(0%loss),
Approximateroundtriptimesinmilli-seconds:
Minimum=0ms,Maximum=10ms,Average=2ms
默认情况下,在显示“请求超时”之前,Ping等待1,000毫秒(1秒)的时间让每个响应返回。如果通过Ping探测的远程系统经过长时间延迟的链路,如卫星链路,则响应可能会花更长的时间才能返回。可以使用-w(等待)选项指定更长时间的超时。

使用Arp解决硬件地址问题
“地址解析协议(ARP)”允许主机查找同一物理网络上的主机的媒体访问控制地址,如果给出后者的IP地址。为使ARP更加有效,每个计算机缓存IP到媒体访问控制地址映射消除重复的ARP广播请求。

可以使用arp命令查看和修改本地计算机上的ARP表项。arp命令对于查看ARP缓存和解决地址解析问题非常有用。

详细信息,请参阅查看“地址解析协议(ARP)”缓存和添加静态ARP缓存项目。

使用nbtstat解决NetBIOS名称问题
TCP/IP上的NetBIOS(NetBT)将NetBIOS名称解析成IP地址。TCP/IP为NetBIOS名称解析提供了很多选项,包括本地缓存搜索、WINS服务器查询、广播、DNS服务器查询以及Lmhosts和主机文件搜索。

Nbtstat是解决NetBIOS名称解析问题的有用工具。可以使用nbtstat命令删除或更正预加载的项目:

nbtstat-n显示由服务器或重定向器之类的程序在系统上本地注册的名称。
nbtstat-c显示NetBIOS名称缓存,包含其他计算机的名称对地址映射。
nbtstat-R清除名称缓存,然后从Lmhosts文件重新加载。
nbtstat-RR释放在WINS服务器上注册的NetBIOS名称,然后刷新它们的注册。
nbtstat-aname对name指定的计算机执行NetBIOS适配器状态命令。适配器状态命令将返回计算机的本地NetBIOS名称表,以及适配器的媒体访问控制地址。
nbtstat-S列出当前的NetBIOS会话及其状态(包括统计),如下例所示:
NetBIOSconnectiontable

LocalnameStateIn/outRemoteHostInputOutput
------------------------------------------------------------------
CORP1<00>ConnectedOutCORPSUP1<20>6MB5MB
CORP1<00>ConnectedOutCORPPRINT<20>108KB116KB
CORP1<00>ConnectedOutCORPSRC1<20>299KB19KB
CORP1<00>ConnectedOutCORPEMAIL1<20>324KB19KB
CORP1<03>Listening
使用netstat显示连接统计
可以使用netstat命令显示协议统计信息和当前的TCP/IP连接。netstat-a命令将显示所有连接,而netstat-r显示路由表和活动连接。netstat-e命令将显示Ethernet统计信息,而netstat-s显示每个协议的统计信息。如果使用netstat-n,则不能将地址和端口号转换成名称。下面是netstat的输出示例:

C:>netstat-e
InterfaceStatistics

ReceivedSent
Bytes399583794047224622
Unicastpackets120099131015
Non-unicastpackets75795443823
Discards00
Errors00
Unknownprotocols363054211

C:>netstat-a

ActiveConnections

ProtoLocalAddressForeignAddressState
TCPCORP1:1572172.16.48.10:nbsessionESTABLISHED
TCPCORP1:1589172.16.48.10:nbsessionESTABLISHED
TCPCORP1:1606172.16.105.245:nbsessionESTABLISHED
TCPCORP1:1632172.16.48.213:nbsessionESTABLISHED
TCPCORP1:1659172.16.48.169:nbsessionESTABLISHED
TCPCORP1:1714172.16.48.203:nbsessionESTABLISHED
TCPCORP1:1719172.16.48.36:nbsessionESTABLISHED
TCPCORP1:1241172.16.48.101:nbsessionESTABLISHED
UDPCORP1:1025*:*
UDPCORP1:snmp*:*
UDPCORP1:nbname*:*
UDPCORP1:nbdatagram*:*
UDPCORP1:nbname*:*
UDPCORP1:nbdatagram*:*

C:>netstat-s
IPStatistics

PacketsReceived=5378528
ReceivedHeaderErrors=738854
ReceivedAddressErrors=23150
DatagramsForwarded=0
UnknownProtocolsReceived=0
ReceivedPacketsDiscarded=0
ReceivedPacketsDelivered=4616524
OutputRequests=132702
RoutingDiscards=157
DiscardedOutputPackets=0
OutputPacketNoRoute=0
ReassemblyRequired=0
ReassemblySuccessful=0
ReassemblyFailures=
DatagramsSuccessfullyFragmented=0
DatagramsFailingFragmentation=0
FragmentsCreated=0

ICMPStatistics
ReceivedSent
Messages6934
Errors00
DestinationUnreachable6850
TimeExceeded00
ParameterProblems00
SourceQuenches00
Redirects00
Echoes40
EchoReplies04
Timestamps00
TimestampReplies00
AddressMasks00
AddressMaskReplies00

TCPStatistics

ActiveOpens=597
PassiveOpens=135
FailedConnectionAttempts=107
ResetConnections=91
CurrentConnections=8
SegmentsReceived=106770
SegmentsSent=118431
SegmentsRetransmitted=461

UDPStatistics

DatagramsReceived=4157136
NoPorts=351928
ReceiveErrors=2
DatagramsSent=13809

使用tracert跟踪网络连接
Tracert(跟踪路由)是路由跟踪实用程序,用于确定IP数据报访问目标所采取的路径。Tracert命令用IP生存时间(TTL)字段和ICMP错误消息来确定从一个主机到网络上其他主机的路由。

Tracert工作原理
通过向目标发送不同IP生存时间(TTL)值的“Internet控制消息协议(ICMP)”回应数据包,Tracert诊断程序确定到目标所采取的路由。要求路径上的每个路由器在转发数据包之前至少将数据包上的TTL递减1。数据包上的TTL减为0时,路由器应该将“ICMP已超时”的消息发回源系统。

Tracert先发送TTL为1的回应数据包,并在随后的每次发送过程将TTL递增1,直到目标响应或TTL达到最大值,从而确定路由。通过检查中间路由器发回的“ICMP已超时”的消息确定路由。某些路由器不经询问直接丢弃TTL过期的数据包,这在Tracert实用程序中看不到。

Tracert命令按顺序打印出返回“ICMP已超时”消息的路径中的近端路由器接口列表。如果使用-d选项,则Tracert实用程序不在每个IP地址上查询DNS。

在下例中,数据包必须通过两个路由器(10.0.0.1和192.168.0.1)才能到达主机172.16.0.99。主机的默认网关是10.0.0.1,192.168.0.0网络上的路由器的IP地址是192.168.0.1。

C:>tracert172.16.0.99-d
Tracingrouteto172.16.0.99overamaximumof30hops
12s3s2s10,0.0,1
275ms83ms88ms192.168.0.1
373ms79ms93ms172.16.0.99
Tracecomplete.
用tracert解决问题
可以使用tracert命令确定数据包在网络上的停止位置。下例中,默认网关确定192.168.10.99主机没有有效路径。这可能是路由器配置的问题,或者是192.168.10.0网络不存在(错误的IP地址)。

C:>tracert192.168.10.99

Tracingrouteto192.168.10.99overamaximumof30hops

110.0.0.1reportsestinationnetunreachable.

Tracecomplete.

Tracert实用程序对于解决大网络问题非常有用,此时可以采取几条路径到达同一个点。

Tracert命令行选项
Tracert命令支持多种选项,如下表所示。

tracert[-d][-hmaximum_hops][-jhost-list][-wtimeout]target_name

选项描述
-d指定不将IP地址解析到主机名称。
-hmaximum_hops指定跃点数以跟踪到称为target_name的主机的路由。
-jhost-list指定Tracert实用程序数据包所采用路径中的路由器接口列表。
-wtimeout等待timeout为每次回复所指定的毫秒数。
target_name目标主机的名称或IP地址。

详细信息,请参阅使用tracert命令跟踪路径。

使用pathping测试路由器
pathping命令是一个路由跟踪工具,它将ping和tracert命令的功能和这两个工具所不提供的其他信息结合起来。pathping命令在一段时间内将数据包发送到到达最终目标的路径上的每个路由器,然后基于数据包的计算机结果从每个跃点返回。由于命令显示数据包在任何给定路由器或链接上丢失的程度,因此可以很容易地确定可能导致网络问题的路由器或链接。某些选项是可用的,如下表所示。

选项名称功能
-nHostnames不将地址解析成主机名。
-hMaximumhops搜索目标的最大跃点数。
-gHost-list沿着路由列表释放源路由。
-pPeriod在ping之间等待的毫秒数。
-qNum_queries每个跃点的查询数。
-wTime-out为每次回复所等待的毫秒数。
-TLayer2tag将第2层优先级标记(例如,对于IEEE802.1p)连接到数据包并将它发送到路径中的每个网络设备。这有助于标识没有正确配置第2层优先级的网络设备。-T开关用于测试服务质量(QoS)连通性。
-RRSVPisbaseChe检查以确定路径中的每个路由器是否支持“资源保留协议(RSVP)”,此协议允许主机为数据流保留一定量的带宽。-R开关用于测试服务质量(QoS)连通性。

默认的跃点数是30,并且超时前的默认等待时间是3秒。默认时间是250毫秒,并且沿着路径对每个路由器进行查询的次数是100。

以下是典型的pathping报告。跃点列表后所编辑的统计信息表明在每个独立路由器上数据包丢失的情况。

D:>pathping-nmsw

Tracingroutetomsw[7.54.1.196]
overamaximumof30hops:
0172.16.87.35
1172.16.87.218
2192.68.52.1
3192.68.80.1
47.54.247.14
57.54.1.196

Computingstatisticsfor125seconds...
SourcetoHereThisNode/Link
HopRTTLost/Sent=PctLost/Sent=PctAddress
0172.16.87.35
0/100=0%|
141ms0/100=0%0/100=0%172.16.87.21813/100=13%|
222ms16/100=16%3/100=3%192.68.52.10/100=0%|
324ms13/100=13%0/100=0%192.68.80.10/100=0%|
421ms14/100=14%1/100=1%10.54.247.140/100=0%|
524ms13/100=13%0/100=0%10.54.1.196

Tracecomplete.

当运行pathping时,在测试问题时首先查看路由的结果。此路径与tracert命令所显示的路径相同。然后pathping命令对下一个125毫秒显示忙消息(此时间根据跃点计数变化)。在此期间,pathping从以前列出的所有路由器和它们之间的链接之间收集信息。在此期间结束时,它显示测试结果。

最右边的两栏ThisNode/LinkLost/Sent=Pct和Address包含的信息最有用。172.16.87.218(跃点1)和192.68.52.1(跃点2)丢失13%的数据包。所有其他链接工作正常。在跃点2和4中的路由器也丢失寻址到它们的数据包(如ThisNode/Link栏中所示),但是该丢失不会影响转发的路径。