检查internet链接的简单vbscript脚本';如果主电源断开,则切换至备用连接

检查internet链接的简单vbscript脚本';如果主电源断开,则切换至备用连接,vbscript,connection,backup,Vbscript,Connection,Backup,我需要为SOHO环境中的互联网gw提出一个简单的解决方案。它有2个互联网连接-主要通过adsl链接和备份通过USB 3G调制解调器。这两个连接都导出标准PPP接口,因此可以通过命令行或脚本轻松地打开/关闭它们。脚本必须能够: 检查主互联网连接是否仍然可用,例如,每30分钟检查一次 秒 如果它已经连续10次不可用(即 意味着,在约300秒的时间内,必须断开主连接(如果需要 它仍然连接),并尝试重新连接它 如果(2)无法解决问题,则必须断开主电源 连接(再次连接,如果其已连接)并继续转动 在后备控制

我需要为SOHO环境中的互联网gw提出一个简单的解决方案。它有2个互联网连接-主要通过adsl链接和备份通过USB 3G调制解调器。这两个连接都导出标准PPP接口,因此可以通过命令行或脚本轻松地打开/关闭它们。脚本必须能够:

  • 检查主互联网连接是否仍然可用,例如,每30分钟检查一次 秒
  • 如果它已经连续10次不可用(即 意味着,在约300秒的时间内,必须断开主连接(如果需要 它仍然连接),并尝试重新连接它
  • 如果(2)无法解决问题,则必须断开主电源 连接(再次连接,如果其已连接)并继续转动 在后备控制室
  • 如果(3)成功进行,则必须定期进行 (比如说,每小时)试着切换回主conn-n 确定它仍然不可用,如果不可用,则返回到 再次备份。如果是,那就呆在主一号
  • 能够在简单的文本日志文件中镜像上述所有转换

  • 我可以借用一些建议和有用的代码片段来简化这些任务吗?

    使用下面的脚本,您可以检查连接是否正常,添加一些睡眠和循环,就可以了

    Function ExecPing(strTarget)
      Set objShell = CreateObject("WScript.Shell")
      Set objExec = objShell.Exec("ping -n 2 -w 1000 " & strTarget)
      strPingResults = LCase(objExec.StdOut.ReadAll)
      If InStr(strPingResults, "reply from") Then 
        WScript.Echo VbCrLf & strTarget & " responded to ping."
        ExecPing = True
      Else
        WScript.Echo VbCrLf & strTarget & " did not respond to ping."
        ExecPing = False
      End If
    End Function
    
    ExecPing inputbox( "Give the ip/unc/url to ping:")
    

    嗯,彼得,那会有帮助的。