1

I can get the RSSI of an AP I'm connected to by simply doing:

iwconfig wlan0 | grep "Signal level"

But how do I get the RSSI of a specific AP that I'm not connected to?

If I do iwlist wlan0 scan I get all the AP's and their RSSI, but I can't really grep the RSSI of a specific one that I'm interested in.

3
  • I first interpreted your question that you don't get the signal strength from the iwlist output, so I suggested using aircrack-ng to scan for devices. But reading it again, it looks like you have the information you want, but only don't know how to extract it from the output? Please clarify if this is true and what exactly your problem is.
    – Byte Commander
    Jun 17, 2016 at 19:50
  • Simply want to get the signal strength for a specific SSID without having to connect to it. I can only use iw or iwconfig/iwlist
    – Toshiro
    Jun 19, 2016 at 3:28
  • So you're looking for a matching grep command that parses the output of iwlist wlan0 scan and returns the signal strength of a specified AP? Please add some example output to your question and describe how you want to specify an AP and how your desired result should look like. Thanks.
    – Byte Commander
    Jun 19, 2016 at 12:23

3 Answers 3

4

I've been using the grep -Bn style commands to monitor rssi of an AP I'm not connected to, ultimately, some more specific parsers can be written, but this is a good-enough one-liner for a lot of purposes: the output contains the rssi

You can use the scan options of iw or iwlist : let's look for an AP called Sage that appears in my office space:

iwconfig # get interface name, let's say it's "wifi0" 
sudo iw wifi0 scan | grep "SSID: Sage$" -B6 # show 6 lines before the SSID

output:

        freq: 2462
        beacon interval: 100 TUs
        capability: ESS Privacy ShortPreamble ShortSlotTime (0x0431)
        signal: -79.00 dBm
        last seen: 624 ms ago
        Information elements from Probe Response frame:
        SSID: Sage

with iwlist:

sudo iwlist wifi0 scan | grep ESSID:\"Sage\" -B3

output:

                    Frequency:2.462 GHz (Channel 11)
                    Quality=32/70  Signal level=-78 dBm  
                    Encryption key:on
                    ESSID:"Sage"

I've been using this an either an interactive monitor for signal strength, antenna placement etc using watch with this expression, or, for statistics, using timeout and watch

0

You could use the aircrack-ng suite to monitor unconnected WiFi access points and their signal strengths.

  1. Install the package aircrack-ng from the universe section of the official Ubuntu repositories:

    sudo apt-get install aircrack-ng
    
  2. Set your WiFi card to monitor mode:

    sudo airmon-ng start wlan0
    
  3. Scan for access points and clients in range:

    sudo airodump-ng mon0
    

Example output:

CH 13 ][ Elapsed: 32 s ][ 2016-06-17 21:39

 BSSID              PWR  Beacons    #Data, #/s  CH  MB   ENC  CIPHER AUTH ESSID
 24:65:xx:xx:xx:xx  -59        0     4106  145   1  -1   WPA              <length:  0> 

 BSSID              STATION            PWR   Rate    Lost    Frames  Probe
 24:65:xx:xx:xx:xx  08:D4:xx:xx:xx:xx    0    0e- 0e     0     4101

In the first table you see the access points, the signal strength is displayed in the PWR column. The second table lists all client devices.

1
  • I'm on an embedded platform with limited tools, just have iwconfig and iw
    – Toshiro
    Jun 19, 2016 at 3:25
0

i am responsing late appologies

you could get the list of network adapters from ifconfig
and then run iwconfig wlp2s0 | grep -i --color Signal Level

i hope it helps

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .