Neo FreeRunner Wifi
From Openmoko
(→Using WEP and /etc/network/interfaces) |
m (→Available Software) |
||
Line 222: | Line 222: | ||
* [[Lint-wifi]] | * [[Lint-wifi]] | ||
− | * [[Mofi]] | + | * [[Mofi]] |
+ | * [[Camp-Wifi]] | ||
== External links == | == External links == |
Revision as of 23:05, 6 August 2008
Neo FreeRunner
This page documents the wireless networking solutions commonly known as WLAN or WiFi.
There are other ways to enable wireless communications on the Neo, including Bluetooth. For Bluetooth solutions, see How to use bluetooth to transfer data between Neo and Desk-top and Manually using Bluetooth.
Contents |
Where is the GUI?
Good question. Right now this page is just a collection of tips on what command you can use in a terminal window or an ssh connection. The advantage is that these tips will (well -- should) work on any Openmoko device that supports WiFi.
Refer to the section below, "Available Software" to find out what else might be available.
How can I tell what Access Points (APs) are visible to me?
You can connect to wireless networks through wireless access points. If you want to know the names of all the access points that are currently visible to you, you can perform a scan with this command:
root@om-gta02:~# iwlist eth0 scan
If anything is visible you will get a list that looks something like this:
eth0 Scan completed : Cell 01 - Address: 00:16:B6:DE:77:58 ESSID:"StarvinMarvin" Mode:Master Frequency:2.437 GHz (Channel 6) Quality=9/94 Signal level=-86 dBm Noise level=-95 dBm Encryption key:on Extra:bcn_int=100 Extra:wpa_ie=dd180050f20101000050f20201000050f20201000050f2020000 Cell 02 - Address: 00:21:29:AA:10:97 ESSID:"CandT Network" Mode:Master Frequency:2.437 GHz (Channel 6) Quality=39/94 Signal level=-56 dBm Noise level=-95 dBm Encryption key:on Extra:bcn_int=100 Extra:wpa_ie=dd1c0050f20101000050f20202000050f2040050f20201000050f2020000 Extra:rsn_ie=30180100000fac020200000fac04000fac020100000fac020000 Cell 03 - Address: 00:14:95:1B:8E:B9 ESSID:"2WIRE852" Mode:Master Frequency:2.437 GHz (Channel 6) Quality=5/94 Signal level=-90 dBm Noise level=-95 dBm Encryption key:on Extra:bcn_int=100 Cell 04 - Address: 00:E0:98:52:3D:78 ESSID:"smith" Mode:Master Frequency:2.437 GHz (Channel 6) Quality=36/94 Signal level=-59 dBm Noise level=-95 dBm Encryption key:on Extra:bcn_int=100
Using WPA and /etc/network/interfaces
|WPA is a encryption method for securing your wireless network. Once you have a /etc/wpa_supplicant/wpa_supplicant.conf file, add a line under the eth0 entry in /etc/network/interfaces:
iface eth0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
Save your changes and run:
# ifdown eth0 && ifup eth0
You'll get a lot of messages, like ioctl[SIOCSIWENCODEEXT]: Operation not supported and sed: unrecognized option `--quiet', they appear to be harmless. The "--quiet" error message can be avoided by replacing "sed --quiet" with "sed -n" in /etc/wpa_supplicant/*.sh
Using WEP and /etc/network/interfaces
|WEP is an encryption method for securing your wireless network. WEP is generally considered to be weak, you should use WPA instead if possible.
iface eth0 inet dhcp wireless-key my_wep_key wireless-essid my_essid
iface eth0 inet dhcp wpa-wep-key0 my_wep_key wpa-key-mgmt NONE wpa-ssid my_essid
Save your changes and run:
# ifdown eth0 && ifup eth0
Manual attempt
Create and edit a suitable /etc/wpa_supplicant/wpa_supplicant.conf
root@om-gta02:~# ifup eth0 root@om-gta02:~# wpa_supplicant -ieth0 -c/etc/wpa_supplicant/wpa_supplicant.conf -B root@om-gta02:~# udhcpc eth0
Sample wpa_supplicant.conf
ctrl_interface=/var/run/wpa_supplicant ctrl_interface_group=0 eapol_version=1 ap_scan=1 fast_reauth=1 # WPA2: network={ ssid="your ssid" scan_ssid=1 proto=RSN key_mgmt=WPA-PSK pairwise=CCMP TKIP group=TKIP CCMP psk="secret key" priority=50 } # WPA: network={ ssid="your_ssid" proto=WPA key_mgmt=WPA-PSK pairwise=TKIP group=TKIP scan_ssid=1 psk="secret key" priority=10 } # WEP: network={ ssid="your_ssid" scan_ssid=1 key_mgmt=NONE wep_tx_keyidx=0 wep_key0=your_hex_key priority=8 } # Open: network={ ssid="your ssid" key_mgmt=NONE priority=5 }
wpa_supplicant.conf explained
The highest priority is tried first then falls back to the next highest number.
priority=100 1st
then
priority=99
# Simple case: WPA-PSK, PSK as an ASCII passphrase, allow all valid ciphers network={ ssid="AP_ESSID" psk="presharedkey" priority=5 } #try open AP regardless of its SSID. # change root password before you go roaming around it could prove dangerous network={ key_mgmt=NONE priority=1 #try any open AP last }
A more in depth explanation can be found here:
http://hostap.epitest.fi/gitweb/gitweb.cgi?p=hostap.git;a=blob_plain;f=wpa_supplicant/wpa_supplicant.conf
A very ugly /etc/init.d/wlan startscript
#!/bin/sh # # wlan This shell script starts and stops wlan. # # processname: wlan # Source function library. #. /etc/rc.d/init.d/functions # "written" by HdR RETVAL=0 prog="wlan" # test -f /etc/default/$prog && . /etc/default/$prog start() { echo -n "Starting $prog: " ifconfig eth0 up wpa_supplicant -ieth0 -c/etc/wpa_supplicant/wpa_supplicant.conf -B sleep 10 udhcpc eth0 RETVAL=$? return $RETVAL } stop() { # Stop daemons. echo -n "Shutting down $prog: " killall wpa_supplicant ifconfig eth0 down # killproc gpsd RETVAL=$? return $RETVAL } # See how we were called. case "$1" in start) start ;; stop) stop ;; restart|reload) stop start RETVAL=$? ;; *) echo "Usage: $0 {start|stop|restart}" exit 1 esac exit $RETVAL
Available Software
Programs in development providing GUI interfaces to administer WiFi connections: