mirror of
https://github.com/juewuy/ShellCrash.git
synced 2026-04-26 04:30:59 +00:00
~DNS服务器中增加了专门用于解析节点域名的改PROXY-SERVER-DNS选项,并移除了对oix的单独适配
This commit is contained in:
@@ -42,7 +42,8 @@ DNS_ADV_SINGBOX_LIMIT="注意:SingBox内核仅加载第一个DNS"
|
|||||||
|
|
||||||
DNS_ADV_EDIT_DIRECT="修改DIRECT-DNS"
|
DNS_ADV_EDIT_DIRECT="修改DIRECT-DNS"
|
||||||
DNS_ADV_EDIT_PROXY="修改PROXY-DNS(该DNS查询会经过节点)"
|
DNS_ADV_EDIT_PROXY="修改PROXY-DNS(该DNS查询会经过节点)"
|
||||||
DNS_ADV_EDIT_DEFAULT="修改DEFAULT-DNS(必须是IP,用于解析其他DNS)"
|
DNS_ADV_EDIT_RESOLVER="修改DEFAULT-DNS(必须是IP,用于解析其他DNS)"
|
||||||
|
DNS_ADV_EDIT_PROXY_SERVER="修改PROXY-SERVER-DNS(必须是IP,用于解析节点域名)"
|
||||||
DNS_ADV_AUTO_ENCRYPT="一键配置加密DNS"
|
DNS_ADV_AUTO_ENCRYPT="一键配置加密DNS"
|
||||||
DNS_ADV_RESET="重置默认DNS配置"
|
DNS_ADV_RESET="重置默认DNS配置"
|
||||||
|
|
||||||
@@ -61,12 +62,6 @@ DNS_CONFIRM_ADD="请确认需要添加的地址:"
|
|||||||
DNS_CONFIRM_OK="确认无误"
|
DNS_CONFIRM_OK="确认无误"
|
||||||
DNS_ADD_OK="添加成功"
|
DNS_ADD_OK="添加成功"
|
||||||
DNS_ADD_FAIL="添加失败"
|
DNS_ADD_FAIL="添加失败"
|
||||||
DNS_DIRECT_NOW="当前DIRECT-DNS:"
|
DNS_NOW="当前DNS:"
|
||||||
DNS_PROXY_NOW="当前PROXY-DNS:"
|
DNS_INPUT_NEW="请直接输入新的DNS地址"
|
||||||
DNS_DEFAULT_NOW="当前DEFAULT-DNS:"
|
DNS_INPUT_RESET="或输入 r 重置DNS地址"
|
||||||
DNS_INPUT_DIRECT_NEW="请直接输入新的DIRECT-DNS地址"
|
|
||||||
DNS_INPUT_DIRECT_RESET="或输入 r 重置DIRECT-DNS地址"
|
|
||||||
DNS_INPUT_PROXY_NEW="请直接输入新的PROXY-DNS地址"
|
|
||||||
DNS_INPUT_PROXY_RESET="或输入 r 重置PROXY-DNS地址"
|
|
||||||
DNS_INPUT_DEFAULT_NEW="请直接输入新的DEFAULT-DNS地址"
|
|
||||||
DNS_INPUT_DEFAULT_RESET="或输入 r 重置DEFAULT-DNS地址"
|
|
||||||
|
|||||||
@@ -43,7 +43,8 @@ DNS_ADV_SINGBOX_LIMIT="Note: SingBox core only loads the first DNS entry"
|
|||||||
|
|
||||||
DNS_ADV_EDIT_DIRECT="Edit DIRECT-DNS"
|
DNS_ADV_EDIT_DIRECT="Edit DIRECT-DNS"
|
||||||
DNS_ADV_EDIT_PROXY="Edit PROXY-DNS (queries go through the proxy)"
|
DNS_ADV_EDIT_PROXY="Edit PROXY-DNS (queries go through the proxy)"
|
||||||
DNS_ADV_EDIT_DEFAULT="Edit DEFAULT-DNS (must be an IP, used to resolve other DNS servers)"
|
DNS_ADV_EDIT_RESOLVER="Edit DEFAULT-DNS (must be an IP, used to resolve other DNS servers)"
|
||||||
|
DNS_ADV_EDIT_PROXY_SERVER="Edit PROXY-SERVER-DNS (must be an IP, used to resolve proxy hostnames)"
|
||||||
DNS_ADV_AUTO_ENCRYPT="Auto-configure Encrypted DNS"
|
DNS_ADV_AUTO_ENCRYPT="Auto-configure Encrypted DNS"
|
||||||
DNS_ADV_RESET="Reset to default DNS configuration"
|
DNS_ADV_RESET="Reset to default DNS configuration"
|
||||||
|
|
||||||
@@ -63,12 +64,6 @@ DNS_CONFIRM_ADD="Please confirm the address to add: "
|
|||||||
DNS_CONFIRM_OK="Confirm"
|
DNS_CONFIRM_OK="Confirm"
|
||||||
DNS_ADD_OK="Added successfully"
|
DNS_ADD_OK="Added successfully"
|
||||||
DNS_ADD_FAIL="Add failed"
|
DNS_ADD_FAIL="Add failed"
|
||||||
DNS_DIRECT_NOW="Current DIRECT-DNS: "
|
DNS_NOW="Current DNS: "
|
||||||
DNS_PROXY_NOW="Current PROXY-DNS: "
|
DNS_INPUT_NEW="Please input a new DNS address"
|
||||||
DNS_DEFAULT_NOW="Current DEFAULT-DNS: "
|
DNS_INPUT_RESET="or input r to reset the DNS address"
|
||||||
DNS_INPUT_DIRECT_NEW="Please input new DIRECT-DNS"
|
|
||||||
DNS_INPUT_DIRECT_RESET="or input r to reset DIRECT-DNS"
|
|
||||||
DNS_INPUT_PROXY_NEW="Please input new PROXY-DNS"
|
|
||||||
DNS_INPUT_PROXY_RESET="or input r to reset PROXY-DNS"
|
|
||||||
DNS_INPUT_DEFAULT_NEW="Please input new DEFAULT-DNS"
|
|
||||||
DNS_INPUT_DEFAULT_RESET="or input r to reset DEFAULT-DNS"
|
|
||||||
|
|||||||
@@ -20,3 +20,4 @@ routing_mark=$((fwmark + 2))
|
|||||||
}
|
}
|
||||||
[ -z "$dns_fallback" ] && dns_fallback="1.1.1.1, 8.8.8.8"
|
[ -z "$dns_fallback" ] && dns_fallback="1.1.1.1, 8.8.8.8"
|
||||||
[ -z "$dns_resolver" ] && dns_resolver="223.5.5.5, 2400:3200::1"
|
[ -z "$dns_resolver" ] && dns_resolver="223.5.5.5, 2400:3200::1"
|
||||||
|
[ -z "$dns_proxy_server" ] && dns_proxy_server="$dns_resolver"
|
||||||
|
|||||||
@@ -185,13 +185,17 @@ set_dns_adv() {
|
|||||||
"PROXY-DNS:" \
|
"PROXY-DNS:" \
|
||||||
"\033[36m$dns_fallback\033[0m" \
|
"\033[36m$dns_fallback\033[0m" \
|
||||||
"" \
|
"" \
|
||||||
"DEFAULT-DNS:" \
|
"RESOLVER-DNS:" \
|
||||||
"\033[33m$dns_resolver\033[0m" \
|
"\033[33m$dns_resolver\033[0m" \
|
||||||
|
"" \
|
||||||
|
"PROXY-SERVER-DNS:" \
|
||||||
|
"\033[33m$dns_proxy_server\033[0m" \
|
||||||
""
|
""
|
||||||
btm_box "1) $DNS_ADV_EDIT_DIRECT" \
|
btm_box "1) $DNS_ADV_EDIT_DIRECT" \
|
||||||
"2) $DNS_ADV_EDIT_PROXY" \
|
"2) $DNS_ADV_EDIT_PROXY" \
|
||||||
"3) $DNS_ADV_EDIT_DEFAULT" \
|
"3) $DNS_ADV_EDIT_RESOLVER" \
|
||||||
"4) \033[32m$DNS_ADV_AUTO_ENCRYPT\033[0m" \
|
"4) $DNS_ADV_EDIT_PROXY_SERVER" \
|
||||||
|
"5) \033[32m$DNS_ADV_AUTO_ENCRYPT\033[0m" \
|
||||||
"9) \033[33m$DNS_ADV_RESET\033[0m" \
|
"9) \033[33m$DNS_ADV_RESET\033[0m" \
|
||||||
"" \
|
"" \
|
||||||
"0) $COMMON_BACK"
|
"0) $COMMON_BACK"
|
||||||
@@ -201,9 +205,9 @@ set_dns_adv() {
|
|||||||
break
|
break
|
||||||
;;
|
;;
|
||||||
1)
|
1)
|
||||||
comp_box "$DNS_DIRECT_NOW\033[32m$dns_nameserver\033[0m"
|
comp_box "$DNS_NOW\033[32m$dns_nameserver\033[0m"
|
||||||
btm_box "\033[36m$DNS_INPUT_DIRECT_NEW\033[0m" \
|
btm_box "\033[36m$DNS_INPUT_NEW\033[0m" \
|
||||||
"$DNS_INPUT_DIRECT_RESET" \
|
"$DNS_INPUT_RESET" \
|
||||||
"$DNS_INPUT_REDIR_BACK"
|
"$DNS_INPUT_REDIR_BACK"
|
||||||
read -r -p "$DNS_INPUT> " res
|
read -r -p "$DNS_INPUT> " res
|
||||||
case "$res" in
|
case "$res" in
|
||||||
@@ -227,9 +231,9 @@ set_dns_adv() {
|
|||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
comp_box "$DNS_PROXY_NOW\033[32m$dns_fallback\033[0m"
|
comp_box "$DNS_NOW\033[32m$dns_fallback\033[0m"
|
||||||
btm_box "\033[36m$DNS_INPUT_PROXY_NEW\033[0m" \
|
btm_box "\033[36m$DNS_INPUT_NEW\033[0m" \
|
||||||
"$DNS_INPUT_PROXY_RESET" \
|
"$DNS_INPUT_RESET" \
|
||||||
"$DNS_INPUT_REDIR_BACK"
|
"$DNS_INPUT_REDIR_BACK"
|
||||||
read -r -p "$DNS_INPUT> " res
|
read -r -p "$DNS_INPUT> " res
|
||||||
case "$res" in
|
case "$res" in
|
||||||
@@ -253,9 +257,9 @@ set_dns_adv() {
|
|||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
3)
|
3)
|
||||||
comp_box "$DNS_DEFAULT_NOW\033[32m$dns_resolver\033[0m"
|
comp_box "$DNS_NOW\033[32m$dns_resolver\033[0m"
|
||||||
btm_box "\033[36m$DNS_INPUT_DEFAULT_NEW\033[0m" \
|
btm_box "\033[36m$DNS_INPUT_NEW\033[0m" \
|
||||||
"$DNS_INPUT_DEFAULT_RESET" \
|
"$DNS_INPUT_RESET" \
|
||||||
"$DNS_INPUT_REDIR_BACK"
|
"$DNS_INPUT_REDIR_BACK"
|
||||||
separator_line "="
|
separator_line "="
|
||||||
read -r -p "$DNS_INPUT> " res
|
read -r -p "$DNS_INPUT> " res
|
||||||
@@ -266,7 +270,7 @@ set_dns_adv() {
|
|||||||
"r")
|
"r")
|
||||||
dns_resolver="223.5.5.5, 2400:3200::1"
|
dns_resolver="223.5.5.5, 2400:3200::1"
|
||||||
setconfig dns_resolver "'$dns_resolver'"
|
setconfig dns_resolver "'$dns_resolver'"
|
||||||
common_failed
|
common_success
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
if echo "$res" | grep -qE '://.*::'; then
|
if echo "$res" | grep -qE '://.*::'; then
|
||||||
@@ -280,6 +284,33 @@ set_dns_adv() {
|
|||||||
esac
|
esac
|
||||||
;;
|
;;
|
||||||
4)
|
4)
|
||||||
|
comp_box "$DNS_NOW\033[32m$dns_proxy_server\033[0m"
|
||||||
|
btm_box "\033[36m$DNS_INPUT_NEW\033[0m" \
|
||||||
|
"$DNS_INPUT_RESET" \
|
||||||
|
"$DNS_INPUT_REDIR_BACK"
|
||||||
|
separator_line "="
|
||||||
|
read -r -p "$DNS_INPUT> " res
|
||||||
|
case "$res" in
|
||||||
|
0)
|
||||||
|
continue
|
||||||
|
;;
|
||||||
|
"r")
|
||||||
|
dns_proxy_server="$dns_resolver"
|
||||||
|
setconfig dns_proxy_server "'$dns_proxy_server'"
|
||||||
|
common_success
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
if echo "$res" | grep -qE '://.*::'; then
|
||||||
|
msg_alert "\033[31m$DNS_IPV6_NOT_SUPPORT\033[0m"
|
||||||
|
else
|
||||||
|
dns_proxy_server=$(echo "$res" | sed 's#|#,\ #g')
|
||||||
|
setconfig dns_proxy_server "'$dns_proxy_server'"
|
||||||
|
msg_alert "\033[32m$COMMON_SUCCESS\033[0m"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
;;
|
||||||
|
5)
|
||||||
line_break
|
line_break
|
||||||
separator_line "="
|
separator_line "="
|
||||||
if echo "$crashcore" | grep -qE 'meta|singbox'; then
|
if echo "$crashcore" | grep -qE 'meta|singbox'; then
|
||||||
|
|||||||
@@ -117,7 +117,6 @@ EOF
|
|||||||
fi
|
fi
|
||||||
# 通用部分生成
|
# 通用部分生成
|
||||||
[ "$skip_cert" != "OFF" ] && override_tls='true' || override_tls='false'
|
[ "$skip_cert" != "OFF" ] && override_tls='true' || override_tls='false'
|
||||||
[ -n "$(echo "$2" | grep 'oics.net')" ] && domain_resolver='dns_oix' || domain_resolver='dns_resolver'
|
|
||||||
cat >>"$TMPDIR"/providers/providers.json <<EOF
|
cat >>"$TMPDIR"/providers/providers.json <<EOF
|
||||||
"health_check": {
|
"health_check": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
@@ -126,7 +125,7 @@ EOF
|
|||||||
"timeout": "3s"
|
"timeout": "3s"
|
||||||
},
|
},
|
||||||
"override_dialer": {
|
"override_dialer": {
|
||||||
"domain_resolver": "$domain_resolver"
|
"domain_resolver": "$dns_proxy_server"
|
||||||
},
|
},
|
||||||
"override_tls": {
|
"override_tls": {
|
||||||
"enabled": true,
|
"enabled": true,
|
||||||
|
|||||||
@@ -54,9 +54,9 @@ EOF
|
|||||||
cat >>"$TMPDIR"/dns.yaml <<EOF
|
cat >>"$TMPDIR"/dns.yaml <<EOF
|
||||||
respect-rules: true
|
respect-rules: true
|
||||||
nameserver-policy: {'rule-set:cn': [ $dns_nameserver ]}
|
nameserver-policy: {'rule-set:cn': [ $dns_nameserver ]}
|
||||||
proxy-server-nameserver : [ $dns_resolver ]
|
proxy-server-nameserver : [ $dns_proxy_server ]
|
||||||
proxy-server-nameserver-policy:
|
proxy-server-nameserver-policy:
|
||||||
'*.oix_nodes.com': '124.221.68.73:1053'
|
'+.cloud-nodes.com': '124.221.68.73:1053'
|
||||||
nameserver: [ $dns_final ]
|
nameserver: [ $dns_final ]
|
||||||
EOF
|
EOF
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -189,8 +189,8 @@ EOF
|
|||||||
"routing_mark": $routing_mark
|
"routing_mark": $routing_mark
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"tag": "dns_oix",
|
"tag": "dns_proxy_server",
|
||||||
"type": "udp", "server": "124.221.68.73", "server_port": 1053,
|
$(parse_singbox_dns "$dns_proxy_server")
|
||||||
"routing_mark": $routing_mark
|
"routing_mark": $routing_mark
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|||||||
Reference in New Issue
Block a user