DD-WRT:如何通过 CLI shell 猜测每个与 wifi 关联的客户端的链接质量?

DD-WRT:如何通过 CLI shell 猜测每个与 wifi 关联的客户端的链接质量?

在处理OpenWRT,我用这个方法来知道链接质量关联无线客户端 (AP 模式):

root@AP-0:~# iw dev wlan0 station dump
Station 4c:74:03:f2:15:27 (on wlan0)
        inactive time:  5050 ms
        rx bytes:       10053
        rx packets:     70
        tx bytes:       6004
        tx packets:     46
        tx retries:     20
        tx failed:      0
        signal:         -84 [-86, -91] dBm
        signal avg:     -83 [-85, -88] dBm
        tx bitrate:     21.7 MBit/s MCS 2 short GI
        rx bitrate:     6.0 MBit/s
        authorized:     yes
        authenticated:  yes
        preamble:       short
        WMM/WME:        no
        MFP:            no
        TDLS peer:      no

我主要关注的是比特率字段,因为不良的 wifi 链接会降低速度。

但在DD-WRT为了我的布法罗 WHR-HP-G54我只有这个命令,它不会为相关客户端提供比特率和噪音信息:

~ # /usr/sbin/wl assoclist
assoclist E4:9A:79:5E:F6:DD
assoclist 2C:F0:EE:7B:00:B4
assoclist 84:DB:AC:A6:B4:E6
assoclist B0:34:95:27:F4:B6

我知道通过 GUI 我可以获得该信息,但只要我可以编写脚本并解析数据,通过命令行获取它更有用。

有什么办法了解链接质量为了每个已连接 wifi 客户端?

更多数据:

  • 我问过这个问题DD-WRT 论坛,但没有运气。
  • 嵌入的命令wl似乎没有提供此信息,或者我无法找到它。

答案1

在这里找到您需要的信息:

for INTERFACE in $(nvram get wl_ifnames)
do
  for CLIENT in $(wl -i $INTERFACE assoclist | sed 's/assoclist//')
  do
    echo $INTERFACE $CLIENT $(wl -i $INTERFACE rssi $CLIENT)
  done
done

好的,在上面的代码片段中,nvram 命令获取无线接口名称,如下所示:

# echo $(nvram get wl_ifnames)
eth1 eth2

wl assoclist 为您提供每个连接客户端的 MAC 地址:

# wl -i eth2 assoclist
assoclist 11:11:11:11:11:11
assoclist 22:22:22:22:22:22

使用 rssi 获取每个信号强度:

# wl -i eth2 rssi 22:22:22:22:22:22
-64

使用 sta_info 获取更多数据

# wl -i eth2 sta_info 22:22:22:22:22:22
 STA 22:22:22:22:22:22:
         aid:1
         rateset [ 6 9 12 18 24 36 48 54 ]
         idle 2 seconds
         in network 1647 seconds
         state: AUTHENTICATED ASSOCIATED AUTHORIZED
         flags 0x11e13b: BRCM WME PS N_CAP VHT_CAP AMPDU AMSDU
         HT caps 0x6f: LDPC 40MHz SGI20 SGI40
         VHT caps 0x63: LDPC SGI80 SU-BFR SU-BFE
         tx data pkts: 959451
         tx data bytes: 199701001
         tx ucast pkts: 16565
         tx ucast bytes: 40283979
         tx mcast/bcast pkts: 942886
         tx mcast/bcast bytes: 159417022
         tx failures: 0
         rx data pkts: 9659
         rx data bytes: 1144526
         rx ucast pkts: 9650
         rx ucast bytes: 1143442
         rx mcast/bcast pkts: 9
         rx mcast/bcast bytes: 1084
         rate of last tx pkt: 866667 kbps
         rate of last rx pkt: 24000 kbps
         rx decrypt succeeds: 7880
         rx decrypt failures: 1
         tx data pkts retried: 15
         tx data pkts retry exhausted: 0
         per antenna rssi of last rx data frame: -68 -71 -66 0
         per antenna average rssi of rx data frames: -68 -71 -64 0
         per antenna noise floor: -98 -98 -98 0

相关内容