OpenWrt脚本:判断是否获取到公网IP,否则重新拨号

48次阅读

共计 975 个字符,预计需要花费 3 分钟才能阅读完成。

如题,本地联通有概率获取到公网 IP,所以写个脚本,稳定运行半年了,分享出来。cat  /mnt/sdb1/bin/pppoe-ip.sh#!/bin/bash# 计数器,用于记录重新拨号的次数 count=0while true; do    # 从 4.ipw.cn 获取公网 IP 地址     ip=$(curl -s https://4.ipw.cn/ | grep -Eo \'([0-9]{1,3}\\.){3}[0-9]{1,3}\’)    # 从网卡 pppoe-wan 获取当前 IP 地址     current_ip=$(ip addr show pppoe-wan | awk \’/inet /{print substr($2,1)}\’)    # 判断当前 IP 是否为公网 IP    if [["$ip" != "$current_ip"]]; then        # 当前 IP 不是公网 IP,执行重新拨号         echo $ip  $current_ip        ifdown wan        sleep 5        ifup wan        count=$((count+1))        echo " 重新拨号 ${count} 次 "        # 判断是否达到重新拨号次数上限         if [["$count" -ge 10]]; then            echo " 已达到重新拨号次数上限,退出循环 "            break        fi    else        # 当前 IP 是公网 IP,退出循环         echo " 当前 IP 为公网 IP,退出循环 "        echo $ip        break    fi    # 休眠 10 秒钟     sleep 10done 复制代码添加到开机脚本和计划脚本(每分钟执行一次):不会写服务,也不会写心跳检测,如果有大佬进行完善更好。注意:PassWall 等软件要 ipw.cn 域名添加到直连白名单。Bigcan 2023-06-22 12:05 2- -,我的电信联通播上就是公网,移动没有 闻风听雨 2023-06-22 12:11 3 不折腾,IPv6 公网挺好的? 每个设备都有公网 sqliuchang 2023-06-22 12:14 4KoolShare 以前有个插件就是重拨获取公网 IP linearn 2023-06-22 12:31 5 是不是公网 IP 应该是运营商固定分配的吧,难道说你没有申请公网 IP,运营商也会给你分配?

正文完
 0