def isLocalHost(host_name): """True if host_name points to a local ip. Uses gethostbyname() """ # first see if this is a "well known" local hostname if host_name == 'localhost' or \ host_name == 'localhost.localdomain' or \ host_name == socket.gethostname(): return True # first lookup ip addr try: ip_addr = socket.gethostbyname(host_name) if ip_addr.startswith("127."): # log.debug("this ip is on loopback, retain only the first octet") ip_addr = '127.' except socket.gaierror: log.debug("no ip address for %r" % host_name) return False # next, see if this IP addr is one of our # local addresses p = my_popen(['/sbin/ip', 'addr'], stdout=PIPE) child_stdout = p.stdout.read() found = ('inet %s' % ip_addr).encode() in child_stdout p.wait() return found
def isLocalHost(host_name): """True if host_name points to a local ip. Uses gethostbyname() """ # first see if this is a "well known" local hostname if host_name == 'localhost' or host_name == 'localhost.localdomain' or host_name == socket.gethostname(): return True # first lookup ip addr try: ip_addr = socket.gethostbyname(host_name) if ip_addr.startswith("127."): log.debug("this ip is on loopback, retain only the first octet") ip_addr = '127.' except socket.gaierror: log.debug("no ip address for %r" % host_name) return False # next, see if this IP addr is one of our # local addresses p = my_popen(['/sbin/ifconfig', '-a'], stdout=PIPE) child_stdout = p.stdout.read() found = ('inet addr:' + ip_addr) in child_stdout p.wait() return found