Skip to content

Commit 78d9f38

Browse files
committed
fix(脚本): 修复socks5多次出站无法正常分流问题
1 parent 8cfb11f commit 78d9f38

1 file changed

Lines changed: 43 additions & 42 deletions

File tree

install.sh

Lines changed: 43 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -4037,25 +4037,25 @@ EOF
40374037
fallbacksList=${fallbacksList}',{"path":"/'${customPath}'vws","dest":31299,"xver":1}'
40384038
cat <<EOF >/etc/v2ray-agent/xray/conf/05_VMess_WS_inbounds.json
40394039
{
4040-
"inbounds":[
4041-
{
4042-
"listen": "127.0.0.1",
4043-
"port": 31299,
4044-
"protocol": "vmess",
4045-
"tag":"VMessWS",
4046-
"settings": {
4047-
"clients": $(initXrayClients 3)
4048-
},
4049-
"streamSettings": {
4050-
"network": "ws",
4051-
"security": "none",
4052-
"wsSettings": {
4053-
"acceptProxyProtocol": true,
4054-
"path": "/${customPath}vws"
4055-
}
4056-
}
4057-
}
4058-
]
4040+
"inbounds":[
4041+
{
4042+
"listen": "127.0.0.1",
4043+
"port": 31299,
4044+
"protocol": "vmess",
4045+
"tag":"VMessWS",
4046+
"settings": {
4047+
"clients": $(initXrayClients 3)
4048+
},
4049+
"streamSettings": {
4050+
"network": "ws",
4051+
"security": "none",
4052+
"wsSettings": {
4053+
"acceptProxyProtocol": true,
4054+
"path": "/${customPath}vws"
4055+
}
4056+
}
4057+
}
4058+
]
40594059
}
40604060
EOF
40614061
elif [[ -z "$3" ]]; then
@@ -4746,6 +4746,7 @@ EOF
47464746
removeSingBoxConfig cn_block_outbound
47474747
removeSingBoxConfig cn_block_route
47484748
removeSingBoxConfig 01_direct_outbound
4749+
removeSingBoxConfig socks5_outbound.json
47494750
removeSingBoxConfig block_domain_outbound
47504751
removeSingBoxConfig dns
47514752
fi
@@ -6465,7 +6466,7 @@ ipv6Routing() {
64656466
removeSingBoxConfig wireguard_endpoints_IPv4
64666467
removeSingBoxConfig wireguard_endpoints_IPv6
64676468

6468-
removeSingBoxConfig socks5_inbound_route
6469+
removeSingBoxConfig socks5_02_inbound_route
64696470

64706471
removeSingBoxConfig IPv6_route
64716472

@@ -7003,7 +7004,7 @@ warpRoutingReg() {
70037004
removeSingBoxConfig wireguard_endpoints_IPv6_route
70047005

70057006
removeSingBoxConfig IPv6_route
7006-
removeSingBoxConfig socks5_inbound_route
7007+
removeSingBoxConfig socks5_02_inbound_route
70077008

70087009
addSingBoxWireGuardEndpoints "${type}"
70097010
addWireGuardRoute "${type}" outboundTag ""
@@ -7170,7 +7171,7 @@ socks5InboundRoutingMenu() {
71707171
socks5InboundRoutingMenu
71717172
;;
71727173
2)
7173-
showSingBoxRoutingRules socks5_inbound_route
7174+
showSingBoxRoutingRules socks5_02_inbound_route
71747175
socks5InboundRoutingMenu
71757176
;;
71767177
3)
@@ -7217,7 +7218,7 @@ socks5OutboundRoutingMenu() {
72177218
socks5OutboundRoutingMenu
72187219
;;
72197220
3)
7220-
showSingBoxRoutingRules socks5_outbound_route
7221+
showSingBoxRoutingRules socks5_01_outbound_route
72217222
showXrayRoutingRules socks5_outbound
72227223
socks5OutboundRoutingMenu
72237224
;;
@@ -7260,7 +7261,7 @@ setSocks5OutboundRoutingAll() {
72607261
removeSingBoxConfig wireguard_endpoints_IPv4
72617262
removeSingBoxConfig wireguard_endpoints_IPv6
72627263

7263-
removeSingBoxConfig socks5_outbound_route
7264+
removeSingBoxConfig socks5_01_outbound_route
72647265
removeSingBoxConfig 01_direct_outbound
72657266
fi
72667267

@@ -7272,11 +7273,11 @@ showSingBoxRoutingRules() {
72727273
if [[ -n "${singBoxConfigPath}" ]]; then
72737274
if [[ -f "${singBoxConfigPath}$1.json" ]]; then
72747275
jq .route.rules "${singBoxConfigPath}$1.json"
7275-
elif [[ "$1" == "socks5_outbound_route" && -f "${singBoxConfigPath}socks5_outbound.json" ]]; then
7276+
elif [[ "$1" == "socks5_01_outbound_route" && -f "${singBoxConfigPath}socks5_outbound.json" ]]; then
72767277
echoContent yellow "已安装 sing-box socks5全局出站分流"
72777278
echoContent yellow "\n出站分流配置:"
72787279
echoContent skyBlue "$(jq .outbounds[0] ${singBoxConfigPath}socks5_outbound.json)"
7279-
elif [[ "$1" == "socks5_inbound_route" && -f "${singBoxConfigPath}20_socks5_inbounds.json" ]]; then
7280+
elif [[ "$1" == "socks5_02_inbound_route" && -f "${singBoxConfigPath}20_socks5_inbounds.json" ]]; then
72807281
echoContent yellow "已安装 sing-box socks5全局入站分流"
72817282
echoContent yellow "\n出站分流配置:"
72827283
echoContent skyBlue "$(jq .outbounds[0] ${singBoxConfigPath}socks5_outbound.json)"
@@ -7320,14 +7321,14 @@ removeSocks5Routing() {
73207321

73217322
if [[ -n "${singBoxConfigPath}" ]]; then
73227323
removeSingBoxConfig socks5_outbound
7323-
removeSingBoxConfig socks5_outbound_route
7324+
removeSingBoxConfig socks5_01_outbound_route
73247325
addSingBoxOutbound 01_direct_outbound
73257326
fi
73267327

73277328
elif [[ "${unInstallSocks5RoutingStatus}" == "2" ]]; then
73287329

73297330
removeSingBoxConfig 20_socks5_inbounds
7330-
removeSingBoxConfig socks5_inbound_route
7331+
removeSingBoxConfig socks5_02_inbound_route
73317332

73327333
handleSingBox stop
73337334
elif [[ "${unInstallSocks5RoutingStatus}" == "3" ]]; then
@@ -7339,9 +7340,9 @@ removeSocks5Routing() {
73397340

73407341
if [[ -n "${singBoxConfigPath}" ]]; then
73417342
removeSingBoxConfig socks5_outbound
7342-
removeSingBoxConfig socks5_outbound_route
7343+
removeSingBoxConfig socks5_01_outbound_route
73437344
removeSingBoxConfig 20_socks5_inbounds
7344-
removeSingBoxConfig socks5_inbound_route
7345+
removeSingBoxConfig socks5_02_inbound_route
73457346
addSingBoxOutbound 01_direct_outbound
73467347
fi
73477348

@@ -7435,14 +7436,14 @@ setSocks5InboundRouting() {
74357436

74367437
singBoxConfigPath=/etc/v2ray-agent/sing-box/conf/config/
74377438

7438-
if [[ "$1" == "addRules" && ! -f "${singBoxConfigPath}socks5_inbound_route.json" && ! -f "${configPath}09_routing.json" ]]; then
7439+
if [[ "$1" == "addRules" && ! -f "${singBoxConfigPath}socks5_02_inbound_route.json" && ! -f "${configPath}09_routing.json" ]]; then
74397440
echoContent red " ---> 请安装入站分流后再添加分流规则"
74407441
echoContent red " ---> 如已选择允许所有网站,请重新安装分流后设置规则"
74417442
exit 0
74427443
fi
74437444
local socks5InboundRoutingIPs=
74447445
if [[ "$1" == "addRules" ]]; then
7445-
socks5InboundRoutingIPs=$(jq .route.rules[0].source_ip_cidr "${singBoxConfigPath}socks5_inbound_route.json")
7446+
socks5InboundRoutingIPs=$(jq .route.rules[0].source_ip_cidr "${singBoxConfigPath}socks5_02_inbound_route.json")
74467447
else
74477448
echoContent red "=============================================================="
74487449
echoContent skyBlue "请输入允许访问的IP地址,多个IP英文逗号隔开。例如:1.1.1.1,2.2.2.2\n"
@@ -7464,11 +7465,11 @@ setSocks5InboundRouting() {
74647465

74657466
read -r -p "是否允许所有网站?请选择[y/n]:" socks5InboundRoutingDomainStatus
74667467
if [[ "${socks5InboundRoutingDomainStatus}" == "y" ]]; then
7467-
addSingBoxRouteRule "01_direct_outbound" "" "socks5_inbound_route"
7468+
addSingBoxRouteRule "01_direct_outbound" "" "socks5_02_inbound_route"
74687469
local route=
7469-
route=$(jq ".route.rules[0].inbound = [\"socks5_inbound\"]" "${singBoxConfigPath}socks5_inbound_route.json")
7470+
route=$(jq ".route.rules[0].inbound = [\"socks5_inbound\"]" "${singBoxConfigPath}socks5_02_inbound_route.json")
74707471
route=$(echo "${route}" | jq ".route.rules[0].source_ip_cidr=${socks5InboundRoutingIPs}")
7471-
echo "${route}" | jq . >"${singBoxConfigPath}socks5_inbound_route.json"
7472+
echo "${route}" | jq . >"${singBoxConfigPath}socks5_02_inbound_route.json"
74727473

74737474
addSingBoxOutbound block
74747475
addSingBoxOutbound "01_direct_outbound"
@@ -7479,11 +7480,11 @@ setSocks5InboundRouting() {
74797480
echoContent red " ---> 域名不可为空"
74807481
exit 0
74817482
fi
7482-
addSingBoxRouteRule "01_direct_outbound" "${socks5InboundRoutingDomain}" "socks5_inbound_route"
7483+
addSingBoxRouteRule "01_direct_outbound" "${socks5InboundRoutingDomain}" "socks5_02_inbound_route"
74837484
local route=
7484-
route=$(jq ".route.rules[0].inbound = [\"socks5_inbound\"]" "${singBoxConfigPath}socks5_inbound_route.json")
7485+
route=$(jq ".route.rules[0].inbound = [\"socks5_inbound\"]" "${singBoxConfigPath}socks5_02_inbound_route.json")
74857486
route=$(echo "${route}" | jq ".route.rules[0].source_ip_cidr=${socks5InboundRoutingIPs}")
7486-
echo "${route}" | jq . >"${singBoxConfigPath}socks5_inbound_route.json"
7487+
echo "${route}" | jq . >"${singBoxConfigPath}socks5_02_inbound_route.json"
74877488

74887489
addSingBoxOutbound block
74897490
addSingBoxOutbound "01_direct_outbound"
@@ -7545,7 +7546,7 @@ EOF
75457546
# socks5 outbound routing规则
75467547
setSocks5OutboundRouting() {
75477548

7548-
if [[ "$1" == "addRules" && ! -f "${singBoxConfigPath}socks5_outbound_route.json" && ! -f "${configPath}09_routing.json" ]]; then
7549+
if [[ "$1" == "addRules" && ! -f "${singBoxConfigPath}socks5_01_outbound_route.json" && ! -f "${configPath}09_routing.json" ]]; then
75497550
echoContent red " ---> 请安装出站分流后再添加分流规则"
75507551
exit 0
75517552
fi
@@ -7562,7 +7563,7 @@ setSocks5OutboundRouting() {
75627563
echoContent red " ---> IP不可为空"
75637564
exit 0
75647565
fi
7565-
addSingBoxRouteRule "socks5_outbound" "${socks5RoutingOutboundDomain}" "socks5_outbound_route"
7566+
addSingBoxRouteRule "socks5_outbound" "${socks5RoutingOutboundDomain}" "socks5_01_outbound_route"
75667567
addSingBoxOutbound "01_direct_outbound"
75677568

75687569
if [[ "${coreInstallType}" == "1" ]]; then
@@ -8046,7 +8047,7 @@ customXrayInstall() {
80468047
echoContent yellow "5.VLESS+TLS+gRPC[仅CDN推荐]"
80478048
echoContent yellow "7.VLESS+Reality+uTLS+Vision[推荐]"
80488049
# echoContent yellow "8.VLESS+Reality+gRPC"
8049-
echoContent yellow "12.VLESS+Reality+XHTTP+TLS"
8050+
echoContent yellow "12.VLESS+Reality+XHTTP+TLS[CDN可用]"
80508051
read -r -p "请选择[多选],[例如:1,2,3]:" selectCustomInstallType
80518052
echoContent skyBlue "--------------------------------------------------------------"
80528053
if echo "${selectCustomInstallType}" | grep -q ""; then
@@ -9535,7 +9536,7 @@ menu() {
95359536
cd "$HOME" || exit
95369537
echoContent red "\n=============================================================="
95379538
echoContent green "作者:mack-a"
9538-
echoContent green "当前版本:v3.4.38"
9539+
echoContent green "当前版本:v3.5.1"
95399540
echoContent green "Github:https://github.com/mack-a/v2ray-agent"
95409541
echoContent green "描述:八合一共存脚本\c"
95419542
showInstallStatus

0 commit comments

Comments
 (0)