mirror of
https://github.com/233boy/sing-box.git
synced 2026-05-03 14:24:40 +08:00
Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4ebcb332bc | ||
|
|
62c5871ddc | ||
|
|
93d550ace3 | ||
|
|
a6c37635fe | ||
|
|
872b8a397a |
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
args=$@
|
args=$@
|
||||||
is_sh_ver=v1.09
|
is_sh_ver=v1.13
|
||||||
|
|
||||||
. /etc/sing-box/sh/src/init.sh
|
. /etc/sing-box/sh/src/init.sh
|
||||||
18
src/core.sh
18
src/core.sh
@@ -467,7 +467,7 @@ change() {
|
|||||||
1)
|
1)
|
||||||
# new port
|
# new port
|
||||||
is_new_port=$3
|
is_new_port=$3
|
||||||
[[ $host && ! $is_caddy ]] && err "($is_config_file) 不支持更改端口, 因为没啥意义."
|
[[ $host && ! $is_caddy || $is_no_auto_tls ]] && err "($is_config_file) 不支持更改端口, 因为没啥意义."
|
||||||
if [[ $is_new_port && ! $is_auto ]]; then
|
if [[ $is_new_port && ! $is_auto ]]; then
|
||||||
[[ ! $(is_test port $is_new_port) ]] && err "请输入正确的端口, 可选(1-65535)"
|
[[ ! $(is_test port $is_new_port) ]] && err "请输入正确的端口, 可选(1-65535)"
|
||||||
[[ $is_new_port != 443 && $(is_test port_used $is_new_port) ]] && err "无法使用 ($is_new_port) 端口"
|
[[ $is_new_port != 443 && $(is_test port_used $is_new_port) ]] && err "无法使用 ($is_new_port) 端口"
|
||||||
@@ -655,7 +655,7 @@ del() {
|
|||||||
[[ ! $old_host ]] && return # no host exist or not set new host;
|
[[ ! $old_host ]] && return # no host exist or not set new host;
|
||||||
is_del_host=$old_host
|
is_del_host=$old_host
|
||||||
}
|
}
|
||||||
[[ $is_del_host && $host != $old_host ]] && {
|
[[ $is_del_host && $host != $old_host && -f $is_caddy_conf/$is_del_host.conf ]] && {
|
||||||
rm -rf $is_caddy_conf/$is_del_host.conf $is_caddy_conf/$is_del_host.conf.add
|
rm -rf $is_caddy_conf/$is_del_host.conf $is_caddy_conf/$is_del_host.conf.add
|
||||||
[[ ! $is_new_json ]] && manage restart caddy &
|
[[ ! $is_new_json ]] && manage restart caddy &
|
||||||
}
|
}
|
||||||
@@ -849,7 +849,7 @@ add() {
|
|||||||
case $is_old_net in
|
case $is_old_net in
|
||||||
h2 | ws | httpupgrade)
|
h2 | ws | httpupgrade)
|
||||||
old_host=$host
|
old_host=$host
|
||||||
[[ ! $is_use_tls ]] && host=
|
[[ ! $is_use_tls ]] && unset host is_no_auto_tls
|
||||||
;;
|
;;
|
||||||
reality)
|
reality)
|
||||||
net_type=
|
net_type=
|
||||||
@@ -1073,6 +1073,9 @@ get() {
|
|||||||
if [[ $is_caddy && $host && -f $is_caddy_conf/$host.conf ]]; then
|
if [[ $is_caddy && $host && -f $is_caddy_conf/$host.conf ]]; then
|
||||||
is_tmp_https_port=$(grep -E -o "$host:[1-9][0-9]?+" $is_caddy_conf/$host.conf | sed s/.*://)
|
is_tmp_https_port=$(grep -E -o "$host:[1-9][0-9]?+" $is_caddy_conf/$host.conf | sed s/.*://)
|
||||||
fi
|
fi
|
||||||
|
if [[ $host && ! -f $is_caddy_conf/$host.conf ]]; then
|
||||||
|
is_no_auto_tls=1
|
||||||
|
fi
|
||||||
[[ $is_tmp_https_port ]] && is_https_port=$is_tmp_https_port
|
[[ $is_tmp_https_port ]] && is_https_port=$is_tmp_https_port
|
||||||
[[ $is_client && $host ]] && port=$is_https_port
|
[[ $is_client && $host ]] && port=$is_https_port
|
||||||
get protocol $is_protocol-$net_type
|
get protocol $is_protocol-$net_type
|
||||||
@@ -1196,7 +1199,11 @@ get() {
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
ssss | ss2022)
|
ssss | ss2022)
|
||||||
$is_core_bin generate rand 32 --base64
|
if [[ $(grep 128 <<<$ss_method) ]]; then
|
||||||
|
$is_core_bin generate rand 16 --base64
|
||||||
|
else
|
||||||
|
$is_core_bin generate rand 32 --base64
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
ping)
|
ping)
|
||||||
# is_ip_type="-4"
|
# is_ip_type="-4"
|
||||||
@@ -1529,7 +1536,8 @@ is_main_menu() {
|
|||||||
_try_enable_bbr
|
_try_enable_bbr
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
get log
|
load log.sh
|
||||||
|
log_set
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
get test-run
|
get test-run
|
||||||
|
|||||||
30
src/dns.sh
30
src/dns.sh
@@ -8,6 +8,9 @@ is_dns_list=(
|
|||||||
none
|
none
|
||||||
)
|
)
|
||||||
dns_set() {
|
dns_set() {
|
||||||
|
if [[ $(echo -e "1.11.99\n$is_core_ver" | sort -V | head -n1) == '1.11.99' ]]; then
|
||||||
|
is_dns_new=1
|
||||||
|
fi
|
||||||
if [[ $1 ]]; then
|
if [[ $1 ]]; then
|
||||||
case ${1,,} in
|
case ${1,,} in
|
||||||
11 | 1111)
|
11 | 1111)
|
||||||
@@ -46,11 +49,34 @@ dns_set() {
|
|||||||
ask string is_dns_use "请输入 DNS: "
|
ask string is_dns_use "请输入 DNS: "
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
is_dns_use_bak=$is_dns_use
|
||||||
if [[ $is_dns_use == "none" ]]; then
|
if [[ $is_dns_use == "none" ]]; then
|
||||||
cat <<<$(jq '.dns={}' $is_config_json) >$is_config_json
|
cat <<<$(jq '.dns={}' $is_config_json) >$is_config_json
|
||||||
else
|
else
|
||||||
cat <<<$(jq '.dns.servers=[{address:"'$is_dns_use'",address_resolver:"local"},{tag:"local",address:"local"}]' $is_config_json) >$is_config_json
|
if [[ $is_dns_new ]]; then
|
||||||
|
dns_set_server $is_dns_use
|
||||||
|
cat <<<$(jq '.dns.servers=[{type:"'$is_dns_type'",server:"'$is_dns_use'",domain_resolver:"local"},{tag:"local",type:"local"}]' $is_config_json) >$is_config_json
|
||||||
|
else
|
||||||
|
cat <<<$(jq '.dns.servers=[{address:"'$is_dns_use'",address_resolver:"local"},{tag:"local",address:"local"}]' $is_config_json) >$is_config_json
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
manage restart &
|
manage restart &
|
||||||
msg "\n已更新 DNS 为: $(_green $is_dns_use)\n"
|
msg "\n已更新 DNS 为: $(_green $is_dns_use_bak)\n"
|
||||||
|
}
|
||||||
|
dns_set_server() {
|
||||||
|
if [[ $(grep '://' <<<$1) ]]; then
|
||||||
|
is_tmp_dns_set=($(awk -F '://|/' '{print $1, $2}' <<<${1,,}))
|
||||||
|
case ${is_tmp_dns_set[0]} in
|
||||||
|
tcp | udp | tls | https | quic | h3)
|
||||||
|
is_dns_use=${is_tmp_dns_set[1]}
|
||||||
|
is_dns_type=${is_tmp_dns_set[0]}
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
err "无法识别 DNS 类型!"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
is_dns_use=$1
|
||||||
|
is_dns_type=udp
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user