Intensidade do sinal Wi-Fi no OpenWRT

2

Existe uma maneira de recuperar a intensidade do sinal em todos os dispositivos conectados em uma rede sem fio no OpenWRT? Quero verificar a intensidade do sinal dos dispositivos conectados ao roteador. Meu roteador tem o kernel OpenWRT.

    
por megha 03.07.2015 / 13:34

2 respostas

1

Sim, é bem simples, na verdade: iw dev wlan0 station dump . Veja a documentação relevante. .

Um cara nos fóruns da OpenWrt criou um script que lista estações associadas e também procura endereços IP e nomes de host para essas estações. Eu o adaptei para usar iw em vez do comando wl desatualizado:

#! /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

Por favor, note que o meu roteador tem duas placas de rede sem fio, que o seu roteador pode não ter. Ajuste a variável ifaces de acordo.

    
por 15.08.2015 / 17:36
0

Estou usando meu roteador OpenWRT como um repetidor e usei a postagem de Daniel para escrever este script para continuar me atualizando sobre a intensidade do sinal WiFi da estação base já conectada enquanto configura a linha de visão da minha antena. (use Ctrl + c para interromper a execução)

#!/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
    
por 18.06.2018 / 03:40