利用第三方模块netifaces收集网卡信息

  利用第三方模块netifaces对网卡信息的分析比较简单。

复制代码
 1 import netifaces
 2 
 3 def get_interface_list():
 4     return netifaces.interfaces()
 5 
 6 
 7 def get_addresses(interface):
 8     result = netifaces.ifaddresses(interface)
 9     address_dict = {}
10     for k,v in result.items():
11         if k == 17:
12             mac_address = v[0]['addr']
13             address_dict['mac_address'] = mac_address
14         elif k == 2:
15             ip_address = v[0]['addr']
16             net_mask = v[0]['netmask']
17             address_dict['ip_address'] = ip_address
18             address_dict['netmask'] = net_mask
19     return address_dict
20 
21 if __name__ == "__main__":
22     interface_list = get_interface_list()
23     for interface in interface_list:
24         address_dict = get_addresses(interface)
25         print("Interface information for %s: \n" % interface)
26         print("IP address: %s" % address_dict['ip_address'])
27         print("Netmask: %s\n" % address_dict['netmask'])
复制代码

 

posted @   Jason_huawen  阅读(136)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示