网吧VIP官方网站

    官方信息
    网站首页 > 牛逼信息 > 使用教程

    Centos7服务器拨号上网之动态IP拨号脚本(所有客户端断开的情况才可以重拨)

    2021-04-25 18:00:35 网吧VIP官方网站 阅读

    一.新建restart_pppoe.sh文件

    #!/usr/bin/env bash

    PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

    export PATH

    CONF="/usr/local/shadowsocks-go/shadowsocks-go.conf"

    LOG="my-monitor.log"

    COUNTNUM=0

    FLAG=false

    #读取配置文件

    Read_config(){

        [[ ! -e ${CONF} ]] && echo -e "${Error} Shadowsocks 配置文件不存在 !" && exit 1

        port=$(cat ${CONF}|grep 'PORT = '|awk -F 'PORT = ' '{print $NF}')

        password=$(cat ${CONF}|grep 'PASSWORD = '|awk -F 'PASSWORD = ' '{print $NF}')

        cipher=$(cat ${CONF}|grep 'CIPHER = '|awk -F 'CIPHER = ' '{print $NF}')

        verbose=$(cat ${CONF}|grep 'VERBOSE = '|awk -F 'VERBOSE = ' '{print $NF}')

    }

    # 处理重新拨号逻辑

    reconnect_ppoe(){

        echo -e "`date +'%Y-%m-%d %H:%M:%S'`: COUNTNUM="${COUNTNUM} >> $LOG

        echo -e "`date +'%Y-%m-%d %H:%M:%S'`: `curl myip.ipip.net`" >> $LOG

        #读取配置文件

        Read_config

        #获取当前连接IP

        user_IP=$(ss state connected sport = :${port} -tn|sed '1d'|awk '{print $NF}'|awk -F ':' '{print $(NF-1)}'|sort -u)

        #所有客户端断开时,重新拨号

        msg=""

        if [[ -z ${user_IP} ]]; then

            msg="`date +'%Y-%m-%d %H:%M:%S'`: 当前暂时没有链接的客户端IP"

            #避免拨号太频繁有可能会造客户端链接不上服务端,加入休眠时间60s

            if [[ "${FLAG}" = true ]]; then

                FLAG=false

                #重新PPPOE拨号

                /sbin/pppoe-stop

                /sbin/pppoe-start

                echo -e "`date +'%Y-%m-%d %H:%M:%S'`: 重新拨号完成–`curl myip.ipip.net`" >> $LOG

                #更新ArDNSPod动态DDNS

                /usr/local/ArDNSPod-master/ddnspod.sh

                #更新CloudXNS

                /usr/local/cloudxns/cloudxns_ddns.sh

            fi

        else

            FLAG=true

            user_IP=$(echo -e "\n${user_IP}")

            msg="`date +'%Y-%m-%d %H:%M:%S'`: 当前链接IP: "${user_IP}"\n"

        fi

        #写日志到文件

        echo -e ${msg} >> $LOG

        #清理日志内容

        if [[ ${COUNTNUM} -ge 60 ]]; then

            echo "" > my-monitor.log

            COUNTNUM=0

        fi

        #清空user_IP变量

        user_IP=""

    }

    #调用函数,设置为后台服务运行

    #1.后台服务运行

    # nohup /root/.script/restart_pppoe.sh 2>&1 > /dev/null &

    #2.确认每秒执行

    # tail -f /root/.script/my-monitor.log

    #3. 停止脚本运行进程

    #  kill -s 9 `ps -aux | grep restart_pppoe.sh | awk '{print $2}'`

    #查询出口IP

    # curl ipinfo.io 或  curl myip.ipip.net

    while [ true ]; do

        let COUNTNUM++

        /bin/sleep 1

        reconnect_ppoe

    done

    二.新建start_server.sh文件

    #!/usr/bin/env bash

    PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

    export PATH

    kill -s 9 `ps -aux | grep restart_pppoe.sh | awk '{print $2}'`

    nohup /root/.script/restart_pppoe.sh 2>&1 > /dev/null &

    三.为start_server.sh文件授权执行权限

    chmod +x /root/.script/start_server.sh

    四.安装ArDNSPode

    官网: https://github.com/anrip/ArDNSPod

    网吧VIP网吧金牌特权加速器|爱快路由器|Ros路由器|国内中转加速国外|国外中转加速国内|微信养号|天翼云10IP搭建PPTP、L2TP|华为云20IP搭建PPTP、L2TP|同时也支持油管(Youtube)|脸书(Facebook)|特推(twitter)|Google|INS|TikTok|Telegaram|国外网站和应用|对于海外留学生和海外人士访问回国加速支持!(本站软件版只支持WINDOWS系统加速,如果您需要安卓|苹果|手机|平板电脑|MAC系统|路由器加速|Google Chrome OS,请加微信:41064203)dnspod-shell-master.zip

    1.下载文件

    image.png

    2.上传解压

    image.png

    3.修改配置 dns.conf文件

    mv  dns.conf.example dns.conf


    image.png

    vim dns.conf

    #修改内容如下所示

    image.png

    Powered by MetInfo 5.3.19 ©2008-2021 www.wbvip.cn