Useful Linux Command for Wireless

View your interfaces and configured IP addresses:

ip addr show

(or just ‘ip a‘)

View your routing table:
ip route show

Get basic info on a WLAN adapter:
sudo iw dev

Do a scan for a list of nearby networks:
sudo iw wlan0 scan

(Note: dumps A LOT of info)
sudo iw wlan0 scan | grep -i ssid:

(for just a list of SSIDs)

Get info about WLAN connections (data rate, SSID, channel (MHz), signal strength, etc.)

sudo iw wlan0 info

Set wlan0 to monitor mode (manually):

sudo ip link set dev wlan0 down

sudo iw dev wlan0 set type monitor

sudo ip link set dev wlan0 up

Change channel of WLAN adapter:

sudo iw dev wlan0 set channel 36

(change 36 to whatever channel you desire)

Change channel and set the bandwidth

sudo iw dev wlan0 set channel 40 HT20|HT40+|HT40-|80MHz

sudo iw dev wlan0 set channel 44 80MHz

Dump the full capabilities of WLAN adapter:

iw dev phy0 info

(Note: phy0 might be phy1, phy2, etc. Use ‘iw dev’ to find out)

View arp cache:
ip neighbor

sudo arp -n

View layer2 info for adapter(s)
sudo ip link

sudo ip link show wlan0

Check if adapter is recognized by system:

(for PCI adapters)

(for USB adapters)
Note: You can also look at output of dmesg just after you insert adapter.
Ex: sudo dmesg

Get info about your WLAN adapter (driver, driver version, wireless state, etc)
sudo lshw -C network

(Note: you may need to install lshw with apt install lshw)

If Network Manager is running, you can get a list of available WLANs:
nmcli dev wifi

Get and set regulatory domain
sudo iw reg get

sudo iw reg set XX

(Note: Change XX to 2-digit country code)

sudo iw reg set US

Get info about WLAN link quality

cat /proc/net/wireless

or update it every seconds like this:

watch -n 1 cat /proc/net/wireless

Install wavemon.  It gives you a simple interface with useful info about your connection

Install: apt get install wavemon

sudo wavemon (to have availability to scan network) or just wavemon