linux – Bash脚本(或多或少)可靠地检查Internet是否启动

我需要一个 Bash(或一个简单的shell)脚本来放置一个cronjob,每一分钟检查互联网是否启动.

这是我怎么做到的

#! /bin/sh

host1=google.com
host2=wikipedia.org
curr_date=`date +"%Y%m%d%H%M"`

echo -n "${curr_date};"
((ping -w5 -c3 $host1 || ping -w5 -c3 $host2) > /dev/null 2>&1) && 
echo "up" || (echo "down" && exit 1)

你会怎么做?你会ping哪些主机?

澄清:

>“互联网起来”,我的意思是我的互联网连接.
>通过“up”,我的意思是有可用的连接(如果我们正在谈论DNS正在关闭或连接真的很慢[关于超时的-w],这并不重要).这也是为什么我没有包括任何IP,但只包括主机.

我还应该ping堆栈溢出吗?我的意思是,如果我无法访问Google,维基百科或堆栈溢出,我不想要Internet:p

解决方法

那个似乎是一个很好的解决方案.只需添加更多的主机,也许一些纯IP主机,所以你不依赖DNS功能(这本身就取决于你的“up”的定义).

相关文章

/etc/sysctl.conf这个目录主要是配置一些系统信息,/etc/sys...
1.作用 useradd或adduser命令用来建立用户帐号和创建用户的起...
它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅...
不管是我们在安装软件还是监测软件的使用性能,我们都要随时...
装好Tomcat7后,发现除了本机能访问外界访问不了,岂有此理。...
修改防火墙配置需要修改 /etc/sysconfig/iptables 这个文件,...