9
SYS_PATH = '/sys/class/net'
13
source = open(file, 'r')
14
content = source.read()
19
def get_connected(interface):
20
STATUS = ('No', 'Yes')
21
carrier_file = os.path.join(SYS_PATH, interface, 'carrier')
25
carrier = int(_read_file(carrier_file))
29
return STATUS[carrier]
32
def get_ip_address(interface):
33
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
34
return socket.inet_ntoa(fcntl.ioctl(
37
struct.pack('256s', interface[:15].encode())
41
def get_mac_address(interface):
42
address_file = os.path.join(SYS_PATH, interface, 'address')
46
address = _read_file(address_file)
54
for interface in args:
55
connected = get_connected(interface)
56
print("Interface: %s" % interface)
57
print("Connected: %s" % connected)
59
print("IP: %s" % get_ip_address(interface))
62
print("MAC: %s\n" % get_mac_address(interface))
66
if __name__ == "__main__":
67
sys.exit(main(sys.argv[1:]))