December 26, 2006

Ubuntu: Configure Wireless From The Command Line

ubuntu.pngAlthough Ubuntu and other distributions give us easy to use graphical user interfaces for configuring almost everything, it's nice to know how to get things working without them. Here we'll show how to connect to a wireless access point and get on the internet from the command line.


First things first, you have to know what the device name of your wireless interface is. Typically this is wlan0, but in my case, it's ath0. Be sure the interface is turned on.

user@ubuntu:~$ sudo ifconfig ath0 up

Next we'll get a list of all the available access points using the iwlist command.

user@ubuntu:~$ iwlist ath0 scanning

You should see something similar to the following:

ath0 Scan completed :
   Cell 01 - Address: XX:XX:XX:XX:XX:XX
     ESSID:"Larry"
     Mode:Master
     Frequency:2.462 GHz (Channel 11)
     Quality=3/94 Signal level=-92 dBm Noise level=-95 dBm
     Encryption key:off
     Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
     24 Mb/s; 36 Mb/s; 54 Mb/s; 6 Mb/s; 9 Mb/s
     12 Mb/s; 48 Mb/s
     Extra:bcn_int=100
   Cell 02 - Address: XX:XX:XX:XX:XX:XX
     ESSID:"MYACCESSPOINT"
     Mode:Master
     Frequency:2.452 GHz (Channel 9)
     Quality=45/94 Signal level=-50 dBm Noise level=-95 dBm
     Encryption key:on
     Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 22 Mb/s
     6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
     36 Mb/s; 48 Mb/s; 54 Mb/s
     Extra:bcn_int=200
   Cell 03 - Address: XX:XX:XX:XX:XX:XX
     ESSID:"motorola"
     Mode:Master
     Frequency:2.462 GHz (Channel 11)
     Quality=4/94 Signal level=-91 dBm Noise level=-95 dBm
     Encryption key:on
     Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
     24 Mb/s; 36 Mb/s; 54 Mb/s; 6 Mb/s; 9 Mb/s
     12 Mb/s; 48 Mb/s
     Extra:bcn_int=100

The output shows a quite a detailed list of the surrounding access points. You probably know which one you want. Take note of the essid. We'll use that to associate with that access point.

user@ubuntu:~$ sudo iwconfig ath0 essid MYACCESSPOINT

If the access point has some sort of WEP or WPA encryption enabled, you'll need to enter the key. If not, you can skip this step.

user@ubuntu:~$ sudo iwconfig ath0 key 12345abcde

You should now have a connection to the access point. But before you start using the interweb, you'll need to get an IP address. Most access points have DHCP servers that make this part easy. Just run the DHCP client to ask for an address.

user@ubuntu:~$ sudo dhclient

That should provide output similar to the following:

Internet Systems Consortium DHCP Client V3.0.4
Copyright 2004-2006 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/

wifi0: unknown hardware address type 801
can't create /var/lib/dhcp3/dhclient.leases: Permission denied
Can't create /var/run/dhclient.pid: Permission denied
drop_privileges: could not set group id: Operation not permitted
pete@pete-laptop:~$ sudo dhclient
Internet Systems Consortium DHCP Client V3.0.4
Copyright 2004-2006 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/

wifi0: unknown hardware address type 801
wifi0: unknown hardware address type 801
Listening on LPF/ath0/00:XX:14:01:6b:XX
Sending on LPF/ath0/00:XX:14:01:6b:XX
Listening on LPF/wifi0/
Sending on LPF/wifi0/
Listening on LPF/eth0/00:XX:43:45:92:XX
Sending on LPF/eth0/00:XX:43:45:92:XX
Sending on Socket/fallback
DHCPREQUEST on ath0 to 255.255.255.255 port 67
DHCPDISCOVER on wifi0 to 255.255.255.255 port 67 interval 4
DHCPACK from 192.168.0.1
bound to 192.168.0.101 -- renewal in 39598 seconds.

Finally, let's check that everything is working. Ping an address.

user@ubuntu:~$ ping www.google.com

Posted by stoltenow at December 26, 2006 1:15 AM

Comments

Thank you. I've been trying to find a good tutorial on this.

Posted by: Sandeep at February 28, 2010 10:16 PM

I was able to get rid of the "No working leases in persistent database - sleeping" error message by removing the GUI-based network manager utility from my computer using this command:

sudo apt-get remove network-manager

and then repeating all of the steps in this manual.
The network manager seems to override all the usual network configuration files and command-line instructions, so you should either use it for all your networking needs and not attempt manual configuration or remove it and rely solely on manual network configuration.

Posted by: spear at August 24, 2009 1:21 AM

@John

Try to scan as root.

Posted by: Rik at March 5, 2009 9:10 PM

I need to point out that this method does not work with WPA but only with WEP. You need wpa_supplicant or similar to connect with WPA.

Posted by: Piccolo Principe at November 7, 2008 2:08 PM

After I run dhclient i get the following:

Listening on LPF/wlan0/00:16:44:a8:1e:4a
Sending on LPF/wlan0/00:16:44:a8:1e:4a
Listening on LPF/eth0/00:1d:09:b2:5c:ea
Sending on LPF/eth0/00:1d:09:b2:5c:ea
Sending on Socket/fallback
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 6
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 8
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 13
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 5
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 10
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 4
No DHCPOFFERS received.
No working leases in persistent database - sleeping.

What's causing that and what does the last sentence mean?

Posted by: Antonov at April 10, 2008 4:41 PM

thanks man u rock

Posted by: dilip at February 25, 2008 11:36 AM

Can you recommend some courses of action if dhclient fails to acquire an address?

Many thanks.

Posted by: Grosseteste at December 23, 2007 1:56 AM

Thanks! Needed to get wireless working without a GUI so I could download the ATI drivers. Now all's great. :D

Posted by: Eric at June 29, 2007 5:51 AM

Thanks, I've been trying to get my Atheros AR5001+ WiFi on my Fujitsu Lifebook to work since last night. I'm happy to report that it's now working; thanks to you and several other web sites.

John

Posted by: John at June 3, 2007 12:32 AM

I have got wireless working and the scan works fine for me but when I am connected to an access point and I scan for surrounding access points all I get is the one I am connected to. Why is this?

Posted by: Derek at May 22, 2007 8:49 AM

thanks a lot mate

that helped get my ancient thinkpad 770 up and running

Posted by: Donald MacIntyre at April 11, 2007 9:21 PM

Post a comment




Remember Me?