From a2ec08f0333533131f7d071095b8b5e5232f3b70 Mon Sep 17 00:00:00 2001 From: qimaoww Date: Mon, 9 Mar 2026 02:59:35 +0800 Subject: [PATCH] fix(tunnel): restore upstream ipv6 address normalization logic --- go-backend/internal/http/handler/control_plane.go | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/go-backend/internal/http/handler/control_plane.go b/go-backend/internal/http/handler/control_plane.go index f3db8ac..b226c30 100644 --- a/go-backend/internal/http/handler/control_plane.go +++ b/go-backend/internal/http/handler/control_plane.go @@ -1620,27 +1620,23 @@ func processServerAddress(serverAddr string) string { if strings.HasPrefix(serverAddr, "[") { return serverAddr } - if looksLikeIPv6(serverAddr) { - return "[" + strings.Trim(serverAddr, "[]") + "]" - } idx := strings.LastIndex(serverAddr, ":") if idx < 0 { + if looksLikeIPv6(serverAddr) { + return "[" + serverAddr + "]" + } return serverAddr } - if strings.Count(serverAddr, ":") != 1 { - return "[" + strings.Trim(serverAddr, "[]") + "]" - } - host := strings.TrimSpace(serverAddr[:idx]) port := strings.TrimSpace(serverAddr[idx+1:]) if host == "" || port == "" { return serverAddr } if looksLikeIPv6(host) { - return "[" + strings.Trim(host, "[]") + "]:" + port + return "[" + host + "]:" + port } - return host + ":" + port + return serverAddr } func normalizeServerAddressInput(serverAddr string) string {