ipconfig ping  命令的各种参数
Ipconfig  细解  
Ipconfig
是调试计算机网络的常用命令,通常大家使用它显示计算机中网络适配器的 IP 地址、子网掩码及默认网关。其实这只是 Ipconfig 的不带参数用法,而它的带参数用法,在网络应用中也是相当不错的。  
                                       
  一、参数说明 
1
/all 
显示所有网络适配器(网卡、拨号连接等)的完整 TCP/IP 配置信息。与不带参数的用法相比,它的信息更全更多,如 IP 是否动态分配、显示网卡的物理地址等。  
2
/batch  文件名  
Ipconfig 所显示信息以文本方式写入指定文件。此参数可用来备份本机的网络配置。  
3
/release_all /release N 
释放全部(或指定)适配器的由  DHCP 分配的动态 IP  地址。此参数适用于 IP 地址非静态分配的网卡,通常和下文的 renew 参数结合使用。  
4
ipconfig /renew_all ipconfig /renew N 
为全部(或指定)适配器重新分配 IP 地址。此参数同样仅适用于 IP 地址非静态分配的网卡,通常和上文的 release 参数结合使用。  
                                     
   二、应用实例 
1 、备份网络设置  
ipconfig /batch bak-netcfg 
说明:将有关网络配置的信息备份到文件 bak-netcfg 中。  
2
、为网卡动态分配新地址  
ipconfig /release 1 
说明:去除网卡(适配器 1 )的动态 IP 地址。  
ipconfig /renew 1 
ping 
命令的用法大全  
ping
的高级用法  
对于 Windows ping 命令相信大家已经再熟悉不过了,但是能把 ping 的功能发挥到最大的人却并不是很多,当然我也并不是说我可以让 ping 发挥最大的功能,我也只不过经常用 ping 这个工具,也总结了一些小经验,现在和大家分享一下。  
现在我就参照 ping 命令的帮助说明来给大家说说我使用 ping 时会用到的技巧, ping 只有在安装了 TCP/IP 协议以后才可以使用:  
ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [-j computer-list] 
 [-k computer-list] [-w timeout] destination-list 
Options: 
-t <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />Ping 
the specified host until stopped.To see statistics and continue – <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

无效  Control-Break;To stop -  无效  Control-C. 
不停的 ping 地方主机,直到你按下 Control-C  
此功能没有什么特别的技巧,不过可以配合其他参数使用,将在下面提到。  


-a Resolve addresses to hostnames. 
解析计算机 NetBios 名。  
示例: C: >ping -a 192.168.1.21 
Pinging iceblood.yofor.com [192.168.1.21] with 32 bytes of data: 
Reply from 192.168.1.21: bytes=32 time<10ms TTL=254 
Reply from 192.168.1.21: bytes=32 time<10ms TTL=254 
Reply from 192.168.1.21: bytes=32 time<10ms TTL=254 
Reply from 192.168.1.21: bytes=32 time<10ms TTL=254 
Ping statistics for 192.168.1.21: 
Packets: Sent = 4, Received = 4, Lost = 0 (0
 loss),Approximate round trip times in milli-seconds: 
Minimum = 0ms, Maximum = 0ms, Average = 0ms 
从上面就可以知道 IP 192.168.1.21 的计算机 NetBios 名为 iceblood.yofor.com  

-n count Number of echo requests to send. 
发送 count 指定的 Echo 数据包数。  
在默认情况下,一般都只发送四个数据包,通过这个命令可以自己定义发送的个数,对衡量网络速度很有帮助,比如我想测试发送 50 个数据包的返回的平均时间为多少,最快时间为多少,最慢时间为多少就可以通过以下获知:  
C:
>ping -n 50 202.103.96.68 
Pinging 202.103.96.68 with 32 bytes of data: 
Reply from 202.103.96.68: bytes=32 time=50ms TTL=241 
Reply from 202.103.96.68: bytes=32 time=50ms TTL=241 
Reply from 202.103.96.68: bytes=32 time=50ms TTL=241 
Request timed out. 
……………… 
Reply from 202.103.96.68: bytes=32 time=50ms TTL=241 
Reply from 202.103.96.68: bytes=32 time=50ms TTL=241 
Ping statistics for 202.103.96.68: 
Packets: Sent = 50, Received = 48, Lost = 2 (4
 loss),Approximate round trip times in milli-seconds: 
Minimum = 40ms, Maximum = 51ms, Average = 46ms 
从以上我就可以知道在给 202.103.96.68 发送 50 个数据包的过程当中,返回了 48 个,其中有两个由于未知原因丢失,这 48 个数据包当中返回速度最快为 40ms ,最慢为 51ms ,平均速度为 46ms  

-l size Send buffer size. 
定义 echo 数据包大小。  
在默认的情况下 windows ping 发送的数据包大小为 32byt ,我们也可以自己定义它的大小,但有一个大小的限制,就是最大只能发送 65500byt ,也许有人会问为什么要限制到  65500byt ,因为 Windows 系列的系统都有一个安全漏洞(也许还包括其他系统)就是当向对方一次发送的数据包大于或等于 65532 时,对方就很有可能挡机,所以微软公司为了解决这一安全漏洞于是限制了 ping 的数据包大小。虽然微软公司已经做了此限制,但这个参数配合其他参数以后危害依然非常强大,比如我们就可以通过配合 -t 参数来实现一个带有***性的命令:(以下介绍带有危险性,仅用于试验,请勿轻易施于别人机器上,否则后果自负)  
C:
>ping -l 65500 -t 192.168.1.21 
Pinging 192.168.1.21 with 65500 bytes of data: 
Reply from 192.168.1.21: bytes=65500 time<10ms TTL=254 
Reply from 192.168.1.21: bytes=65500 time<10ms TTL=254 
……………… 
这样它就会不停的向 192.168.1.21 计算机发送大小为 65500byt 的数据包,如果你只有一台计算机也许没有什么效果,但如果有很多计算机那么就可以使对方完全瘫痪,我曾经就做过这样的试验,当我同时使用 10 台以上计算机 ping 一台 Win2000Pro 系统的计算机时,不到 5 分钟对方的网络就已经完全瘫痪,网络严重堵塞, HTTP FTP 服务完全停止,由此可见威力非同小可。  

-f Set Don't Fragment flag in packet. 
在数据包中发送 不要分段 标志。  
在一般你所发送的数据包都会通过路由分段再发送给对方,加上此参数以后路由就不会再分段处理。


-i TTL Time To Live. 
指定 TTL 值在对方的系统里停留的时间。  
此参数同样是帮助你检查网络运转情况的。  


-v TOS 
无效  Of Service. 
服务类型 字段设置为  tos  指定的值。  


-r count Record route for count hops. 
记录路由 字段中记录传出和返回数据包的路由。  
在一般情况下你发送的数据包是通过一个个路由才到达对方的,但到底是经过了哪些路由呢?通过此参数就可以设定你想探测经过的路由的个数,不过限制在了 9 个,也就是说你只能跟踪到 9 个路由,如果想探测更多,可以通过其他命令实现,我将在以后的文章中给大家讲解。以下为示例:  
C:
>ping -n 1 -r 9 202.96.105.101  (发送一个数据包,最多记录 9 个路由)  

Pinging 202.96.105.101 with 32 bytes of data: 


Reply from 202.96.105.101: bytes=32 time=10ms TTL=249 
Route: 202.107.208.187 -> 
202.107.210.214 -> 
61.153.112.70 -> 
61.153.112.89 -> 
202.96.105.149 -> 
202.96.105.97 -> 
202.96.105.101 -> 
202.96.105.150 -> 
61.153.112.90 

Ping statistics for 202.96.105.101: 
Packets: Sent = 1, Received = 1, Lost = 0 (0
 loss), 
Approximate round trip times in milli-seconds: 
Minimum = 10ms, Maximum = 10ms, Average = 10ms 
从上面我就可以知道从我的计算机到 202.96.105.101 一共通过了 202.107.208.187  202.107.210.214 , 61.153.112.70 , 61.153.112.89 , 202.96.105.149 , 202.96.105.97 这几个路由。  

-s count Timestamp for count hops. 
指定  count  指定的跃点数的时间戳。  
此参数和 -r 差不多,只是这个参数不记录数据包返回所经过的路由,最多也只记录 4 个。  

-j host-list Loose source route along host-list. 
利用  computer-list  指定的计算机列表路由数据包。连续计算机可以被中间网关分隔(路由稀疏源) IP  允许的最大数量为  9  

-k host-list Strict source route along host-list. 
利用  computer-list  指定的计算机列表路由数据包。连续计算机不能被中间网关分隔(路由严格源) IP  允许的最大数量为  9  

-w timeout Timeout in milliseconds to wait for each reply. 
指定超时间隔,单位为毫秒。  
此参数没有什么其他技巧。  

