[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络连接] 求助批处理想弄一个网络通断检测。

有个客户使用电信的专线,但是有点另类的是路由器不在客户内网,而是直接在电信机房。经常出现掉线,并且时间只持续1分钟左右,几乎遇不到现场。所以很棘手不好判断问题。
现在我的思路是,弄一个批处理一直运行着,这个批处理是ping外网地址,比如DNS。如果不通的时候再去ping路由器。
我想先判断出来断网时客户到电信这条链路通不通,如果不通,那问题是客户到电信,如果通,那就是电信自身问题(比如路由)。逐步排查。

知道大概怎么写,但好久没弄生疏了,求大神帮忙。

我估计是大概是

ping DNS findstr|***
通的str就一直ping
不通的str就换路由地址ping

DNS是222.172.200.68
路由地址是192.168.8.254

想实现的就是当外网地址不通时检测路由地址是否通 检测路由地址只需要ping个半分钟左右 也就是-n 30 然后把结果输出文本后直接打开文本 一目了然

Windows
  1. tracert DNS
复制代码
Linux
  1. traceroute DNS
复制代码
#&cls&@powershell "Invoke-Expression ([Io.File]::ReadAllText('%~0',[Text.Encoding]::UTF8))" &pause&exit

TOP

本帖最后由 ivor 于 2020-10-20 21:25 编辑
  1. @echo off
  2. for /f "tokens=2 delims=:" %%a in ('ipconfig ^| findstr "默认网关"') do (
  3. set gateway=%%a
  4. if %%a neq "" goto loop
  5. )
  6. :loop
  7. title 正在测试DNS线路
  8. ping 222.172.200.68 || (title 正在测试网关线路 & ping %gateway% -t)
  9. goto :loop
复制代码
#&cls&@powershell "Invoke-Expression ([Io.File]::ReadAllText('%~0',[Text.Encoding]::UTF8))" &pause&exit

TOP

回复 3# ivor


    谢谢!

TOP

返回列表