发布时间:2019-09-08 09:10:08编辑:auto阅读(2393)
#!/usr/bin/python # encoding: utf-8 # -*- coding: utf8 -*- """ Create Date: 2016/12/26 Create Time: 17:53 show Windows or Linux network Nic status, such as MAC address, Gateway, IP address, etc # python getNetworkStatus.py Routing Gateway: 10.0.0.1 Routing NIC Name: enp3s0 Routing NIC MAC Address: 10:c3:7b:61:22:02 Routing IP Address: 10.0.0.194 Routing IP Netmask: 255.255.255.0 """ import os import sys try: import netifaces except ImportError: try: command_to_execute = "pip install netifaces || easy_install netifaces" os.system(command_to_execute) except OSError: print "Can NOT install netifaces, Aborted!" sys.exit(1) import netifaces routingGateway = netifaces.gateways()['default'][netifaces.AF_INET][0] routingNicName = netifaces.gateways()['default'][netifaces.AF_INET][1] for interface in netifaces.interfaces(): if interface == routingNicName: # print netifaces.ifaddresses(interface) routingNicMacAddr = netifaces.ifaddresses(interface)[netifaces.AF_LINK][0]['addr'] try: routingIPAddr = netifaces.ifaddresses(interface)[netifaces.AF_INET][0]['addr'] # TODO(Guodong Ding) Note: On Windows, netmask maybe give a wrong result in 'netifaces' module. routingIPNetmask = netifaces.ifaddresses(interface)[netifaces.AF_INET][0]['netmask'] except KeyError: pass display_format = '%-30s %-20s' print display_format % ("Routing Gateway:", routingGateway) print display_format % ("Routing NIC Name:", routingNicName) print display_format % ("Routing NIC MAC Address:", routingNicMacAddr) print display_format % ("Routing IP Address:", routingIPAddr) print display_format % ("Routing IP Netmask:", routingIPNetmask)
windows执行的Routing NIC Name可能会出现C20B1496-F5CA-4670-A4FB-之类
https://pypi.python.org/pypi/netifaces 用法
上一篇: python Howto之logging
下一篇: apache(wamp) 添加pytho
47854
46416
37304
34750
29325
25984
24931
19960
19555
18043
5802°
6426°
5942°
5971°
7075°
5922°
5956°
6450°
6414°
7793°