Board logo

标题: [网络连接] 批处理怎么实现两个无线路由间其中一个外网不通就自动切换到另一个? [打印本页]

作者: wfndh    时间: 2015-11-10 11:34     标题: 批处理怎么实现两个无线路由间其中一个外网不通就自动切换到另一个?

大家好,请问大神怎么实现两个无线路由间其中一个外网不通的情况下就自动切换到另一个无线路路由?就是我家里有一条电信的宽带接了一个无线路由,一台苹果笔记本,用无线连接,还有一个3G路由,就是防止电信的宽带出现故障上不了外网,才用来当后备用的,现在就是想请教下大家怎么才能做到用批处理去PING电信宽带的地址或是PING任何一个外网地址,如果不通,就说明电信的宽带上不了外网,就会自动切换到这个3G路由呢?就是无人值守的,因为长时间不在家里的,电脑要开启外网有工作需要的,所以请大神帮帮忙了,
作者: wfndh    时间: 2015-11-10 11:34

大神我在这先谢谢了
作者: 依山居    时间: 2015-11-10 15:48

本帖最后由 依山居 于 2015-11-10 16:54 编辑

其实是挺难的一个问题。
网络故障有很多种,比如本地网络自己的各种问题,电脑故障,路由的问题,DNS解析问题,偶尔的机率的某个网段问题,可能就是你ping的网站出了问题。
作者: flyinnet9    时间: 2015-11-10 17:43

windows系统:
netsh wlan connect name=XXXXXXX ssid=XXXXXXXX interface="XXXXXXXX"

苹果的不知道
作者: wfndh    时间: 2015-11-10 22:50

回复 4# flyinnet9


    是无人值守的啊,苹果电脑是win系统的,请问怎么写一个ping某个网站不通时自动切换到另一个无线路由呢?需要时时检测ping的网站通不通的,不通的话就要切换另一个无线路由。
作者: wfndh    时间: 2015-11-10 22:52

回复 3# 依山居


    我只需ping某个网站,不通时切换到另一个无线路由,需要后台时时检测的
作者: 依山居    时间: 2015-11-11 05:53

用curl 或者wget 获取网页内容。取不到则可以认为是网络故障。
作者: wfndh    时间: 2015-11-11 08:36

回复 7# 依山居


    这位大哥麻烦给我写个完整的命令吧,
作者: 依山居    时间: 2015-11-11 08:52

回复 8# wfndh


    自己学,自己查资料自己写。
作者: 依山居    时间: 2015-11-16 22:23

curl只返回http状态码的方法(windows cmd或者批处理)
http://www.bathome.net/thread-37771-1-1.html

批处理命令netsh wlan获取可见的无线网络连接列表
http://www.bathome.net/redirect. ... o=lastpost#lastpost
  1. ::打不开百度,状态码不是200就连接到wifi EE
  2. curl -sL -w "%{http_code}" "www.baidu.com" -o /dev/null|find "200"||netsh wlan connect EE
复制代码

作者: 依山居    时间: 2015-11-16 22:24

  1. o( ̄▽ ̄)o 2015/11/16 周一22:23:48.44 <( ̄︶ ̄)>
  2. c:\>curl -sL -w "%{http_code}" "www.baidu.com" -o /dev/null|find "200"||netsh wlan connect EE
  3. 已成功完成连接请求。
复制代码

作者: wfndh    时间: 2015-11-24 14:39

回复 11# 依山居


    我要实现的是60秒自动PING下,如果不通就切换,要加上什么代码呢,
作者: DAIC    时间: 2015-11-24 14:48

回复 12# wfndh


放在任务计划里面,1分钟执行1次。
BAT死循环的方式太浪费资源。
作者: 依山居    时间: 2015-11-24 16:55

回复 13# DAIC


    没事。小意思。我经常开ping 连续好几天不关机。
作者: DAIC    时间: 2015-11-24 20:23

回复 14# 依山居


    《论运维的自我修养》




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2