diff --git a/redisson/src/main/java/org/redisson/cluster/ClusterConnectionManager.java b/redisson/src/main/java/org/redisson/cluster/ClusterConnectionManager.java index a02bb61ba..9e0870902 100644 --- a/redisson/src/main/java/org/redisson/cluster/ClusterConnectionManager.java +++ b/redisson/src/main/java/org/redisson/cluster/ClusterConnectionManager.java @@ -61,6 +61,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import io.netty.resolver.AddressResolver; +import io.netty.util.NetUtil; import io.netty.util.concurrent.Future; import io.netty.util.concurrent.FutureListener; import io.netty.util.concurrent.ScheduledFuture; @@ -100,15 +101,9 @@ public class ClusterConnectionManager extends MasterSlaveConnectionManager { try { RedisConnection connection = connectionFuture.syncUninterruptibly().getNow(); - if (cfg.getNodeAddresses().size() == 1) { - AddressResolver resolver = createResolverGroup().getResolver(getGroup().next()); - Future> addrsFuture = resolver.resolveAll(InetSocketAddress.createUnresolved(addr.getHost(), addr.getPort())); - List allAddrs = addrsFuture.syncUninterruptibly().getNow(); - if (allAddrs.size() > 1) { - configEndpointHostName = addr.getHost(); - isConfigEndpoint = true; - } - resolver.close(); + if (cfg.getNodeAddresses().size() == 1 && NetUtil.createByteArrayFromIpAddressString(addr.getHost()) == null) { + configEndpointHostName = addr.getHost(); + isConfigEndpoint = true; } clusterNodesCommand = RedisCommands.CLUSTER_NODES;