我需要使用wifi连接到无线3G调制解调器和连接到adsl路由器的lan来创建故障转移。
当Adsl关闭时,它需要在wlan0上切换到3G。
我在网上尝试过很多脚本,但是没有什么效果,请把我需要的正确脚本发送给我。
PS:我需要检查主机,如www.google.com,故障转移将不会有任何用处,如果它只有在物理上断开了eth电缆之后才会失效。如果我拔掉路由器上的电话线,它一定会坏掉。
发布于 2014-05-14 09:56:51
运行nmcli con list以查找3G连接的UUID,然后运行sudoedit /usr/local/bin/inettest并复制如下内容:
#!/bin/bash
ping -I eth0 -q -c 2 8.8.4.4 > /dev/null 2>&1
if [ $? -ne 0 ]; then
nmcli con down uuid 03e5a69a-2682-47df-a443-59cec06802aa
else
nmcli con up uuid 03e5a69a-2682-47df-a443-59cec06802aa
fi将上面的UUID替换为您的UUID(显然)并保存它。运行chmod +x /usr/local/bin/inettest使其可执行。
现在就测试这个。
inettest连接运行eth0。eth0并再次运行它。3G连接应该打开,然后再恢复。如果不是的话,剧本里就会有乱七八糟的东西。但假设所有操作都运行良好,我们可以通过运行crontab -e并在新行中添加以下内容,将其安排为每5分钟运行一次:
*/5 * * * * /usr/local/bin/inettest你可能需要更严格的解决方案。Cron只能按分钟调度,但您可以通过休眠来堆叠多个调用。此示例将每分钟运行两次:
* * * * * /usr/local/bin/inettest & sleep 30; /usr/local/bin/inettest我不认为你会想走得更紧。
https://askubuntu.com/questions/465683
复制相似问题