Python:是一个给定的网络接口wifi或以太网?

时间:2013-05-07 15:09:37

标签: python wifi ethernet network-interface

有没有办法,从 Python 中,知道某个(并且已连接)网络接口 wifi 还是以太网

模块inetfaces提供了可用的网络接口列表和相应的地址,但仅此而已。

2 个答案:

答案 0 :(得分:1)

使用pyroute2。IW(类似脚本在示例目录中):

import sys
from pyroute2 import IW
from pyroute2 import IPRoute
from pyroute2.netlink import NetlinkError

ip = IPRoute()
iw = IW()
index = ip.link_lookup(ifname=sys.argv[1])[0]
try:
    iw.get_interface_by_ifindex(index)
    print("wireless interface")
except NetlinkError as e:
    if e.code == 19:  # 19 'No such device'
        print("not a wireless interface")
finally:
    iw.close()
    ip.close()

答案 1 :(得分:0)

您可以使用python scapy 模块。

from scapy.all import *
print(get_windows_if_list())