如何在Python / Windows中列出网络接口,配置IP,网络掩码和网关

时间:2010-12-21 05:07:34

标签: python windows networking

我想开发一个小应用程序来监控arp并扫描本地网络中的arp列表。

目前,我需要检索网络接口及其配置列表。

我大部分时间都在使用Linux,所以我对Win32 API了解不多,无论如何都是以python的方式做到这一点?我正在使用Python 2.6和PyQt以及Scapy(还有pywin32,所以如果你提供win32的详细方法,我会尝试)

我找到了pcapy.findalldevs(),但它无法进行配置。我不太关心名称,只需配置(IP,网络掩码)即可。

3 个答案:

答案 0 :(得分:2)

对于跨平台解决方案,我使用了netifaces

答案 1 :(得分:0)

不确定您想要什么信息,但ipconfig /all肯定听起来像你想要的那样:

import subprocess
subprocess.call('ipconfig /all')

答案 2 :(得分:-1)

对于Linux,我使用pynetlinux

pip install pynetlinux==1.1
>>> from pynetlinux import ifconfig
>>> ifconfig.Interface("eth0").get_ip()
'192.168.1.66'

编辑: 这确实适用于Linux,对于跨平台解决方案,请参阅我的other answer