From 5ed3f8e0733cf6dc850aa222b5638fd9394d431a Mon Sep 17 00:00:00 2001 From: Shaojun Yang Date: Wed, 30 Jun 2021 11:12:39 +0800 Subject: [PATCH] Fix review issue --- Netch/Resources/zh-CN | 2 +- Netch/Servers/V2ray/Models/V2rayConfig.cs | 2 ++ Netch/Servers/V2ray/Models/V2rayNSharing.cs | 2 +- Netch/Servers/V2ray/Utils/V2rayConfigUtils.cs | 8 +++++++- Netch/Servers/V2ray/V2rayUtils.cs | 12 +++++++++++ Netch/Servers/VLESS/VLESS.cs | 2 -- Netch/Servers/VLESS/VLESSForm/VLESSForm.cs | 2 -- Netch/Servers/VMess/Form/VMessForm.cs | 2 -- Netch/Servers/VMess/VMess.cs | 20 +++---------------- 9 files changed, 26 insertions(+), 26 deletions(-) diff --git a/Netch/Resources/zh-CN b/Netch/Resources/zh-CN index 12a0eb6c..7e97dce7 100644 --- a/Netch/Resources/zh-CN +++ b/Netch/Resources/zh-CN @@ -48,7 +48,7 @@ "Transfer Protocol": "传输协议", "Fake Type": "伪装类型", "Host": "主机", - "Path": "路径", + "Path": "路径/服务名称", "QUIC Security": "QUIC 加密方式", "QUIC Secret": "QUIC 加密密钥", "GRPC Mode": "QUIC 模式", diff --git a/Netch/Servers/V2ray/Models/V2rayConfig.cs b/Netch/Servers/V2ray/Models/V2rayConfig.cs index e0c813c5..dd7827cd 100644 --- a/Netch/Servers/V2ray/Models/V2rayConfig.cs +++ b/Netch/Servers/V2ray/Models/V2rayConfig.cs @@ -284,5 +284,7 @@ namespace Netch.Servers.Models public class GrpcSettings { public string serviceName { get; set; } + + public bool multiMode { get; set; } } } \ No newline at end of file diff --git a/Netch/Servers/V2ray/Models/V2rayNSharing.cs b/Netch/Servers/V2ray/Models/V2rayNSharing.cs index 8a162e4f..a5af695a 100644 --- a/Netch/Servers/V2ray/Models/V2rayNSharing.cs +++ b/Netch/Servers/V2ray/Models/V2rayNSharing.cs @@ -31,7 +31,7 @@ public string net { get; set; } = string.Empty; /// - /// 伪装路径 + /// 伪装路径/服务名称 /// public string? path { get; set; } = string.Empty; diff --git a/Netch/Servers/V2ray/Utils/V2rayConfigUtils.cs b/Netch/Servers/V2ray/Utils/V2rayConfigUtils.cs index 790cda26..c668a42c 100644 --- a/Netch/Servers/V2ray/Utils/V2rayConfigUtils.cs +++ b/Netch/Servers/V2ray/Utils/V2rayConfigUtils.cs @@ -313,9 +313,15 @@ namespace Netch.Servers.Utils case "grpc": var grpcSettings = new GrpcSettings { - serviceName = server.GRPCServiceName + serviceName = server.Path, + multiMode = false }; + if (server.FakeType == "multi") + { + grpcSettings.multiMode = true; + } + streamSettings.grpcSettings = grpcSettings; break; default: diff --git a/Netch/Servers/V2ray/V2rayUtils.cs b/Netch/Servers/V2ray/V2rayUtils.cs index 4f2962b6..4f8b6636 100644 --- a/Netch/Servers/V2ray/V2rayUtils.cs +++ b/Netch/Servers/V2ray/V2rayUtils.cs @@ -47,6 +47,10 @@ namespace Netch.Servers server.QUICSecret = parameter.Get("key") ?? ""; server.FakeType = parameter.Get("headerType") ?? "none"; break; + case "grpc": + server.FakeType = parameter.Get("mode") ?? "gun"; + server.Path = parameter.Get("serviceName") ?? ""; + break; } server.TLSSecureType = parameter.Get("security") ?? "none"; @@ -115,6 +119,14 @@ namespace Netch.Servers if (server.FakeType != "none") parameter.Add("headerType", server.FakeType); + break; + case "grpc": + if (!string.IsNullOrEmpty(server.Path)) + parameter.Add("serviceName", server.Path); + + if (server.FakeType == "gun" || server.FakeType == "multi") + parameter.Add("mode", server.FakeType); + break; } diff --git a/Netch/Servers/VLESS/VLESS.cs b/Netch/Servers/VLESS/VLESS.cs index 8cb4468d..5464e826 100644 --- a/Netch/Servers/VLESS/VLESS.cs +++ b/Netch/Servers/VLESS/VLESS.cs @@ -41,7 +41,5 @@ namespace Netch.Servers public static List TransferProtocols => VMessGlobal.TransferProtocols; public static List QUIC => VMessGlobal.QUIC; - - public static List GRPCModes => VMessGlobal.GRPCModes; } } \ No newline at end of file diff --git a/Netch/Servers/VLESS/VLESSForm/VLESSForm.cs b/Netch/Servers/VLESS/VLESSForm/VLESSForm.cs index e82c1cd8..f2f05d38 100644 --- a/Netch/Servers/VLESS/VLESSForm/VLESSForm.cs +++ b/Netch/Servers/VLESS/VLESSForm/VLESSForm.cs @@ -28,8 +28,6 @@ namespace Netch.Servers.VLESSForm CreateTextBox("Path", "Path", s => true, s => server.Path = s, server.Path); CreateComboBox("QUICSecurity", "QUIC Security", VLESSGlobal.QUIC, s => server.QUICSecure = s, server.QUICSecure); CreateTextBox("QUICSecret", "QUIC Secret", s => true, s => server.QUICSecret = s, server.QUICSecret); - CreateComboBox("GRPCMode", "GRPC Mode", VLESSGlobal.GRPCModes, s => server.GRPCMode = s, server.GRPCMode); - CreateTextBox("GRPCServiceName", "GRPC ServiceName", s => true, s => server.GRPCServiceName = s, server.GRPCServiceName); CreateComboBox("UseMux", "Use Mux", new List { "", "true", "false" }, diff --git a/Netch/Servers/VMess/Form/VMessForm.cs b/Netch/Servers/VMess/Form/VMessForm.cs index 041a0b27..9e133d97 100644 --- a/Netch/Servers/VMess/Form/VMessForm.cs +++ b/Netch/Servers/VMess/Form/VMessForm.cs @@ -23,8 +23,6 @@ namespace Netch.Servers.VMess.Form CreateTextBox("Path", "Path", s => true, s => server.Path = s, server.Path); CreateComboBox("QUICSecurity", "QUIC Security", VMessGlobal.QUIC, s => server.QUICSecure = s, server.QUICSecure); CreateTextBox("QUICSecret", "QUIC Secret", s => true, s => server.QUICSecret = s, server.QUICSecret); - CreateComboBox("GRPCMode", "GRPC Mode", VMessGlobal.GRPCModes, s => server.GRPCMode = s, server.GRPCMode); - CreateTextBox("GRPCServiceName", "GRPC ServiceName", s => true, s => server.GRPCServiceName = s, server.GRPCServiceName); CreateComboBox("UseMux", "Use Mux", new List { "", "true", "false" }, diff --git a/Netch/Servers/VMess/VMess.cs b/Netch/Servers/VMess/VMess.cs index 76e2cbce..1e88f53b 100644 --- a/Netch/Servers/VMess/VMess.cs +++ b/Netch/Servers/VMess/VMess.cs @@ -54,16 +54,6 @@ namespace Netch.Servers.VMess /// public string? QUICSecret { get; set; } = string.Empty; - /// - /// GRPC 服务名称 - /// - public string? GRPCServiceName { get; set; } - - /// - /// GRPC 模式 - /// - public string? GRPCMode { get; set; } = VMessGlobal.GRPCModes[0]; - /// /// TLS 底层传输安全 /// @@ -102,12 +92,6 @@ namespace Netch.Servers.VMess "chacha20-poly1305" }; - public static readonly List GRPCModes = new List() - { - "gun", - "multi" - }; - /// /// V2Ray 传输协议 /// @@ -132,7 +116,9 @@ namespace Netch.Servers.VMess "utp", "wechat-video", "dtls", - "wireguard" + "wireguard", + "gun", + "multi" }; ///