如果 ping 失败,如何批量重启网卡

如果 ping 失败,如何批量重启网卡

我的网络有问题,暂时无法修复,但当我失去互联网连接时重新启动网卡暂时有效,所以我想知道如何编写一个脚本来 ping 以太 8.8.8.8 或 127.0.0.1,并在 ping 失败时重新启动网卡。(这样我就不必照看它了)

答案1

成功ping将返回代码 0,而连接失败将返回代码 1 及以上。

请参阅此(未经测试的)代码片段,每分钟 ping 一次:

#!/bin/bash
while true; do
  ping -c 1 8.8.8.8
  if [ "$?" -ne 0 ]; then
    systemctl restart network
  fi
sleep 60
done

systemctl在上面的评论中推荐了该命令,但是您的发行版中的命令可能有所不同,并且sudo也可能需要该命令。

相关内容