From e0d0553fd3e35766cbf174b5798056a0e6ae41aa Mon Sep 17 00:00:00 2001 From: root Date: Sun, 1 Feb 2026 12:34:31 +0000 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dv6-only=E5=85=A5=E5=8F=A3?= =?UTF-8?q?=E4=BC=98=E5=85=88=E9=80=89=E6=8B=A9=E5=87=BA=E5=8F=A3IPv6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/admin/common/utils/GostUtil.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/springboot-backend/src/main/java/com/admin/common/utils/GostUtil.java b/springboot-backend/src/main/java/com/admin/common/utils/GostUtil.java index 5a1ff7f..e681359 100644 --- a/springboot-backend/src/main/java/com/admin/common/utils/GostUtil.java +++ b/springboot-backend/src/main/java/com/admin/common/utils/GostUtil.java @@ -333,10 +333,16 @@ public class GostUtil { } private static boolean supportsV4(Node node) { + // New dual-stack fields take precedence over legacy serverIp. + // If user explicitly provided only v6, treat as v6-only. if (StrUtil.isNotBlank(node.getServerIpV4())) { return true; } + if (StrUtil.isNotBlank(node.getServerIpV6())) { + return false; + } + String legacy = node.getServerIp(); if (StrUtil.isBlank(legacy)) { return false; @@ -355,10 +361,16 @@ public class GostUtil { } private static boolean supportsV6(Node node) { + // New dual-stack fields take precedence over legacy serverIp. + // If user explicitly provided only v4, treat as v4-only. if (StrUtil.isNotBlank(node.getServerIpV6())) { return true; } + if (StrUtil.isNotBlank(node.getServerIpV4())) { + return false; + } + String legacy = node.getServerIp(); if (StrUtil.isBlank(legacy)) { return false;