Files
bitchmin/server/app/utils/iputils.py
Fergal Moran 256612f9cb Initial commit
2020-09-04 04:15:12 +01:00

27 lines
695 B
Python

import ipaddress
import re
import sys
def is_valid_ip(address):
try:
ip = ipaddress.ip_address(address)
print('%s is a correct IP%s address.' % (ip, ip.version))
return True
except ValueError:
print('address/netmask is invalid: %s' % sys.argv[1])
except:
print('Usage : %s ip' % sys.argv[0])
return False
def is_valid_hostname(hostname):
if len(hostname) > 255:
return False
if hostname[-1] == ".":
hostname = hostname[:-1] # strip exactly one dot from the right, if present
allowed = re.compile("(?!-)[A-Z\d-]{1,63}(?<!-)$", re.IGNORECASE)
return all(allowed.match(x) for x in hostname.split("."))