diff --git a/springboot-backend/src/main/java/com/admin/service/impl/TunnelServiceImpl.java b/springboot-backend/src/main/java/com/admin/service/impl/TunnelServiceImpl.java index 9c242ea..36187e3 100644 --- a/springboot-backend/src/main/java/com/admin/service/impl/TunnelServiceImpl.java +++ b/springboot-backend/src/main/java/com/admin/service/impl/TunnelServiceImpl.java @@ -536,7 +536,8 @@ public class TunnelServiceImpl extends ServiceImpl impleme tunnel.setTrafficRatio(tunnelUpdateDto.getTrafficRatio()); tunnel.setInIp(tunnelUpdateDto.getInIp()); - if (StringUtils.isEmpty(tunnel.getInIp())) { + boolean forceRegenerateInIp = hasNodeChanges && tunnelUpdateDto.getInNodeId() != null; + if (StringUtils.isEmpty(tunnel.getInIp()) || forceRegenerateInIp) { java.util.LinkedHashSet inIps = new java.util.LinkedHashSet<>(); List chainTunnels = chainTunnelService.list( new QueryWrapper().eq("tunnel_id", tunnel.getId()).eq("chain_type", 1)