python socket获取多网卡信息
时间: 2024-10-13 22:06:34 浏览: 27
在Python中,你可以使用socket模块来获取多网卡的信息,但是socket本身并不直接提供网络接口信息。不过,你可以通过os和platform模块来获取这个信息。下面是一个简单的示例:
```python
import os
def get_nic_info():
# 获取所有网络适配器名称
nic_names = [interface for interface in os.listdir('/sys/class/net') if os.path.exists(os.path.join('/sys/class/net', interface, 'device'))]
# 遍历并打印每个适配器的信息
for nic_name in nic_names:
info = {}
with open(os.path.join('/sys/class/net', nic_name, 'name'), 'r') as f:
info['name'] = f.read().strip()
with open(os.path.join('/sys/class/net', nic_name, 'operstate'), 'r') as f:
info['operstate'] = f.read().strip()
print(f"网卡名称: {info['name']},工作状态: {info['operstate']}")
get_nic_info()
```
这段代码会列出系统中所有的网络接口及其当前的工作状态(例如,`up` 表示活动,`down` 表示未连接)。注意这只是一个基本的示例,实际的网络配置信息可能会更复杂,包括IP地址、子网掩码等。
阅读全文