The socket module in Python provides access to the BSD socket interface.
We will use socket class which handle functions and data channel to perform network task. For instance, translating server domain name to ip address. Source
We use sockets for any kind of communication through computer over the internet.For almost 99% of socket programs, we use INET sockets.
The web browser’s that you use opens a socket and connects to the web server. Any network communication goes through a socket. For more info on Socket Module, please refer: official documentation.
Lets take a look at some of the socket functions, to get a basic understanding before we start with our port scanner program.
sock = socket.socket (socket_family, socket_type)
Syntax for creating a socket
sock = socket.socket (socket.AF_INET, socket.SOCK_STREAM)
Creates a stream socket
Socket Family (here Address Family version 4 or IPv4)
Socket type TCP connections
Socket type UDP connections
Translate a host name to IPv4 address format
Translate a host name to IPv4 address format, extended interface
Get the fqdn (fully qualified domain name)
Returns the hostname of the machine..