#自动重连shell
#!/bin/sh
ppp0_flag=`ifconfig | grep ppp0`
echo $ppp0_flag
if [ -z "$ppp0_flag" ];then
echo "connet to vpn ..."
# connet vpn
# USER_PASSWORD 为用户密码,这样的方式就不用输入密码了。
# echo PASSWORD | sudo -S 这样可以不用手动输入密码!
echo a123456| sudo -S nmcli con up id l2tp
fi
#端口转发
echo 123456| sudo -S route add -net 0.0.0.0 netmask 255.255.255.0 metric 50 gw 192.168.42.1
echo 123456| sudo -S iptables -F
echo 123456| sudo -S iptables -P INPUT ACCEPT
echo 123456| sudo -S iptables -P FORWARD ACCEPT
echo 123456| sudo -S iptables -t nat -A POSTROUTING -s 172.20.0.1/16 -o ppp0 -j MASQUERADE
--------------------------------------------------------------------------------------------
设置ip转发,在/etc/sysctl.conf中把ipv4转发注释取消,等于1
运行sysctl -p
查看网络连接情况
ls -l /etc/NetworkManager/system-connections
使用cat查看连接配置
sudo cat /etc/NetworkManager/system-connections/WAN
修改其中内容,password-flags=1改为0 ,加入
[vpn-secrets]
password=password
定时任务,设定重连shell
crontab -e
分钟 小时 天 月 周
* * * * *
间隔秒钟运行
* * * * * sleep 15 ; xx.sh