Don't assume gethostbyaddr()'s primary hostname is the same as
gethostname(), or even that gethostname() can be found in the list of
hosts returned by gethostbyaddr(). We do test for at least one FQDN
in gethostbyaddr().
import socket
import os
import time
+import string
def missing_ok(str):
try:
hostname = socket.gethostname()
ip = socket.gethostbyname(hostname)
hname, aliases, ipaddrs = socket.gethostbyaddr(ip)
+all_host_names = [hname] + aliases
if verbose:
print hostname
print ip
print hname, aliases, ipaddrs
+ print all_host_names
-if hostname <> hname:
- print 'hostname mismatch'
+for name in all_host_names:
+ if string.find(name, '.'):
+ break
+else:
+ print 'FQDN not found'
print socket.getservbyname('telnet', 'tcp')
try: