The socket module in Python provides access to the BSD socket interface.
This post will show examples on how to use the socket functions.
For more reading about the socket module and its functions, I recommend the official documentation here.
Get the fqdn (fully qualified domain name)
print socket.getfqdn("8.8.8.8") >>google-public-dns-a.google.com
Translate a host name to IPv4 address format
print socket.gethostbyname("www.python.org") >>82.94.164.162
Translate a host name to IPv4 address format, extended interface
print socket.gethostbyname_ex("www.python.org") >>('python.org', [], ['82.94.164.162'])
Returns the hostname of the machine..
print socket.gethostname() >>Virtualbox123
Script
The script below, will return the IP address of the hostname given. If it cannot find the hostname, it will print the error to screen using the exception handling "gaierror" (raised for address-related errors).
import socket name = "wwaxww.python.org" try: host = socket.gethostbyname(name) print host except socket.gaierror, err: print "cannot resolve hostname: ", name, err
If you look in the name, I misspelled the address to let you see how the error message would look like >>cannot resolve hostname: wwaxww.python.org [Errno -5] No address associated with hostname And if I run it again with the correct spelling
import socket name = "www.python.org" try: host = socket.gethostbyname(name) print host except socket.gaierror, err: print "cannot resolve hostname: ", name, err
>>82.94.164.162