Files
v2ray/src/old.sh
2025-06-25 11:03:26 +08:00

140 lines
2.8 KiB
Bash

is_old_list=(
TCP
TCP_HTTP
WebSocket
"WebSocket + TLS"
HTTP/2
mKCP
mKCP_utp
mKCP_srtp
mKCP_wechat-video
mKCP_dtls
mKCP_wireguard
QUIC
QUIC_utp
QUIC_srtp
QUIC_wechat-video
QUIC_dtls
QUIC_wireguard
TCP_dynamicPort
TCP_HTTP_dynamicPort
WebSocket_dynamicPort
mKCP_dynamicPort
mKCP_utp_dynamicPort
mKCP_srtp_dynamicPort
mKCP_wechat-video_dynamicPort
mKCP_dtls_dynamicPort
mKCP_wireguard_dynamicPort
QUIC_dynamicPort
QUIC_utp_dynamicPort
QUIC_srtp_dynamicPort
QUIC_wechat-video_dynamicPort
QUIC_dtls_dynamicPort
QUIC_wireguard_dynamicPort
VLESS_WebSocket_TLS
)
# del old file
del_old_file() {
# old sh bin
_v2ray_sh="/usr/local/sbin/v2ray"
rm -rf $_v2ray_sh $is_old_conf $is_old_dir $is_core_dir/233blog_v2ray_config.json /usr/bin/v2ray
# del alias
sed -i "#$_v2ray_sh#d" /root/.bashrc
exit
}
# read old config
. $is_old_conf
is_old=${is_old_list[$v2ray_transport - 1]}
case $v2ray_transport in
3 | 20)
is_old_use=
;;
4)
is_old_use=ws
;;
5)
is_old_use=h2
;;
33)
is_old_use=vws
;;
*)
is_test_old_use=($(sed 's/_dynamicPort//;s/_/ /' <<<$is_old))
is_old_use=${is_test_old_use[0]#m}
is_old_header_type=${is_test_old_use[1]}
[[ ! $is_old_header_type ]] && is_old_header_type=none
;;
esac
if [[ $is_old_use && ! $is_old_header_type ]]; then
# not use caddy auto tls
[[ ! $caddy ]] && is_old_use=
fi
# add old config
if [[ $is_old_use ]]; then
is_tmp_list=("删除旧配置" "恢复: $is_old")
ask list is_do_upgrade null "\n是否恢复旧配置:\n"
[[ $REPLY == '1' ]] && {
_green "\n删除完成!\n"
del_old_file
}
_green "\n开始恢复...\n"
# upgrade caddy
if [[ $caddy ]]; then
get install-caddy
# bak caddy files
mv -f $is_caddyfile $is_caddyfile.233.bak
mv -f $is_caddy_dir/sites $is_caddy_dir/sites.233.bak
load caddy.sh
caddy_config new
fi
is_change=1
is_dont_auto_exit=1
is_dont_show_info=1
if [[ $shadowsocks ]]; then
for v in ${ss_method_list[@]}; do
[[ $(grep -E -i "^${ssciphers}$" <<<$v) ]] && ss_method=$v && break
done
if [[ $ss_method ]]; then
add ss $ssport $sspass $ss_method
fi
fi
if [[ $socks ]]; then
add socks $socks_port $socks_username $socks_userpass
fi
port=$v2ray_port
uuid=$v2ray_id
is_no_kcp_seed=1
header_type=$is_old_header_type
[[ $caddy ]] && host=$domain
path=/$path
[[ ! $path_status ]] && path=
if [[ $(grep dynamic <<<$is_old) ]]; then
is_dynamic_port=1
is_dynamic_port_range="$v2ray_dynamicPort_start-$v2ray_dynamicPort_end"
add ${is_old_use}d
else
add $is_old_use
fi
if [[ $path_status ]]; then
change $is_config_name web $proxy_site
fi
is_dont_auto_exit=
is_dont_show_info=
[[ $is_api_fail ]] && manage restart &
[[ $caddy ]] && manage restart caddy
info $is_config_name
else
ask string y "是否删除旧配置? [y]:"
_green "\n删除完成!\n"
fi
del_old_file