I dispositivi Android eseguono scansioni attive o passive quando si cerca un AP WiFi


9

Vorrei sapere se i dispositivi Android eseguono la scansione attiva o passiva quando cercano l'AP per connettersi. Ho già effettuato un test utilizzando Wireshark e lo sniffer wifi e sembra che mentre un iPhone invia frame di richiesta sonda per scoprire AP disponibili (scansione attiva), il mio dispositivo Android a volte invia frame di richiesta sonda, ma la maggior parte delle volte non viene inviato Sonda Richiede frame, ma attende che l'AP invii un frame Beacon (scansione passiva).

Ho cercato informazioni / documentazione ufficiali su questo argomento, ma non ho ancora trovato nulla di utile. Le sarei molto grato se qualcuno potesse fornirmi la risposta a questa domanda.


1
Quando un telefono cellulare sta attivamente cercando un AP, dovrebbe inviare una richiesta sonda, non un frame beacon. Il telefono cellulare dovrebbe cercare una risposta beacon o sonda.
mattm,

@mattm Hai ragione. Ho modificato la domanda, in modo che sia corretta in questo momento.
Fragon

Risposte:


7

L'unica spiegazione "ufficiale" che ho trovato è in questo commento (datato luglio 2009) nei repository Git su Android:

wifi: WifiManager.startScan () ora eseguirà scansioni passive per impostazione predefinita .

Le scansioni attive verranno eseguite solo se è in uso un AP nascosto o se viene chiamato il nuovo metodo WifiManager.startScanActive () .

L'esistenza di una funzione nascosta per avviare una scansione attiva (riportata qui ) suggerisce che la normale funzione di scansione è effettivamente passiva. Questo deve essere preso con un granello di sale, tuttavia, poiché la documentazione di Android non dice esplicitamente se la funzione WifiManager.startScan () è passiva o meno.

Anche correlati: questi due post su SO ( post 1 , post 2 ) riportano che l'attività di scansione è passiva (post 1) e che da Android 4.3 non è nemmeno possibile chiamare il metodo di scansione attivo (post 2) - ma non c'è link a fonti ufficiali.


0

Ho cercato anche il documento ufficiale per una risposta esatta. Ma non ne ho trovato. Quindi sto scrivendo su questa base il mio presupposto. Credo che un dispositivo client (mobile in questo caso) esegua la scansione attiva e passiva. Le mie ragioni sono le seguenti:

  1. Quando un cellulare attiva l'interfaccia WiFi, deve cercare i beacon dagli AP vicini in modo che gli SSID disponibili vengano elencati per la connessione. Questa è una modalità di scansione passiva.
  2. Un dispositivo mobile che è stato precedentemente collegato a più SSID invaliderà i frame di richiesta del probe (con tutti gli SSID) all'AP vicino e, se l'SSID corrisponde, l'AP risponderà alla richiesta del probe e inizierà il processo di connessione / autenticazione. Questa è una modalità di scansione attiva.
  3. Caso speciale per l'AP con SSID nascosto. Quando l'utente si collega manualmente all'SSID nascosto, il dispositivo mobile genererà una richiesta di sonda e la trasmetterà all'AP vicino. Quando l'SSID corrisponde a uno degli AP, seguirà il processo di connessione / autenticazione. Anche questa è una modalità di scansione attiva.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.