A maioria das plataformas Linux vem com wpa_supplicant
, que pode ser usado de forma independente ou por outros "frameworks" como o NetworkManager, e sua ferramenta de CLI wpa_cli
. Eu não sei sobre métodos mais recentes do systemd (que tendem a substituir todo o resto ...).
# wpa_cli
wpa_cli v2.6
[...]
Selected interface 'wlan0'
Interactive mode
> scan
OK
<3>CTRL-EVENT-SCAN-STARTED
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>CTRL-EVENT-NETWORK-NOT-FOUND
<3>CTRL-EVENT-SCAN-STARTED
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>CTRL-EVENT-NETWORK-NOT-FOUND
> scan_results
bssid / frequency / signal level / flags / ssid
xx:xx:xx:xx:xx:xx 2412 -39 [WPA2-PSK-CCMP][ESS]
xx:c7:29:xx:xx:xx 2462 -56 [WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][WPS][ESS] SomeSSID
xx:e9:dd:xx:xx:xx 2412 -57 [WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][WPS][ESS] OtherSSID
xx:8e:78:xx:xx:xx 2412 -65 [WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP+TKIP][WPS][ESS] AthirdSSID
[...]
ou não interativamente:
# wpa_cli scan_results
Selected interface 'wlan0'
bssid / frequency / signal level / flags / ssid
xx:xx:xx:xx:xx:xx 2412 -40 [WPA2-PSK-CCMP][ESS]
[...]
(apenas para informação, este é um ssid oculto).