On 6/1/07, James Rayner <iphitus@gmail.com> wrote:
On Fri, Jun 01, 2007 at 12:12:24PM +0200, Thomas Bächler wrote:
With my new laptop and working wireless, I am now able to announce the "autowifi" scripts I wrote a few weeks ago.
Requirements: - wpa_supplicant - wifi driver that is supported by wpa_supplicant - dhclient
Features: - Automatically select the best network (done by wpa_supplicant) and configure it according to configuration files (done by autowifi) - wifi configuration via wpa_supplicant.conf - dhcp,static or "custom" network configuration via /etc/autowifi/networks/ - default configuration for unknown networks (if a network is not configured, the default behaviour is using dhcp) - same configuration for networks whose essid matches a regex - once configured, it works completely without user interaction, but it _can_ be controlled by wpa_gui (or any other wpa_supplicant client), so that you can access networks without changing wpa_supplicant.conf.
I am still unsure whether and how this can be integrated into James' netcfg, that's a question that I'd rather let him answer.
That said, autowifi is VERY simple. It doesn't reinvent the wheel by using wpa_supplicant for selecting networks - parsing iwlist outputs doesn't work very well, does it? As all wifi drivers will be moved to mac80211 in the near future, wpa_supplicant-support will not be a restriction anymore.
I tested it on iwl3945 and rt2x00-git. The latter has problems scanning and shows very few networks, therefore didn't work very well. I couldn't test it with iwl3945 in an environment with many wireless networks yet, but I trust it works better.
HOWTO: - Install the package from http://www.archlinux.org/~thomas/autowifi-svn/ or from svn at http://projects.archlinux.org/svn/autowifi/ - Create /etc/wpa_supplicant.conf and configure all your networks (you can configure anything here, open, WEP, WPA-PSK, WPA-EAP and so on). - Read /etc/autowifi/regex and map ESSIDs to profile names if necessary. - Read /etc/autowifi/networks/example and configure /etc/autowifi/networks/default and /etc/autowifi/networks/profilename if necessary. If you only use dhcp on all networks, no configuration is necessary here. - Adjust the interface and config file name in /etc/conf.d/autowifi properly. - /etc/rc.d/autowifi start (can of course be done via rc.conf)
Possible bugs: In my first test, dhcp wouldn't work when I changed networks, maybe I need to delete the dhclient lease file.
Any feedback is welcome Thomas
could tie in very nicely to mine if it used the same network profile configuration, otherwise it's a bit icky, having wireless networks defined in multiple locations. Part of the point of my scripts was to eliminate that.
I agree that a unified configuration would be a good thing. I'd try autowifi but, I only use my home network anymore... I guess I'd be a decent testcase though, as there's like 12 networks in my building and mine should usually be the strongest.