01 #!/usr/bin/env python
02 import sys
03 from socket import *
04
05 host = sys.argv[1]
06 port = 80 if len(sys.argv)<3 else sys.argv[2]
07
08 for addrinfo in getaddrinfo(host, port,AF_UNSPEC, SOCK_STREAM):
09     family, socktype, proto, canonname, sockaddr = addrinfo
10     socketObject = socket(family, socktype, proto)
11     #socketObject = socket(*addrinfo[:3])
12     if socketObject is None: continue
13     haveConnection = False
14     try:
15         socketObject.connect(sockaddr)
16         socketObject.close()
17         haveConnection = True
18     except:
19         pass
20     familyString = "IPv6" if family==AF_INET6 else "IPv4"
21     args = familyString, sockaddr[0], haveConnection
22     print("{0} address {1}, connect = {2}".format(*args))