ping
命令的其他技巧:在一般情况下还可以通过 ping 对方让对方返回给你的 TTL 值大小,粗略的判断目标主机的系统类型是 Windows 系列还是 UNIX/Linux 系列,一般情况下 Windows 系列的系统返回的 TTL 值在 100-130 之间,而 UNIX/Linux 系列的系统返回的 TTL 值在 240-255 之间,当然 TTL 的值在对方的主机里是可以修改的, Windows 系列的系统可以通过修改注册表以下键值实现:  
[HKEY_LOCAL_MACHINE
SYSTEM CurrentControlSet Services Tcpip Parameters] 
"DefaultTTL"=dword:000000ff 
255---FF 
128---80 
64----40 
32----20 
                                 
ping命令的参数详解 
-a 
将目标的机器标识转换为 ip 地址  
-t 
若使用者不人为中断会不断的 ping 下去  
-c count 
要求 ping 命令连续发送数据包,直到发出并接收到 count 个请求  
-d 
为使用的套接字打开调试状态  
-f 
是一种快速方式 ping 。使得 ping 输出数据包的速度和数据包从远程主机返回一样快,或者更快,达到每秒 100 次。在这种方式下,每个请求用一个句点表示。对于每一个响应打印一个空格键。  
-i seconds 
在两次数据包发送之间间隔一定的秒数。不能同 -f 一起使用。  
-n 
只使用数字方式。在一般情况下 ping 会试图把 IP 地址转换成主机名。这个选项要求 ping 打印 IP 地址而不去查找用符号表示的名字。如果由于某种原因无法使用本地 DNS 服务器这个选项就很重要了。  
-p pattern 
拥护可以通过这个选项标识 16 pad 字节,把这些字节加入数据包中。当在网络中诊断与数据有关的错误时这个选项就非常有用。  
-q 
使 ping 只在开始和结束时打印一些概要信息。  
-R 
ICMP RECORD-ROUTE 选项加入到 ECHO_REQUEST 数据包中,要求在数据包中记录路由,这样当数据返回时 ping 就可以把路由信息打印出来。每个数据包只能记录 9 个路由节点。许多主机忽略或者放弃这个选项。  
-r 
使 ping 命令旁路掉用于发送数据包的正常路由表。  
-s packetsize 
使用户能够标识出要发送数据的字节数。缺省是 56 个字符,再加上 8 个字节的 ICMP 数据头,共 64 ICMP 数据字节。  
-v 
使 ping 处于 verbose 方式。它要 ping 命令除了打印 ECHO-RESPONSE 数据包之外,还打印其它所有返回的 ICMP 数据包。  
再次补充  

ping
命令 -- 详细帮助  
校验与远程计算机或本地计算机的连接。只有在安装  TCP/IP  协议之后才能使用该命令。  
ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [-j computer-list] 
 [-k computer-list] [-w timeout] des tination-list 
参数  
-t 
校验与指定计算机的连接,直到用户中断。  
-a 
将地址解析为计算机名。  
-n count 
发送由  count  指定数量的  ECHO  报文,默认值为  4  
-l length 
发送包含由  length  指定数据长度的  ECHO  报文。默认值为  64  字节,最大值为  8192  字节。  
-f 
在包中发送 不分段 标志。该包将不被路由上的网关分段。  
-i ttl 
生存时间 字段设置为  ttl  指定的数值。  
-v tos 
服务类型 字段设置为  tos  指定的数值。  
-r count 
记录路由 字段中记录发出报文和返回报文的路由。指定的  Count  值最小可以是  1 ,最大可以是  9   
-s count 
指定由  count  指定的转发次数的时间邮票。  
-j computer-list 
经过由  computer-list  指定的计算机列表的路由报文。中间网关可能分隔连续的计算机(松散的源路由)。允许的最大  IP  地址数目是  9   
-k computer-list 
经过由  computer-list  指定的计算机列表的路由报文。中间网关可能分隔连续的计算机(严格源路由)。允许的最大  IP  地址数目是  9   
-w timeout 
以毫秒为单位指定超时间隔。  
destination-list 
指定要校验连接的远程计算机。  

关于  Ping  的详细信息  
Ping--
注意  
Ping 
命令通过向计算机发送  ICMP  回应报文并且监听回应报文的返回,以校验与远程计算机或本地计算机的连接。对于每个发送报文,  Ping  最多等待  1  秒,并打印发送和接收把报文的数量。比较每个接收报文和发送报文,以校验其有效性。默认情况下,发送四个回应报文,每个报文包含  64  字节的数据(周期性的大写字母序列)。  
可以使用  Ping  实用程序测试计算机名和  IP  地址。如果能够成功校验  IP  地址却不能成功校验计算机名,则说明名称解析存在问题。这种情况下,要保证在本地  HOSTS  文件中或  DNS 数据库中存在要查询的计算机名。