Ping命令的常用参数选项
Ping是工作在 TCP/IP网络体系结构中应用层的一个服务命令, 主要是向特定的目的主机发送 ICMP(Internet Control Message Protocol 因特网报文控制协议)Echo 请求报文,测试目的站是否可达及了解其有关状态 。
ping 默认是ping 4次,但是如果加入t参数,就是是指永远不停止的ping下去。
扩展资料:
ping127.0.0.1——这个Ping命令被送到本地计算机的IP软件,该命令永不退出该计算机。如果没有做到这一点,就表示TCP/IP的安装或运行存在某些最基本的问题 。
ping本机IP——这个命令被送到你计算机所配置的IP地址,你的计算机始终都应该对该Ping命令做出应答,如果没有,则表示本地配置或安装存在问题。出现此问题时,局域网用户请断开网络电缆,然后重新发送该命令。如果网线断开后,本命令正确,则表示另一台计算机可能配置了相同的IP地址 。
ping局域网内其他IP——这个命令应该离开你的计算机,经过网卡及网络电缆到达其他计算机,再返回。收到回送应答表明本地网络中的网卡和载体运行正确。但如果收到0个回送应答,那么表示子网掩码(进行子网分割时,将IP地址的网络部分与主机部分分开的代码)不正确或网卡配置错误或电缆系统有问题 。
ping网关IP——这个命令如果应答正确,表示局域网中的网关路由器正在运行并能够作出应答 。
参考资料来源:百度百科-ping (网络诊断工具)
温馨提示:答案为网友推荐,仅供参考
第1个回答 推荐于2016-11-06
一.基础级:局域网ping命令用法
1.改变ping的基本设置
ping命令缺省要重复4次,等待时间也比较长,这用于广域网比较合适,在局域网判断一个ip是否存在,一般只要ping 1次足够,而且timeout时间完全可以在100ms以内。
我在自己的PC上建立一个批处理pin.bat代替缺省的ping设置:
@rem pin.bat Createdby Zheng Xiaohui
@ping -n 1 -l 16 -w 100 %1 %2 %3 %4 %5
这命令比缺省的ping快很多,后面加%1等是为了接受命令行参数,这是为了下面的扩展用法准备的。
2.单个网段内的懒人ping
如果你象我一样懒,可以把自己局域网的网络号也写死在批处理文件p.bat里:
@rem p.bat Createdby Zheng Xiaohui
call pin 192.168.1.%1 %2 %3 %4 %5
比如你的mail服务器是192.168.1.2,那么只要输 p 2 即可。
如果你有多个网段,可以在dos环境变量里设一下子网号。
3.游戏玩家的终极懒人ping
如果你的internet 网络连接需要经常检查,可以做一个批处理文件,再把它的
快捷方式放在桌面上,定义一个快捷键。这样你在做任何工作时,随时可以看
一下网络是否通,只要敲一个组合键,而不是要打开dos窗口,输好几条命令,
再关掉此窗口。(当你打网络游戏中突然网络断掉,这时候你需要最快速度确定
网关是否能ping到)
这里要用一个技巧,就是dos命令返回值 %ERRORLEVEL%,当dos命令执行成功时,一般来说环境变量%ERRORLEVEL%会赋值0,失败则为1,我们利用这个方法,让脚本自己逐级查找网络连接问题。
@rem pinggw.bat Createdby Zheng Xiaohui
@echo off
ping -n 1 192.168.1.1 |find "Reply"
rem 如果这一步成功说明到本地网关的连接没有问题。
if %ERRORLEVEL%==1 goto end
ping -n 1 202.96.199.133 |find "Reply"
rem 这是上海电信局的DNS,如果这一步成功说明到本地ISP的连接没有问题。
if %ERRORLEVEL%==1 goto end
ping -n 1 |find "Reply"
rem 如果这一步成功说明本地ISP和internet连接没有问题,而且DNS没有问题。
:end
rem pause
sleep 2
exit
sleep 2 停下2秒钟让你看清楚,然后自己exit退出,不要麻烦你关窗口。
注意:sleep是windows2000 资源包的扩展命令,如果没有装就用pause代替吧。
二. 网络管理员常用ping命令技巧
1.入门级:网络连接监视日志
我在一个项目里碰到交换机连接不稳定的情况,每天会随机中断几分钟,
为了捕捉这个问题,做一个带时间显示的批处理文件pingtime.bat:
@rem pingtime.bat Createdby Zheng Xiaohui
@echo off
echo "Begin ----------------------------"
rem time <cr.txt |find "current"
time /t
pin %1 %2 %3 %4 %5 | find "Reply"
rem sleep 10
其中显示时间命令有两个版本,在windows2000上用time/t 命令即可,
在win98上,要在当前目录下创建只有一个空回车的cr.txt文件。
然后再做一个批处理文件来循环调用pingtime.bat并写入日志:
@rem pinglog.bat Createdby Zheng Xiaohui
@echo off
:begin
call pingtime 192.168.1.1>>pingtime.log
goto begin
2.中级:搜索当前网段内的所有活动ip
缺乏良好管理的网络(我们大多数人的实际环境),网管经常搞不清
有多少机器在运行,或者已经有多少个ip正在使用。
如何在5分钟内拿到一个列表?只要一条dos命令即可:
@rem pingall.bat Createdby Zheng Xiaohui
@for /L %%A in (1,1,254) do pin 192.168.1.%%A |find "Reply">> pingall.log
顺便说一句,windows2000的dos命令做了很多扩展,虽然比unix shell还差
很多,可是已经能做一些复杂的脚本,而且在网络方面还有netsh命令集,值得好好研究。
3.变态用法:搜索当前网段内所有的ip地址/mac对照表
首先我们做一个批处理,ping 1个ip地址,如果有reply,就调用arp -a命令,查看当前arp缓存里的ip-mac列表,并且再用dos筛选命令find找出当前目标ip地址。
@rem arplist.bat Createdby Zheng Xiaohui
@echo off
call pin %1 | find "Reply">nul
if %ERRORLEVEL%==0 goto arplist
goto end
:arplist
arp -a |find "%1"
:end
然后用类似上一节的方法做一个子网ip地址循环脚本来调用arplist.bat。
@rem arpall.bat Createdby Zheng Xiaohui
@for /L %%A in (1,1,254) do arplist 192.168.1.%%A >> arpall.log
注意:这个脚本不太完善,比如用192.168.1.1过滤arp表时,192.168.1.1**都会输出,而且不能处理本机ip,所以做好后要手工修改一下。
参考教程
本回答被提问者采纳
1.改变ping的基本设置
ping命令缺省要重复4次,等待时间也比较长,这用于广域网比较合适,在局域网判断一个ip是否存在,一般只要ping 1次足够,而且timeout时间完全可以在100ms以内。
我在自己的PC上建立一个批处理pin.bat代替缺省的ping设置:
@rem pin.bat Createdby Zheng Xiaohui
@ping -n 1 -l 16 -w 100 %1 %2 %3 %4 %5
这命令比缺省的ping快很多,后面加%1等是为了接受命令行参数,这是为了下面的扩展用法准备的。
2.单个网段内的懒人ping
如果你象我一样懒,可以把自己局域网的网络号也写死在批处理文件p.bat里:
@rem p.bat Createdby Zheng Xiaohui
call pin 192.168.1.%1 %2 %3 %4 %5
比如你的mail服务器是192.168.1.2,那么只要输 p 2 即可。
如果你有多个网段,可以在dos环境变量里设一下子网号。
3.游戏玩家的终极懒人ping
如果你的internet 网络连接需要经常检查,可以做一个批处理文件,再把它的
快捷方式放在桌面上,定义一个快捷键。这样你在做任何工作时,随时可以看
一下网络是否通,只要敲一个组合键,而不是要打开dos窗口,输好几条命令,
再关掉此窗口。(当你打网络游戏中突然网络断掉,这时候你需要最快速度确定
网关是否能ping到)
这里要用一个技巧,就是dos命令返回值 %ERRORLEVEL%,当dos命令执行成功时,一般来说环境变量%ERRORLEVEL%会赋值0,失败则为1,我们利用这个方法,让脚本自己逐级查找网络连接问题。
@rem pinggw.bat Createdby Zheng Xiaohui
@echo off
ping -n 1 192.168.1.1 |find "Reply"
rem 如果这一步成功说明到本地网关的连接没有问题。
if %ERRORLEVEL%==1 goto end
ping -n 1 202.96.199.133 |find "Reply"
rem 这是上海电信局的DNS,如果这一步成功说明到本地ISP的连接没有问题。
if %ERRORLEVEL%==1 goto end
ping -n 1 |find "Reply"
rem 如果这一步成功说明本地ISP和internet连接没有问题,而且DNS没有问题。
:end
rem pause
sleep 2
exit
sleep 2 停下2秒钟让你看清楚,然后自己exit退出,不要麻烦你关窗口。
注意:sleep是windows2000 资源包的扩展命令,如果没有装就用pause代替吧。
二. 网络管理员常用ping命令技巧
1.入门级:网络连接监视日志
我在一个项目里碰到交换机连接不稳定的情况,每天会随机中断几分钟,
为了捕捉这个问题,做一个带时间显示的批处理文件pingtime.bat:
@rem pingtime.bat Createdby Zheng Xiaohui
@echo off
echo "Begin ----------------------------"
rem time <cr.txt |find "current"
time /t
pin %1 %2 %3 %4 %5 | find "Reply"
rem sleep 10
其中显示时间命令有两个版本,在windows2000上用time/t 命令即可,
在win98上,要在当前目录下创建只有一个空回车的cr.txt文件。
然后再做一个批处理文件来循环调用pingtime.bat并写入日志:
@rem pinglog.bat Createdby Zheng Xiaohui
@echo off
:begin
call pingtime 192.168.1.1>>pingtime.log
goto begin
2.中级:搜索当前网段内的所有活动ip
缺乏良好管理的网络(我们大多数人的实际环境),网管经常搞不清
有多少机器在运行,或者已经有多少个ip正在使用。
如何在5分钟内拿到一个列表?只要一条dos命令即可:
@rem pingall.bat Createdby Zheng Xiaohui
@for /L %%A in (1,1,254) do pin 192.168.1.%%A |find "Reply">> pingall.log
顺便说一句,windows2000的dos命令做了很多扩展,虽然比unix shell还差
很多,可是已经能做一些复杂的脚本,而且在网络方面还有netsh命令集,值得好好研究。
3.变态用法:搜索当前网段内所有的ip地址/mac对照表
首先我们做一个批处理,ping 1个ip地址,如果有reply,就调用arp -a命令,查看当前arp缓存里的ip-mac列表,并且再用dos筛选命令find找出当前目标ip地址。
@rem arplist.bat Createdby Zheng Xiaohui
@echo off
call pin %1 | find "Reply">nul
if %ERRORLEVEL%==0 goto arplist
goto end
:arplist
arp -a |find "%1"
:end
然后用类似上一节的方法做一个子网ip地址循环脚本来调用arplist.bat。
@rem arpall.bat Createdby Zheng Xiaohui
@for /L %%A in (1,1,254) do arplist 192.168.1.%%A >> arpall.log
注意:这个脚本不太完善,比如用192.168.1.1过滤arp表时,192.168.1.1**都会输出,而且不能处理本机ip,所以做好后要手工修改一下。
参考教程
本回答被提问者采纳
第2个回答 2019-08-02
-t是ping的参数,ping ip -t意思是不停的ping某个IP,直到你按下Control-C。