After my last post it has taken me some time to get back to this and solve the problem. Since I last looked at it I have upgraded to SuSE 10.1 so there will be some differences for those of you running older versions; none that cause any problems I hope.
Here is what I did to make mine work on SuSE 10.1.
Application Versions:-
need latest WUSB11v4 WinXP drivers from Linksys
ndiswrapper=
utils version: 1.8
driver version: 1.23
vermagic: 2.6.13.4-default 586 REGPARM gcc-4.1
Note: I tried version 1.25 (with utils 1.9) and this detected a driver conflict when I installed the wusb11v4 driver later on. If you get troubles then I suggest you use version 1.23 as I have done.
log in as root
untar the ndiswrapper tar file
cd to the new ndiswrapper directory
follow the INSTALL instructions (i.e. make uninstall (note that ndiswrapper is an optional s/w package in the SuSE 10.1 installation so if you haven't installed it this will probably let you know and you can proceed straight to the next command), make, and then make install)
All should be well if you have the right prerequisites, etc
wpa_supplicant=v0.4.8
This is the version that ships with SuSE 10.1 and works so I haven't upgraded it to 0.4.9.
Install the Linksys WUSB11v4 driver with ndiswrapper
unzip/extract the driver files and copy them to your SuSE machine) - all you need is the Drivers directory
using a terminal window log in as root and do the following:
change directory to the place you copied the Driver files
ndiswrapper -i ./WUSB11v4.inf
this should return no errors
ndiswrapper -l
this should return:
installed drivers:
wusb11v4 driver installed, hardware present
ndiswrapper -m
this should return no errors
Create wpa_supplicant.conf file in /etc
contents of wpa_supplicant.conf is:-
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
ap_scan=2
#eapol_version=2
eapol_version=1
fast_reauth=1
network={
ssid="WhateverYourWirelessIDis"
proto=WPA
key_mgmt=WPA-PSK
pairwise=TKIP
group=TKIP
#psk="mydoghasnonose"
psk=0hexbmorehex6d1andmorehex1etcetcetc
}
the value of psk will need to be modified according to the output of:
wpa_passphrase <ssidName> <whateverYourPassphraseis>
The use of a hex psk will speed up association.
Create template network config files using YaST (start YaST, use Network Devices/Network Card) and opt to use 'Traditional Method with ifup'
To simplify the process, I removed any other existing interface config; in my case eth0. Save and Finish.
Restart the Network Devices/Network Card YaST applet again using 'Traditional Method'
'Add' a new interface as follows:
Device Type: Wireless
Module Name: ndiswrapper
USB check box: checked (do this last on this page)
ignore the other settings
click next
I next chose static IP address setup and put in my internal IP and subnet mask (192.168.1.etc 255.255.255.etc)
click the hostname and name server button and put in your nameservers - I use the public ones provided by my ISP.
click OK
click the Routing config button
enter your default gateway IP address. This is most likely your ADSL modem/router IP address if it is on the same network (e.g. 192.168.0.1), otherwise it is the IP address of the device that routes the traffic from your wireless network address to your ADSL network address (e.g. 192.168.1.1 wireless router routing to 192.168.0.1 ADSL router routing to the internet)
the other fields should be unchecked and unconfigured
click OK
click next to go to the Wireless n/w card config page
set it up as follows (this is all going to be redundant in any case as we will point the config at out wpa_supplicant.conf file later on instead):
Operating mode: managed
Network Name (ESSID): WhateverYourWirelessNameIs
Authentication Mode: WPA-PSK
Key Input type: (Hexadecimal)
Encryption Key: Paste your Hex key (generated by wpa_passphrase earlier) into this field
I then turned OFF the power management in the 'Expert Settings' section
click Next
click next to save the new config
Now we will modify by hand the network config files
using a terminal session log in as root and cd to /etc/sysconfig/network
you will see your new file named ifcfg-wlan-bus-usb
edit this file using a text editor (I find vi quick and easy to use but then, perhaps, I am a dinosaur)
modify the file to look like this:
BOOTPROTO='static'
BROADCAST=''
ETHTOOL_OPTIONS=''
IPADDR='put your chosen static IP here for this machine e.g. 192.168.0.2'
MTU=''
NAME='Linksys WUSB11v4 Wireless USB'
NETMASK='255.255.255.0'
NETWORK=''
REMOTE_IPADDR=''
STARTMODE='auto'
USERCONTROL='no'
WIRELESS_AP=''
WIRELESS_AUTH_MODE='psk'
WIRELESS_WPA_PROTO='WPA2'
WIRELESS_SCAN_MODE='2'
WIRELESS_WPA_CONF='/etc/wpa_supplicant.conf'
WIRELESS_BITRATE='auto'
WIRELESS_CHANNEL='9'
WIRELESS_ESSID='Gnome'
WIRELESS_FREQUENCY=''
WIRELESS_KEY_LENGTH='128'
WIRELESS_CIPHER_PAIRWISE='TKIP'
WIRELESS_CIPHER_GROUP='TKIP'
WIRELESS_MODE='Managed'
WIRELESS_POWER='no'
WIRELESS_WPA_IDENTITY=''
WIRELESS_WPA_PSK='0hexbmorehex6d1andmorehex1etcetc etc'
_nm_name='static-0'
(note: each configuration item should be on a new line).
I think many of the above entries are made redundant by the wpa_supplicant.conf file, however I am not going to mess about with it right now.
once you have done this you should be set to start the services.
Firstly I made sure all the services were stopped:
/etc/init.d/network stop
ps -rf | grep wpa
you should see no wpa_supplicant service running but if you do it needs to be stopped - use wpa_cli and issue the terminate command or if all else fails killproc wpa_supplicant
Now start the services:
/etc/init.d/network start
and you should get some good messages like:
Setting up network interfaces:
lo
lo IP address: 127.0.0.1/8 done
eth0 device: Intel Corporation 82801DB PRO/100 VM (LOM) Ethernet Controller (rev 81)
No configuration found for eth0 unused
wlan0
wlan0 configuration: wlan-bus-usb
wlan0 starting wpa_supplicant
wlan0 IP address: 192.168.0.2/24 done
Setting up service network . . . . . . . . . . . . . . done
SuSEfirewall2: Warning: ip6tables does not support state matching. Extended IPv6 support disabled.
SuSEfirewall2: Setting up rules from /etc/sysconfig/SuSEfirewall2 ...
SuSEfirewall2: batch committing...
SuSEfirewall2: Firewall rules successfully set
and you're away!
Hope this 'recipe' works for all you wusb11b4 SuSE frustrated folks. I can't believe how fiddly and error prone this whole thing was to set up. Curses on Linksys for thinking that Microsoft is the only desktop OS manufacturer.
References:
http://www.thinkwiki.org/wiki/Wpa_supplicant http://wiki.archlinux.org/index.php/Wpa_supplicant http://www.desktoplinux.com/news/NS3687730057.html
sourceforge for ndiswrapper