Difference between revisions of "Advanced Wifi"

From WebOS Internals
Jump to navigation Jump to search
(Save page)
 
(Further information)
Line 1: Line 1:
 
This page is about advanced Wifi configurations. You should know some Terminal and Linux for this.
 
This page is about advanced Wifi configurations. You should know some Terminal and Linux for this.
 +
 +
= Discalimer =
 +
Most of you won't need this guide as the pre connects to the usual Wireless networks. This guide is for those of you who know what you are doing. This guide comes as is, I have no resposibility if anything happens during using this guide including impact of meteorites and the return of the dinosaurs.
  
 
= Introduction =
 
= Introduction =
Our university uses '''eduroam''' for wireless lan access. This is a WPA(2) network with TTLS as authentication, featuring an anonymous identity and whatever else.
+
Our university uses '''eduroam''' for wireless lan access. This is a Enterprise WPA(2) network with TTLS as authentication, featuring an anonymous identity and whatever else.
As palm obviously did not think of working on WPA Enterprise authentication, I had to do it myself.
+
As Palm obviously did not think of working on WPA Enterprise authentication, I had to do it myself. BTW, iOS connects flawlessly.
  
 
= Connecting =
 
= Connecting =
Line 26: Line 29:
 
We need to "inject" the wpa_supplicant configuration while webOS connects to the network. This sounds somewhat crazy but it works.
 
We need to "inject" the wpa_supplicant configuration while webOS connects to the network. This sounds somewhat crazy but it works.
 
Create a working configuration and a small script. Also you need some debian packages.
 
Create a working configuration and a small script. Also you need some debian packages.
 +
 +
=== Packages ===
 +
Go to http://packages.debian.org and download the wpasupplicant packages. You only need the /sbin/wpa_cli binary from there. Also you need the file libreadline.so.6. Download the ''arm'' binaries, as this is the architecture of the pre.
 +
 +
=== Script ===
 +
Create a script somewhere with the following contents:
 +
 +
#!/bin/bash
 +
cp .wpa_supplicant.conf /tmp
 +
chmod a-w /tmp/.wpa_supplicant.conf
 +
./wpacli reconfigure
 +
 +
You need to be able to execute it quickly.
 +
 +
=== Testrun ===
 +
Fire up the Palm Wifi Manager. Click the network you want to connect to. As username/password you need to enter anything, as these won't be used anyway. ''IMMEDIATELY'' switch to a terminal on your pre and execute the above script. You may need some tries to get the timing. Afterwards your pre should connect to the network AND think he's connected. Congratulations.
 +
 +
=== Automatisation ===
 +
If anybody knows how to run this automatically after wpa_supplicant is started, please write it down here.
  
 
== Sample Configuration ==
 
== Sample Configuration ==
 +
 
  network={
 
  network={
 
  ssid="eduroam"
 
  ssid="eduroam"

Revision as of 11:24, 7 August 2010

This page is about advanced Wifi configurations. You should know some Terminal and Linux for this.

Discalimer

Most of you won't need this guide as the pre connects to the usual Wireless networks. This guide is for those of you who know what you are doing. This guide comes as is, I have no resposibility if anything happens during using this guide including impact of meteorites and the return of the dinosaurs.

Introduction

Our university uses eduroam for wireless lan access. This is a Enterprise WPA(2) network with TTLS as authentication, featuring an anonymous identity and whatever else. As Palm obviously did not think of working on WPA Enterprise authentication, I had to do it myself. BTW, iOS connects flawlessly.

Connecting

Command line wpa_supplicant

Connection via wpa_supplicant works as follows:

# # kill the running wpa_supplicant
# killall wpa_supplicant
# # start a new one
# wpa_supplicant -i eth0 -D wext -c /tmp/wpa_supplicant.conf
# # obtain IP Adress
# dhclient eth0
# # Some DNS problems may occur, so for testing add google DNS Servers:
# echo nameserver 8.8.8.8 > /etc/resolv.conf

This is everything you need to test connection via wpa_supplicant. For an example configuration read the manpage or check the configuration at the end of this article.

Problem with webOS

Connection via command line works for the system underneath and you will receive the "No network connection" message, nevertheless webOS does not realize its actually connected, so we need to trick it into connection.

Solution

We need to "inject" the wpa_supplicant configuration while webOS connects to the network. This sounds somewhat crazy but it works. Create a working configuration and a small script. Also you need some debian packages.

Packages

Go to http://packages.debian.org and download the wpasupplicant packages. You only need the /sbin/wpa_cli binary from there. Also you need the file libreadline.so.6. Download the arm binaries, as this is the architecture of the pre.

Script

Create a script somewhere with the following contents:

#!/bin/bash
cp .wpa_supplicant.conf /tmp
chmod a-w /tmp/.wpa_supplicant.conf
./wpacli reconfigure

You need to be able to execute it quickly.

Testrun

Fire up the Palm Wifi Manager. Click the network you want to connect to. As username/password you need to enter anything, as these won't be used anyway. IMMEDIATELY switch to a terminal on your pre and execute the above script. You may need some tries to get the timing. Afterwards your pre should connect to the network AND think he's connected. Congratulations.

Automatisation

If anybody knows how to run this automatically after wpa_supplicant is started, please write it down here.

Sample Configuration

network={
ssid="eduroam"
mode=0
proto=WPA2
key_mgmt=WPA-EAP
auth_alg=OPEN
eap=TTLS
identity="xxxxxxxxxxxxxxx"
anonymous_identity="anonymous@university.xx"
password="xxxxxxxxxxxxxxx"
ca_cert="/home/root/cert.pem"
phase2="auth=PAP"
priority=5
}