如何检查无线接口是内部接口还是外部接口

如何检查无线接口是内部接口还是外部接口

我目前正在编写一个脚本,需要检查无线接口是外部的还是内部的。因此,我有以下 iwconfig 输出:

wlp2s0    unassociated  Nickname:"<WIFI@REALTEK>"
          Mode:Managed  Frequency=2.437 GHz  Access Point: Not-Associated   
          Sensitivity:0/0  
          Retry:off   RTS thr:off   Fragment thr:off
          Power Management:off

wlx00e1b010ea1f  IEEE 802.11  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=off   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

我知道 wlp2s0 是我的内部无线网卡,wlx00e1b010ea1f 是我的外部无线适配器。因此脚本应该打印以下结果:

wlp2s0 -> Internal
wlx00e1b010ea1f -> External

PS:我可以使用以下命令确定此类信息:

>nmcli -f GENERAL,WIFI-PROPERTIES dev show wlx00e02d3c613e | grep usb
GENERAL.UDI:                            /sys/devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/net/wlx00e02d3c613e
GENERAL.PATH:                           pci-0000:00:14.0-usb-0:1:1.0

通过 grepping usb,如果有任何结果,那么我知道该接口是外部的。

但问题是,当 NetworkManager 关闭时,此命令不起作用。

答案1

wlp 的意思是,西愤怒大号埃斯ci,换句话说,是一个内部设备。2s0 部分指的是设备所连接的 PCI 总线。

wlx 的意思是,西愤怒大号本质X外部。00e1b010ea1f部分是设备的MAC地址。

参考:https://www.freedesktop.org/software/systemd/man/systemd.net-naming-scheme.html

相关内容