v1.2.2-test
~Redir模式调整为仅支持redir_host的DNS模式 ~增加禁用小米路由器自动更新功能(7-8) ~新手引导增加检测及开启本机ip转发的功能 ~将22与8080添加为默认的常用端口 ~修复定时任务文件会出现大量空行的bug
This commit is contained in:
@@ -541,8 +541,8 @@ clashcfg(){
|
||||
echo -e "\033[36mTun及混合模式必须使用clashpre核心!\033[0m"
|
||||
echo -----------------------------------------------
|
||||
echo -e " 1 Redir模式:CPU以及内存\033[33m占用较低\033[0m"
|
||||
echo -e " 但\033[31m不支持UDP\033[0m流量转发"
|
||||
echo -e " 适合\033[32m非游戏用户\033[0m使用"
|
||||
echo -e " 但\033[31m不支持UDP\033[0m,不支持fake-ip模式"
|
||||
echo -e " 适合\033[32m非外服游戏用户\033[0m使用"
|
||||
echo -e " 2 混合模式: 使用redir转发TCP,Tun转发UDP流量"
|
||||
echo -e " \033[33m速度较快\033[0m,\033[31m内存占用略高\033[0m"
|
||||
echo -e " 适合\033[32m游戏用户、综合用户\033[0m"
|
||||
@@ -560,6 +560,7 @@ clashcfg(){
|
||||
i=
|
||||
elif [ "$num" = 1 ]; then
|
||||
redir_mod=Redir模式
|
||||
dns_mod=redir_host
|
||||
set_redir_config
|
||||
elif [ "$num" = 3 ]; then
|
||||
modinfo tun >/dev/null 2>&1
|
||||
@@ -623,9 +624,9 @@ clashcfg(){
|
||||
echo -e "\033[33m切换模式后需要手动重启clash服务以生效!\033[0m"
|
||||
echo -----------------------------------------------
|
||||
echo -e " 1 fake-ip模式: \033[32m响应速度更快\033[0m"
|
||||
echo -e " 可能与某些局域网设备有冲突"
|
||||
echo -e " 不支持Redir模式,兼容性略差"
|
||||
echo -e " 2 redir_host模式:\033[32m兼容性更好\033[0m"
|
||||
echo -e " 不支持Tun模式,可能存在DNS污染"
|
||||
echo -e " 不支持Tun模式,抗污染能力略差"
|
||||
echo " 0 返回上级菜单"
|
||||
read -p "请输入对应数字 > " num
|
||||
if [ -z "$num" ]; then
|
||||
@@ -633,10 +634,15 @@ clashcfg(){
|
||||
elif [ "$num" = 0 ]; then
|
||||
i=
|
||||
elif [ "$num" = 1 ]; then
|
||||
dns_mod=fake-ip
|
||||
setconfig dns_mod $dns_mod
|
||||
echo -----------------------------------------------
|
||||
echo -e "\033[36m已设为 $dns_mod 模式!!\033[0m"
|
||||
if [ "$redir_mod" = "Redir模式" ];then
|
||||
echo -----------------------------------------------
|
||||
echo -e "\033[36mfake-ip与Redir模式兼容性较差,请使用其他模式!!\033[0m"
|
||||
else
|
||||
dns_mod=fake-ip
|
||||
setconfig dns_mod $dns_mod
|
||||
echo -----------------------------------------------
|
||||
echo -e "\033[36m已设为 $dns_mod 模式!!\033[0m"
|
||||
fi
|
||||
elif [ "$num" = 2 ]; then
|
||||
dns_mod=redir_host
|
||||
setconfig dns_mod $dns_mod
|
||||
@@ -731,6 +737,7 @@ clashadv(){
|
||||
[ -z "$start_old" ] && start_old=未开启
|
||||
[ -z "$tproxy_mod" ] && tproxy_mod=未开启
|
||||
[ "$bindir" = "/tmp/clash_$USER" ] && mini_clash=已开启 || mini_clash=未开启
|
||||
[ -n "$(cat /etc/crontabs/root | grep otapredownload)" ] && mi_update=禁用 || mi_update=启用
|
||||
#
|
||||
echo -----------------------------------------------
|
||||
echo -e "\033[30;47m欢迎使用进阶模式菜单:\033[0m"
|
||||
@@ -743,8 +750,9 @@ clashadv(){
|
||||
echo -e " 5 配置内置DNS服务 \033[36m$dns_no\033[0m"
|
||||
echo -e " 6 手动指定相关端口、秘钥及本机host"
|
||||
echo -e " 7 使用自定义配置"
|
||||
[ -x /usr/sbin/otapredownload ] && echo -e " 8 \033[33m$mi_update\033[0m小米系统自动更新"
|
||||
echo -----------------------------------------------
|
||||
echo -e " 8 \033[31m重置\033[0m配置文件"
|
||||
echo -e " 9 \033[31m重置\033[0m配置文件"
|
||||
echo -e " 0 返回上级菜单 \033[0m"
|
||||
echo -----------------------------------------------
|
||||
read -p "请输入对应数字 > " num
|
||||
@@ -891,7 +899,14 @@ EOF
|
||||
sleep 3
|
||||
clashadv
|
||||
|
||||
elif [ "$num" = 8 ]; then
|
||||
elif [ -x /usr/sbin/otapredownload ] && [ "$num" = 8 ]; then
|
||||
[ "$mi_update" = "禁用" ] && sed -i "/otapredownload/d" /etc/crontabs/root || echo "15 3,4,5 * * * /usr/sbin/otapredownload >/dev/null 2>&1" >> /etc/crontabs/root
|
||||
echo -----------------------------------------------
|
||||
echo -e "已\033[33m$mi_update\033[0m小米路由器的自动启动,如未生效,请在官方APP中同步设置!"
|
||||
sleep 1
|
||||
clashadv
|
||||
|
||||
elif [ "$num" = 9 ]; then
|
||||
read -p "确认重置配置文件?(1/0) > " res
|
||||
if [ "$res" = "1" ];then
|
||||
echo "versionsh_l=$versionsh_l" > $ccfg
|
||||
@@ -938,6 +953,7 @@ clashcron(){
|
||||
cronwords="$min $hour * * $week $cronset >/dev/null 2>&1 #$week1的$hour点$min分$cronname"
|
||||
crontab -l > /tmp/conf
|
||||
sed -i "/$cronname/d" /tmp/conf
|
||||
sed -i '/^$/d' /tmp/conf
|
||||
echo "$cronwords" >> /tmp/conf && crontab /tmp/conf
|
||||
rm -f /tmp/conf
|
||||
echo -----------------------------------------------
|
||||
|
||||
@@ -913,6 +913,13 @@ userguide(){
|
||||
fi
|
||||
}
|
||||
forwhat
|
||||
#检测IP转发
|
||||
if [ "$(cat /proc/sys/net/ipv4/ip_forward)" = "0" ];then
|
||||
echo -----------------------------------------------
|
||||
echo -e "\033[33m检测到你的设备尚未开启ip转发,局域网设备将无法正常连接网络,是否立即开启?\033[0m"
|
||||
read -p "是否开启?(1/0) > " res
|
||||
[ "$res" = 1 ] && echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf && /etc/init.d/procps restart && echo "已成功开启ipv4转发,如未正常开启,请手动重启设备!"
|
||||
fi
|
||||
#检测小内存模式
|
||||
dir_size=$(df $clashdir | awk '{print $4}' | sed 1d)
|
||||
if [ "$dir_size" -lt 10240 ];then
|
||||
|
||||
@@ -26,7 +26,7 @@ getconfig(){
|
||||
[ -z "$dns_port" ] && dns_port=1053
|
||||
[ -z "$dns_nameserver" ] && dns_nameserver='114.114.114.114, 223.5.5.5'
|
||||
[ -z "$dns_fallback" ] && dns_fallback='1.0.0.1, 8.8.4.4'
|
||||
[ -z "$multiport" ] && multiport='53,587,465,995,993,143,80,443'
|
||||
[ -z "$multiport" ] && multiport='22,53,587,465,995,993,143,80,443,8080'
|
||||
#是否代理常用端口
|
||||
[ "$common_ports" = "已开启" ] && ports="-m multiport --dports $multiport"
|
||||
}
|
||||
@@ -80,6 +80,7 @@ cronset(){
|
||||
crondir=/tmp/cron_$USER
|
||||
crontab -l > $crondir
|
||||
sed -i "/$1/d" $crondir
|
||||
sed -i '/^$/d' $crondir
|
||||
echo "$2" >> $crondir
|
||||
crontab $crondir
|
||||
rm -f $crondir
|
||||
|
||||
Reference in New Issue
Block a user