In my Python script I need to retrieve both the IP address of the machine the script is running on and its network address and its network bytes.
As for the IP address, I found the solution in the archive:
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(("www.google.com",80))
myAddress = (s.getsockname()[0])
s.close()
But how should I go about finding network address and network bytes? I need to put this information into a filter for tcpdump in the format $NetworkAddress/$NetworkBytes
, if that helps at all.
Example:
128.1.2.0/20
I can actually find it under inet
when I run ip addr
. Any easy way to get this information in Python?