[英]How to determine if you're on a wireless interface under Linux
您如何在Linux下以编程方式确定当前的活动以太网接口是否为无线设备?
例如,我的机器具有有线和无线接口,而ifconfig
的输出为:
eth0 Link encap:Ethernet HWaddr 64:b9:e9:cd:4f:b3
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:7700676 errors:0 dropped:0 overruns:0 frame:0
TX packets:3412854 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3131639132 (3.1 GB) TX bytes:16826666276 (16.8 GB)
Interrupt:27 Base address:0x4000
eth2 Link encap:Ethernet HWaddr 01:16:4b:1b:90:c9
inet addr:192.168.1.152 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fa81::216:baff:de1b:91cc/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2307478 errors:15 dropped:0 overruns:0 frame:18469924
TX packets:1924909 errors:527 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2475924284 (2.4 GB) TX bytes:996430577 (996.4 MB)
Interrupt:23
那里有什么可以识别一个无线的吗?
尽管所有网络流量都流经单个接口(尤其是在单个适配器系统中)是很常见的,但通常情况下并非如此。 例如,我的笔记本电脑通常通过wi-fi及其100 base T电缆来替代路由。
检查ip route
的输出是否有wlan条目。 至少,这表明是否可能存在无线流量。 默认路由可能是最好的指示。
硬接线系统:
[wally@lenovotower ~]$ ip route
default via 192.168.0.1 dev eth0 proto static
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.103 metric 1
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1
Wi-Fi系统:
[wally@lenovafedora ~]$ ip route
192.168.0.0/24 dev wlan0 proto kernel scope link src 192.168.0.105 metric 2
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1
default via 192.168.0.1 dev wlan0 proto static
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.