1、Ping命令的使用技巧我想大家不会忘记 Windows是从简单的 DOS字符界面发展过来的。虽然我们平时在使用 Windows操作系统的时候,主要是对图形界面进行操作,但是 DOS命令我们仍然非常有用,下面就让我看来看看这些命令到底有那些作用,同时学习如何使用这些命令的技巧。一、Ping 命令的使用技巧Ping 是个使用频率极高的实用程序,用于确定本地主机是否能与另一台主机交换(发送与接收)数据报。根据返回的信息,我们就可以推断 TCP/IP参数是否设置得正确以及运行是否正常。需要注意的是:成功地与另一台主机进行一次或两次数 据报交换并不表示 TCP/IP配置就是正确的,我们必须执行大量的本地
2、主机与远程主机的数据报交换,才能确信 TCP/IP的正确性。简单的说,Ping 就是一个测试程序,如果 Ping运行正确,我们大体上就可以排除网络访问层、网卡、MODEM 的输入输出线路、电缆和路由器等存在的故障,从而减小了问题的范围。但由于可以自定义所发数据报的大小及无休止的高速发送,Ping 也被某些别有用心的人作为 DDOS(拒绝服务攻击)的工具,例如许多大型的网站就是被黑客利用数百台可以高速接入互联网的电脑连续发送大量 Ping数据报而瘫痪的。按照缺省设置,Windows 上运行的 Ping命令发送 4个 ICMP(网间控制报文协议)回送请求,每个 32字节数据,如果一切正常,我们应能
3、得到 4个回送应答。 Ping 能够以毫秒为单位显示发送回送请求到返回回送应答之间的时间量。如果应答时间短,表示数据报不必通过太多的路由器或网络连接速度比较快。Ping还能显示 TTL(Time To Live 存在时间)值,我们可以通过 TTL值推算一下数据包已经通过了多少个路由器:源地点 TTL起始值(就是比返回 TTL略大的一个 2的乘方数)-返回时 TTL值。例如,返回 TTL值为 119,那么可以推算数据报离开源地址的 TTL起始值为 128,而源地点到目标地点要通过 9个路由器网段(128-119);如果返回 TTL值为 246,TTL 起始值就是 256,源地点到目标地点要通过
4、9个路由器网段。1、通过 Ping检测网络故障的典型次序正常情况下,当我们使用 Ping命令来查找问题所在或检验网络运行情况时,我们需要使用许多 Ping命令,如果所有都运行正确,我们就可以相信基本的连通性和配置参数没有问题;如果某些 Ping命令出现运行故障,它也可以指明到何处去查找问题。下面就给出一个典型的检测次序及对应的可能故障:ping 127.0.0.1这个 Ping命令被送到本地计算机的 IP软件,该命令永不退出该计算机。如果没有做到这一点,就表示 TCP/IP的安装或运行存在某些最基本的问题。ping 本机 IP这个命令被送到我们计算机所配置的 IP地址,我们的计算机始终都应该对
5、该 Ping命令作出应答,如果没有,则表示本地配置或安装存在问题。出现此问题时,局域网用户请断开网络电缆,然后重新发送该命令。如果网线断开后本命令正确,则表示另一台计算机可能配置了相同的 IP地址。ping 局域网内其他 IP这个命令应该离开我们的计算机,经过网卡及网络电缆到达其他计算机,再返回。收到回送应答表明本地网络中的网卡和载体运行正确。但如果收到 0个回送应答,那么表示子网掩码(进行子网分割时,将 IP地址的网络部分与主机部分分开的代码)不正确或网卡配置错误或电缆系统有问题。ping 网关 IP这个命令如果应答正确,表示局域网中的网关路由器正在运行并能够作出应答。ping 远程 IP如
6、果收到 4个应答,表示成功的使用了缺省网关。对于拨号上网用户则表示能够成功的访问 Internet(但不排除 ISP的 DNS会有问题)。ping localhostlocalhost 是个作系统的网络保留名,它是 127.0.0.1的别名,每太计算机都应该能够将该名字转换成该地址。如果没有做到这一带内,则表示主机文件(/Windows/host)中存在问题。ping (如 天极网)对这个域名执行 Ping 地址,通常是通过 DNS 服务器 如果这里出现故障,则表示 DNS服务器的 IP地址配置不正确或 DNS服务器有故障(对于拨号上网用户,某些 ISP已经不需要设置 DNS服务器了)。顺
7、便说一句:我们也可以利用该命令实现域名对 IP地址的转换功能。如果上面所列出的所有 Ping命令都能正常运行,那么我们对自己的计算机进行本地和远程通信的功能基本上就可以放心了。但是,这些命令的成功并不表示我们所有的网络配置都没有问题,例如,某些子网掩码错误就可能无法用这些方法检测到。2、Ping 命令的常用参数选项ping IP t连续对 IP地址执行 Ping命令,直到被用户以 Ctrl+C中断。ping IP -l 3000指定 Ping命令中的数据长度为 3000字节,而不是缺省的 32字节。ping IP n执行特定次数的 Ping命令。Netstat 命令的使用技巧二、Netstat
8、 命令的使用技巧Netstat 用于显示与 IP、TCP、UDP 和 ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。如果我们的计算机有时候接受到的数据报会导致出错数据删除或故障,我们不必感到奇怪,TCP/IP 可以容许这些类型的错误,并能够自动重发数据报。但如果累计的出错情况数目占到所接收的 IP数据报相当大的百分比,或者它的数目正迅速增加,那么我们就应该使用 Netstat查一查为什么会出现这些情况了。1、netstat 的一些常用选项netstat s本选项能够按照各个协议分别显示其统计数据。如果我们的应用程序(如Web浏览器)运行速度比较慢,或者不能显示 Web页之类
9、的数据,那么我们就可以用本选项来查看一下所显示的信息。我们需要仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。netstat e本选项用于显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量)。netstat r本选项可以显示关于路由表的信息,类似于后面所讲使用 route print命令时看到的 信息。除了显示有效路由外,还显示当前有效的连接。netstat a本选项显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLIS
10、HED),也包括监听连接请求(LISTENING)的那些连接。netstat n显示所有已建立的有效连接。下面是 netstat 的输出示例:C:netstat -eInterface StatisticsReceivedSentBytes399583794047224622Unicast packets120099131015Non-unicast packets7579544 3823Discards 0 0Errors 0 0Unknown protocols363054211C:netstat -aActive ConnectionsProto Local AddressForeign
11、 Address StateTCPCORP1:1572 172.16.48.10:nbsession ESTABLISHEDTCPCORP1:1589 172.16.48.10:nbsession ESTABLISHEDTCPCORP1:1606 172.16.105.245:nbsession ESTABLISHEDTCPCORP1:1632 172.16.48.213:nbsessionESTABLISHEDTCPCORP1:1659 172.16.48.169:nbsessionESTABLISHEDTCPCORP1:1714 172.16.48.203:nbsessionESTABLI
12、SHEDTCPCORP1:1719 172.16.48.36:nbsession ESTABLISHEDTCPCORP1:1241 172.16.48.101:nbsessionESTABLISHEDUDPCORP1:1025 *:*UDPCORP1:snmp *:*UDPCORP1:nbname *:*UDPCORP1:nbdatagram *:*UDPCORP1:nbname *:*UDPCORP1:nbdatagram *:*C:netstat -sIP StatisticsPackets Received = 5378528Received Header Errors = 738854
13、Received Address Errors= 23150Datagrams Forwarded= 0Unknown Protocols Received = 0Received Packets Discarded = 0Received Packets Delivered = 4616524Output Requests= 132702Routing Discards = 157Discarded Output Packets = 0Output Packet No Route = 0Reassembly Required= 0Reassembly Successful = 0Reasse
14、mbly Failures =Datagrams Successfully Fragmented = 0Datagrams Failing Fragmentation = 0Fragments Created = 0ICMP StatisticsReceivedSentMessages 693 4Errors 0 0Destination Unreachable685 0Time Exceeded0 0Parameter Problems 0 0Source Quenches0 0Redirects0 0Echoes 4 0Echo Replies 0 4Timestamps 0 0Times
15、tamp Replies0 0Address Masks0 0Address Mask Replies 0 0TCP StatisticsActive Opens = 597Passive Opens= 135Failed Connection Attempts = 107Reset Connections= 91Current Connections= 8Segments Received= 106770Segments Sent= 118431Segments Retransmitted = 461UDP StatisticsDatagrams Received = 4157136No P
16、orts = 351928ReceiveErrors = 2Datagrams Sent = 138092、Netstat 的妙用经常上网的人一般都使用 ICQ的,不知道我们有没有被一些讨厌的人骚扰,想投诉却又不知从和下手?其实,我们只要知道对方的 IP,就可以向他所属的ISP投诉了。但怎样才能通过 ICQ知道对方的 IP呢?如果对方在设置 ICQ时选择了不显示 IP地址,那我们是无法在信息栏中看到的。其实,我们只需要通过Netstat就可以很方便的做到这一点:当他通过 ICQ或其他的工具与我们相连时(例如我们给他发一条 ICQ信息或他给我们发一条信息),我们立刻在 DOS 命令提示符下输入
17、netstat -n或 netstat -a就可以看到对方上网时所用的 IP或 ISP域名了,甚至连所用 Port都完全暴露了。IPConfig命令的使用技巧三、IPConfig 命令的使用技巧IPConfig 实用程序和它的等价图形用户界面-Windows 95/98 中的WinIPCfg可用于显示当前的 TCP/IP配置的设置值。这些信息一般用来检验人工配置的 TCP/IP设置是否正确。但是,如果我们的计算机和所在的局域网使用了动态主机配置协议(DHCP),这个程序所显示的信息也许更加实用。这时,IPConfig可以让我们了解自己的计算机是否成功的租用到一个 IP地址,如果租用到则可以了解
18、它目前分配到的是什么地址。了解计算机当前的 IP地址、子网掩码和缺省网关实际上是进行测试和故障分析的必要项目。1、IPConfig 最常用的选项ipconfig当使用 IPConfig时不带任何参数选项,那么它为每个已经配置了的接口显示 IP地址、子网掩码和缺省网关值。ipconfig /all当使用 all选项时,IPConfig 能为 DNS和 WINS服务器显示它已配置且所要使用的附加信息(如 IP地址等),并且显示内置于本地网卡中的物理地址(MAC)。如果 IP地址是从 DHCP服务器租用的,IPConfig 将显示 DHCP服务器的 IP地址和租用地址预计失效的日期。ipconfig
19、 /release 和 ipconfig /renew这是两个附加选项,只能在向 DHCP服务器租用其 IP地址的计算机上起作用。如果我们输入 ipconfig /release,那么所有接口的租用 IP地址便重新交付给 DHCP服务器(归还 IP地址)。如果我们输入 ipconfig /renew,那么本地计算机便设法与 DHCP服务器取得联系,并租用一个 IP地址。请注意,大多数情况下网卡将被重新赋予和以前所赋予的相同的 IP地址。下面的范例是 ipconfig /all 命令输出,该计算机配置成使用 DHCP 服务器动态配置 TCP/IP,并使用 WINS 和 DNS 服务器解析名称。W
20、indows 2000 IP ConfigurationNode Type. . . . . . . . : HybridIP Routing Enabled. . . . : NoWINS Proxy Enabled. . . . : NoEthernet adapter Local Area Connection:Host Name. . . . . . . . : DNS Servers . . . . . . . : 10.1.0.200Description. . . . . . . : 3Com 3C90x Ethernet AdapterPhysical Address. . .
21、 . . : 00-60-08-3E-46-07DHCP Enabled. . . . . . . : YesAutoconfiguration Enabled.: YesIP Address. . . . . . . . . : 192.168.0.112Subnet Mask. . . . . . . . : 255.255.0.0Default Gateway. . . . . . : 192.168.0.1DHCP Server. . . . . . . . : 10.1.0.50Primary WINS Server. . . . : 10.1.0.101Secondary WINS
22、 Server. . . : 10.1.0.102Lease Obtained. . . . . . : Wednesday, September 02, 1998 10:32:13 AMLease Expires. . . . . . : Friday, September 18, 1998 10:32:13 AM如果我们使用的是 Windows 95/98,那么我们应该更习惯使用 winipcfg而不是 ipconfig,因为它是一个图形用户界面,而且所显示的信息与 ipconfig相同,并且也提供发布和更新动态 IP地址的选项。ARP的使用技巧四、ARP(地址转换协议)的使用技巧ARP
23、是一个重要的 TCP/IP协议,并且用于确定对应 IP地址的网卡物理地址。实用 arp命令,我们能够查看本地计算机或另一台计算机的 ARP高速缓存中的当前内容。此外,使用 arp命令,也可以用人工方式输入静态的网卡物理/IP地址对,我们可能会使用这种方式为缺省网关和本地服务器等常用主机进行这项作,有助于减少网络上的信息量。按照缺省设置,ARP 高速缓存中的项目是动态的,每当发送一个指定地点的数据报且高速缓存中不存在当前项目时,ARP 便会自动添加该项目。一旦高速缓存的项目被输入,它们就已经开始走向失效状态。例如,在 Windows NT/2000网络中,如果输入项目后不进一步使用,物理/IP
24、地址对就会在 2至10分钟内失效。因此,如果 ARP高速缓存中项目很少或根本没有时,请不要奇怪,通过另一台计算机或路由器的 ping命令即可添加。所以,需要通过 arp命令查看高速缓存中的内容时,请最好先 ping 此台计算机(不能是本机发送ping命令)。ARP 常用命令选项:arp -a 或 arp g用于查看高速缓存中的所有项目。-a 和-g 参数的结果是一样的,多年来-g一直是 UNIX平台上用来显示 ARP高速缓存中所有项目的选项,而 Windows用的是 arp -a(-a 可被视为 all,即全部的意思),但它也可以接受比较传统的-g选项。arp -a IP如果我们有多个网卡,那
25、么使用 arp -a加上接口的 IP地址,就可以只显示与该接口相关的 ARP缓存项目。arp -s IP 物理地址我们可以向 ARP高速缓存中人工输入一个静态项目。该项目在计算机引导过程中将保持有效状态,或者在出现错误时,人工配置的物理地址将自动更新该项目。arp -d IP使用本命令能够人工删除一个静态项目。例如我们在命令提示符下,键入 Arp a;如果我们使用过 Ping 命令测试并验证从这台计算机到 IP 地址为 10.0.0.99 的主机的连通性,则 ARP 缓存显示以下项: Interface:10.0.0.1 on interface 0x1Internet AddressPhysical AddressType10.0.0.99 00-e0-98-00-7c-dc dynamic在此例中,缓存项指出位于 10.0.0.99 的远程主机解析成 00-e0-98-00-7c-dc 的媒体访问控制地址,它是在远程计算机的网卡硬件中分配的。媒体访问控制地址是计算机用于与网络上远程 TCP/IP 主机物理通讯的地址。至此我们可以用 ipconfig和 ping命令来查看自己的网络配置并判断是否