diff --git a/silkaj/network_tools.py b/silkaj/network_tools.py index b3b9ea9fdaf5a44c52d30152004b9dabbf4baa8b..d269ae52e002d522d144d5baef7d2ed285c417b8 100644 --- a/silkaj/network_tools.py +++ b/silkaj/network_tools.py @@ -16,13 +16,14 @@ along with Silkaj. If not, see <https://www.gnu.org/licenses/>. """ from __future__ import unicode_literals -from ipaddress import ip_address +import re import socket import logging from sys import exit, stderr from asyncio import sleep from duniterpy.api.client import Client from duniterpy.api.bma import network +from duniterpy.constants import IPV4_REGEX, IPV6_REGEX from silkaj.constants import ( G1_DEFAULT_ENDPOINT, @@ -198,10 +199,11 @@ def endpoint_type(sep, ep): def check_ip(address): - try: - return ip_address(address).version - except: - return 0 + if re.match(IPV4_REGEX, address) != None: + return 4 + elif re.match(IPV6_REGEX, address) != None: + return 6 + return 0 def best_endpoint_address(ep, main):