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

如何在Python/Windows中列出网络接口及其配置IP、网络掩码和网关,python,windows,networking,Python,Windows,Networking,我想开发一个小应用程序来监控arp和扫描本地网络中的arp列表 目前,我需要检索网络接口列表及其配置 大部分时间我都在使用Linux,所以我对Win32 API不太了解,有没有用python的方式来实现这一点?我在PyQt和Scapy中使用Python2.6(也有pywin32,因此如果您提供win32的详细方式,我将尝试) 我找到了pcapy.findalldevs(),但它无法检索配置。我不太关心名称,只需要配置(IP、网络掩码)就可以了。不确定您到底想要什么信息,但ipconfig/all

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

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

大部分时间我都在使用Linux,所以我对Win32 API不太了解,有没有用python的方式来实现这一点?我在PyQt和Scapy中使用Python2.6(也有pywin32,因此如果您提供win32的详细方式,我将尝试)


我找到了pcapy.findalldevs(),但它无法检索配置。我不太关心名称,只需要配置(IP、网络掩码)就可以了。

不确定您到底想要什么信息,但
ipconfig/all
听起来确实像您想要的:

import subprocess
subprocess.call('ipconfig /all')
对于Linux,我使用

pip安装pynetlinux==1.1 >>>从pynetlinux导入ifconfig >>>ifconfig.Interface(“eth0”).get_ip() '192.168.1.66' 编辑:
这确实适用于Linux,对于跨平台解决方案,请参见我的。

对于我使用的跨平台解决方案。

这应该是一个好方法,但我想要一种更为python的方法,所以我在这里问:)@Fu4ny这与Windows上的python差不多。相信我,你不想使用Win32和API,它们真的很麻烦。我确实写了一个解析来获得配置,现在有点不成熟,但我想我应该选择这个。 pip install pynetlinux==1.1 >>> from pynetlinux import ifconfig >>> ifconfig.Interface("eth0").get_ip() '192.168.1.66'