Neo FreeRunner Wifi
From Openmoko
Johnbeaven (Talk | contribs) (added available software section..) |
Johnbeaven (Talk | contribs) m (→Mofi) |
||
Line 226: | Line 226: | ||
=== Mofi === | === Mofi === | ||
− | + | Mofi is software for the OpenMoko platform allowing phone users to search for and connect to wireless access points within range. | |
http://wiki.openmoko.org/wiki/mofi | http://wiki.openmoko.org/wiki/mofi |
Revision as of 21:54, 29 July 2008
Contents |
What APs are available
root@om-gta02:~# iwlist eth0 scan
Using WPA and /etc/network/interfaces
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
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 usb0 && 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
highest priority tried first then falls back sequentially 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 }
more in depth explanation see
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
Success stories
July 23, 2008
wpa_supplicant 0.6.3-r1 works for me with WPA and WPA2 (with PSK) using the config file template on this page. Unlike the comment above, udhcpc is updating /etc/resolver.conf correctly for me (perhaps this is an old problem).
Bringing up wpa_supplicant manually or using "ifup eth0" with the wpa-conf option set in /etc/network/interfaces works for me. If usb0 was already up when running "ifup eth0" you'll end up with 2 default routes which can cause problems. To solve this either take usb0 down first or run "ip route del default dev usb0" to remove the default route to usb0.
July 19, 2008
I've had repeated success with:
# ifconfig eth0 up # iwconfig eth0 essid any # iwconfig eth0 key '...' # iwconfig eth0 essid '...' # udhcpc eth0 # ifconfig usb0 down; ifconfig usb0 up
Hope that helps someone. This is for WEP.
July 26, 2008
I've been able to connect to a variety of networks including WPA2 without too much difficulty. Follow the above steps in configuring your wpa_supplicant.conf and adding the line to load the supplicant in /etc/network/interfaces.
My sample WPA2 configuration is as follows:
- WPA2
network={
ssid="MY_SSID" scan_ssid=1 proto=RSN key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP psk="PASSWORD_PRESHARED_KEY" priority=50
}
That configuration will allow you to connect to a WPA2-Personal network with TKIP key encryption.
The "ifup eth0" command will connect you via WiFi. If you don't get a lease the first time, try again. Sometimes the configuration is a little too slow and DHCP tries to get a lease before a successful connection to your access point has been established.
The following may be helpful in order to scan available networks :
# iwlist eth0 scan
Available Software
Here are some applications available to aid in wifi administration..
lint-wifi
lint-wifi work in progress
http://wiki.openmoko.org/wiki/Lint-wifi
Mofi
Mofi is software for the OpenMoko platform allowing phone users to search for and connect to wireless access points within range.