如何以编程方式检查连接?

时间:2012-06-11 19:59:12

标签: linux networking ubuntu scripting

在Linux(Ubuntu)中,我想以编程方式检查是否存在Internet连接(或者是否连接了eth0)。

我这样做是因为我正在编写一个程序,该程序需要在极易丢失连接的系统上进行网络连接。

所以我想的可能是一个我可以定期运行以检查的脚本。

你能给我很好的建议吗?

3 个答案:

答案 0 :(得分:5)

这是一个快速的脚本,可以实现您的目标:

MAIL=youremail@something.com
ping -c 5 8.8.8.8>>/dev/null

if [ $? -eq  0 ]
    then
    echo "Able to reach internet!" | mail $EMAIL
else
    echo "failed" | mail $EMAIL
fi

显然,根据您的目标,您可以将邮件更改为其他内容 编辑:解释,这ping谷歌dns服务器,以确保您已连接并以某种方式向您发送电子邮件。如果您的网络上有本地电子邮件服务器,则失败的电子邮件部分当然会有效。

答案 1 :(得分:1)

/sbin/ifconfig对脚本来说是一个很好的“get adapter status”命令。

cron是执行脚本的绝佳方式。

答案 2 :(得分:0)

我还建议pingwget某个远程服务器(最好是要连接的服务器)。该网络可以在当地校园中很好地工作,但在洲际连接上也不是很好(例如,因为一些电缆被切断)。

相关问题