diff --git a/duniter4j-core-client/src/main/java/org/duniter/core/client/service/local/NetworkServiceImpl.java b/duniter4j-core-client/src/main/java/org/duniter/core/client/service/local/NetworkServiceImpl.java
index dee88a0a8646c8524267961936f95575e7602109..403b3498320952c05707d17779fd4b63994d8d01 100644
--- a/duniter4j-core-client/src/main/java/org/duniter/core/client/service/local/NetworkServiceImpl.java
+++ b/duniter4j-core-client/src/main/java/org/duniter/core/client/service/local/NetworkServiceImpl.java
@@ -42,6 +42,7 @@ import org.duniter.core.service.CryptoService;
 import org.duniter.core.util.*;
 import org.duniter.core.util.CollectionUtils;
 import org.duniter.core.util.concurrent.CompletableFutures;
+import org.duniter.core.util.http.DnsUtils;
 import org.duniter.core.util.http.InetAddressUtils;
 import org.duniter.core.util.websocket.WebsocketClientEndpoint;
 import org.slf4j.Logger;
@@ -180,7 +181,7 @@ public class NetworkServiceImpl extends BaseRemoteServiceImpl implements Network
                         return peer;
                     })
                     // Exclude peer on intranet (not routable) addresses
-                    .filter(peer -> InetAddressUtils.isInternetAddress(peer.getHost()))
+                    .filter(peer -> DnsUtils.isInternetHostName(peer.getHost()) || InetAddressUtils.isInternetAddress(peer.getHost()))
                     .collect(Collectors.toList())
         )
          .thenCompose(peers -> this.refreshPeersAsync(mainPeer, peers, pool));
diff --git a/duniter4j-core-shared/src/test/java/org/duniter/core/util/http/InetAddressUtilsTest.java b/duniter4j-core-shared/src/test/java/org/duniter/core/util/http/InetAddressUtilsTest.java
index 62d8a43f2a3e6dfab3a8787e7fb76784a72a08e6..6685b6281184c393e3c31e4d629a27b323b807bb 100644
--- a/duniter4j-core-shared/src/test/java/org/duniter/core/util/http/InetAddressUtilsTest.java
+++ b/duniter4j-core-shared/src/test/java/org/duniter/core/util/http/InetAddressUtilsTest.java
@@ -130,4 +130,24 @@ public class InetAddressUtilsTest {
         checkFalse = InetAddressUtils.isInternetAddress("g1.duniter.org");
         Assert.assertFalse(checkFalse);
     }
+
+    @Test
+    public void isNotLocalAddress() {
+
+        boolean checkTrue = InetAddressUtils.isNotLocalAddress("10.0.0.1");
+        Assert.assertTrue(checkTrue);
+
+        checkTrue = InetAddressUtils.isNotLocalAddress("192.168.0.254");
+        Assert.assertTrue(checkTrue);
+
+        boolean checkFalse = InetAddressUtils.isNotLocalAddress("127.0.0.1");
+        Assert.assertFalse(checkFalse);
+
+        checkFalse = InetAddressUtils.isNotLocalAddress("localhost");
+        Assert.assertFalse(checkFalse);
+
+        // Try a host name
+        checkFalse = InetAddressUtils.isNotLocalAddress("g1.duniter.org");
+        Assert.assertFalse(checkFalse);
+    }
 }