From ca70018b0c60539233908e927346d7d44193fcd1 Mon Sep 17 00:00:00 2001 From: HuangXin Date: Thu, 28 Jan 2021 19:37:33 +0800 Subject: [PATCH] =?UTF-8?q?OCT=20REM:=201.=20=E4=BF=AE=E6=AD=A3=E7=94=B1?= =?UTF-8?q?=E4=BA=8EIPv6=E5=9C=B0=E5=9D=80=E4=B8=8D=E8=A7=84=E8=8C=83?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=E4=B8=8B=E5=8F=91=E5=A4=84=E7=BD=AE=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ability/impl/DpTechBypassAbilityImpl.java | 4 ++- src/main/java/com/dispose/common/Helper.java | 26 +++++++++++++++++-- 2 files changed, 27 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/dispose/ability/impl/DpTechBypassAbilityImpl.java b/src/main/java/com/dispose/ability/impl/DpTechBypassAbilityImpl.java index ab80e8e9..78755c5f 100644 --- a/src/main/java/com/dispose/ability/impl/DpTechBypassAbilityImpl.java +++ b/src/main/java/com/dispose/ability/impl/DpTechBypassAbilityImpl.java @@ -857,7 +857,7 @@ public class DpTechBypassAbilityImpl extends DpTechAbilityImpl { if (Pattern.matches(ConstValue.ipAddrSegmentReg(), ipValue)) { // 添加到缓存 - tmpTable.put(key, ipValue); + tmpTable.put(key, Helper.ipAddrToFullFormat(ipValue)); } else { // 删除异常段 NtcRequestResultInfo rsp = getCleanTypePort().deleteProtectionObjectIPRangeForUMC(objName @@ -1053,10 +1053,12 @@ public class DpTechBypassAbilityImpl extends DpTechAbilityImpl { if (disposeServiceGroup.containsKey(v.getServiceId())) { if (!disposeServiceGroup.get(v.getServiceId()).equals(v)) { disposeServiceGroup.remove(v.getServiceId()); + v.setServiceIp(Helper.ipAddrToFullFormat(v.getServiceIp())); disposeServiceGroup.put(v.getServiceId(), v); } } else { //缓存和数据库中都不存在,则添加进缓存 + v.setServiceIp(Helper.ipAddrToFullFormat(v.getServiceIp())); disposeServiceGroup.put(v.getServiceId(), v); } } diff --git a/src/main/java/com/dispose/common/Helper.java b/src/main/java/com/dispose/common/Helper.java index c28166b7..42e295d4 100644 --- a/src/main/java/com/dispose/common/Helper.java +++ b/src/main/java/com/dispose/common/Helper.java @@ -6,7 +6,6 @@ import inet.ipaddr.AddressStringException; import inet.ipaddr.IPAddress; import inet.ipaddr.IPAddressSeqRange; import inet.ipaddr.IPAddressString; -import io.swagger.models.auth.In; import lombok.extern.slf4j.Slf4j; import java.io.BufferedReader; @@ -124,6 +123,28 @@ public class Helper { } } + /** + * Ip addr to full format string. + * + * @param ipAddr the ip addr + * @return the string + */ + public static String ipAddrToFullFormat(String ipAddr) { + String[] ipArrays = ipAddr.split("-"); + + for(int i = 0; i < ipArrays.length; i++) { + IPAddressString addrString = new IPAddressString(ipArrays[i]); + IPAddress addr = addrString.getAddress(); + ipArrays[i] = addr.toFullString().toUpperCase(); + } + + if(ipArrays.length == 1) { + return ipArrays[0]; + } else { + return ipArrays[0] + "-" + ipArrays[1]; + } + } + /** * Ip port normalize string. * @@ -238,7 +259,8 @@ public class Helper { * @return the boolean */ public static boolean isIpPortMatch(String originPort, String targetPort, HttpType portType) { - String oPort, tPort; + String oPort; + String tPort; if (portType == null) { return false;