Como monitorar outros nós para obter o RSSI?

2

Eu preciso medir o RSSI entre dois pares de nós na mesma rede. Se eu tiver essas duas informações:

  1. SSID para sua rede.
  2. IP do nó de destino para obter o RSSI relacionado a ele.

Então eu encontrei este comando: iwspy mas parece que não foi encontrado no kernel e eu vejo isso link que falar sobre:

We removed iwspy support a very long time ago because it is useless, but forgot to stop claiming to support it. Apparently, nobody cares, but remove it nonetheless.

    
por H.H 10.03.2013 / 16:48

1 resposta

1

Se a sua interface estiver no modo IBSS, Mesh point ou AP / P2P Group Owner, você poderá descarregar o MAC das estações e seu nível de sinal conforme a sua placa de rede com iw dev wlan0 station dump .

Quanto à busca do MAC a partir do endereço IP, uma sugestão seria usar a tabela ARP com ip neigh . Observe que você pode ter que fazer ping no endereço IP para preencher a tabela ARP.

Então, para buscar o RSSI de um nó que reivindica o endereço A, pode ser:

MAC="$(ip neigh show to A dev wlan0 | cut -f 3 -d ' ')"
if [ -n "$MAC" ]; then
    iw dev wlan0 station get "$MAC" | sed -nre "s@\s*signal:\s*@@p"
else
    # no ARP entry. Ping the address and retry.
fi

Se, no entanto, sua interface não for deste tipo (por exemplo, Non-AP sta), então você terá que mexer no modo de monitor, e você não tem uma maneira confiável de obter um endereço MAC de um endereço IP (dica: se a estação estiver roteando, então usará o IP do remetente, não o seu próprio).

Como dito antes, iwconfig/iwspy/iwlist/iwpriv está obsoleto e é uma droga. eles usam uma API do kernel (extensões sem fio) que está obsoleta e é implementada apenas para propósitos de retrocompatibilidade, e somente se ativada na configuração do kernel. Muitas partes dele são falsificadas ou não possuem muitos recursos, incluindo o Wi-Fi Direct. Se você está usando o Wi-Fi direct, então você já está usando a moderna API do kernel nl80211, e você deve esquecer a API wext e iwconfig/iwspy .

E sim, você precisa do endereço MAC do nó. O Wi-Fi opera na camada 1 e 2 no modelo OSI e não se preocupa com a camada superior. Um IP e um endereço MAC servem a um propósito diferente e não são a mesma coisa.

    
por 10.03.2013 / 18:19