LinuxCommandLibrary

iwlist

Scan for available wireless networks

TLDR

Display the list of access points and ad-hoc cells in range

$ iwlist [wireless_interface] scan
copy

Display available frequencies in the device
$ iwlist [wireless_interface] frequency
copy

List the bit-rates supported by the device
$ iwlist [wireless_interface] rate
copy

List the WPA authentication parameters currently set
$ iwlist [wireless_interface] auth
copy

List all the WPA encryption keys set in the device
$ iwlist [wireless_interface] wpakeys
copy

List the encryption key sizes supported and list all the encryption keys set in the device
$ iwlist [wireless_interface] keys
copy

List the various power management attributes and modes of the device
$ iwlist [wireless_interface] power
copy

List generic information elements set in the device (used for WPA support)
$ iwlist [wireless_interface] genie
copy

SYNOPSIS

iwlist [--help] <interface> { scan|frequency|channel|bitrate|txpower|retry|encryption|keys|power|ap|peers|event|auth|wpa|pmkid } [options]

PARAMETERS

scan
    Scan for available networks and list details like ESSID, quality, encryption

escan
    Enhanced scan (deprecated, similar to scan)

frequency
    List supported frequencies/channels and current mode

channel
    Synonym for frequency

bitrate
    Show supported and current bitrates

txpower
    Display TX power levels

retry
    Show retry limits

encryption
    List encryption capabilities

keys
    Show current keys (limited security)

power
    Power management settings

ap
    Access point address and stats

peers
    Peer stations in ad-hoc mode

event
    Wireless event information

auth
    Authentication details

wpa
    WPA/WPA2 key info (if supported)

pmkid
    PMKID cache

--help
    Show usage summary

essid N
    Scan specific ESSID (scan option)

last
    Show last scan results (scan option)

DESCRIPTION

The iwlist command is a utility from the wireless-tools package used to display detailed information about wireless network interfaces on Linux systems. It queries the kernel's Wireless Extensions for data on available networks, frequencies, channels, bitrates, encryption settings, access points, and more.

Commonly used for network scanning via iwlist <interface> scan, it lists nearby Wi-Fi networks with details like ESSID, signal quality, encryption type, and supported rates. Other subcommands reveal interface capabilities, such as supported frequencies or TX power levels.

Originally designed for older wireless hardware supporting Wireless Extensions (WE), it provides a user-friendly way to inspect wireless state without low-level ioctls. However, it's largely deprecated for modern use, as kernel drivers shifted to nl80211 and cfg80211, favoring the iw tool instead. Still useful on legacy systems or for compatibility.

Output is human-readable, with verbose options for deeper insights, aiding network troubleshooting and configuration.

CAVEATS

Deprecated; use iw for modern drivers. Relies on legacy Wireless Extensions, may fail on nl80211-only hardware. Security risk listing keys.

EXAMPLES

iwlist wlan0 scan - Scan networks
iwlist wlan0 frequency - List channels
iwlist eth1 key 0123456789 - Manipulate keys (deprecated)

INSTALLATION

On Debian/Ubuntu: apt install wireless-tools
On Fedora: dnf install wireless-tools

HISTORY

Part of wireless-tools suite by Jean Tourrilhes, first released ~1996-2002 alongside Linux Wireless Extensions (WE 9-22). Peaked in 2.4/2.6 kernels; declined post-2010 with mac80211/nl80211 adoption.

SEE ALSO

iw(8), iwconfig(8), iwspy(8), iwpriv(8), iwgetid(8)

Copied to clipboard