OpenWRT 中的 Wi-Fi 信号强度

OpenWRT 中的 Wi-Fi 信号强度

有没有办法在 OpenWRT 中检索无线网络中连接的所有设备的信号强度?我想检查连接到路由器的设备的信号强度。我的路由器有 OpenWRT 内核。

答案1

是的,实际上它非常简单:iw dev wlan0 station dump这是相关文档。

某个家伙OpenWrt 的论坛制作了一个脚本,列出相关站点并查找这些站点的 IP 地址和主机名。我对其进行了修改,iw以代替过时的wl命令:

#! /bin/ash
ifaces="wlan0 wlan1"

for iface in $ifaces
do
  echo $iface
  stations=`iw dev $iface station dump | grep Station | awk '{print $2}'`

  for sta in $stations
  do
    echo "------------------------------------------------------"
    iw dev $iface station get $sta
    echo -e "\t ---"
    grep $sta /proc/net/arp | awk '{print "\t IP: "$1" (from ARP table)"}'
    grep -i $sta /var/dhcp.leases | awk '{print "\t IP: "$3" (from DHCP Lease)\n\t NAME: "$4" (from DHCP Lease)"}'
  done
  echo "------------------------------------------------------"
done

请注意,我的路由器有两个无线网卡,而您的路由器可能没有。请ifaces相应地调整变量。

答案2

我正在使用 OpenWRT 路由器作为中继器我根据 Daniel 的帖子编写了这个脚本,以便不断更新我的 WiFi 信号强度已经连接基站同时设置我的天线视线。(使用 Ctrl+c 停止执行)

#!/bin/bash
iface="wlan0"
while true
do
    clear
    iw dev $iface station dump | grep 'signal:\|beacon signal'
    let "x++"
    echo Read Count: $x
    sleep 1
done

相关内容