【发布时间】:2014-02-10 07:18:07
【问题描述】:
我正在使用批处理文件设置 LAN ping 测试。我的代码对网站很有效,但对本地 IP 来说却很奇怪。我正在 3 台我知道其 IP 的计算机上运行 ping 测试。无论我拔掉哪一个,当我运行下面的代码时,所有三台计算机上的 %errorlevel% 始终为 0。它永远不会像在网站上那样等于 1。我该如何解决这个问题?
@echo off
cls
Set IPaddress=www.google.com
PING %IPaddress% -n 1
call :PingTest
Set IPaddress=www.yahoo.com
PING %IPaddress% -n 1
call :PingTest
Set IPaddress=www.unabletoping.com
PING %IPaddress% -n 1
call :PingTest
pause > null
exit
:PingTest
IF %errorlevel% EQU 1 (echo "Server is Offline") else (GOTO:EOF)
【问题讨论】:
-
是局域网上的每台计算机都分配了一个静态 IP 还是动态的? DHCP 开启了吗?如果是这样,我建议使用计算机名称而不是其 IP 地址。
ping <computername>这样您就可以查找特定的计算机,而不是分配了该 IP 地址的任何设备。 -
动态测试,我计划运行的将是静态测试。我想使用这些 IP,以防在任何时间点出现名称解析问题。
标签: batch-file ping