Linux - Wireless NetworkingThis forum is for the discussion of wireless networking in Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
My laptop: HP Pavilion ze2000
Distribution: Mepis 3.3.1
Kernel: 2.6.10
My wireless card: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 03)
My card's driver through ndiswrapper: bcmwl5.sys
On xp, the card allows for WEP (WAP seems to be unavailable).
However, on Mepis, after defining the essid, when I try:
iwconfig wlan0 key xxxxxxxx
,the card stops working; I can only reactivate it after setting the key parameter to off.
It also stops working if I manually edit /etc/network/interfaces and add the WEP key.
Is there any way I can implement security with this network card?
On xp, the card allows for WEP (WAP seems to be unavailable).
If you can't get WPA, then you need to upgrade the drivers. A 4306 chipset can definitely do both WEP and WPA. My laptop uses a 4306 and I can do both WEP and WPA in Windows and Linux.
Quote:
However, on Mepis, after defining the essid, when I try:
iwconfig wlan0 key xxxxxxxx
,the card stops working; I can only reactivate it after setting the key parameter to off.
That is definitely not good. A few things to try:
- Make sure that the xxxx bit is the hex version of the key
- Check the logs and see if ndiswrapper is complaining about anything
- Check for a more updated Windows driver.
- Make sure that the xxxx bit is the hex version of the key
- Check the logs and see if ndiswrapper is complaining about anything
- Check for a more updated Windows driver.
Thank you, Hangdog42.
I did the first check you mentioned. It is the hex version.
I updated the windows drivers and got WPA2 working. The router DI-524 needed to be reset to enable WPA. Then I can reload my prior configuration to the router and everything continues OK on xp.
For linux, I installed wpa_supplicant and kwireless. However, now ndiswrapper does not load at boot time.
dmesg contains this, referring to ndiswrapper:
Quote:
ndiswrapper version 1.1 loaded (preempt=yes,smp=no)
ndiswrapper (wrapper_init:1534): loadndiswrapper failed (256); check system log for messages from 'loadndisdriver'
ndiswrapper version 1.1 loaded (preempt=yes,smp=no)
ndiswrapper (wrapper_init:1534): loadndiswrapper failed (256); check system log for messages from 'loadndisdriver'
ndiswrapper version 1.1 loaded (preempt=yes,smp=no)
ndiswrapper (wrapper_init:1534): loadndiswrapper failed (256); check system log for messages from 'loadndisdriver'
ndiswrapper version 1.1 loaded (preempt=yes,smp=no)
ndiswrapper (wrapper_init:1534): loadndiswrapper failed (256); check system log for messages from 'loadndisdriver'
ndiswrapper version 1.1 loaded (preempt=yes,smp=no)
ndiswrapper (wrapper_init:1534): loadndiswrapper failed (256); check system log for messages from 'loadndisdriver'
ndiswrapper version 1.1 loaded (preempt=yes,smp=no)
ndiswrapper (wrapper_init:1534): loadndiswrapper failed (256); check system log for messages from 'loadndisdriver'
ndiswrapper version 1.1 loaded (preempt=yes,smp=no)
ndiswrapper (wrapper_init:1534): loadndiswrapper failed (256); check system log for messages from 'loadndisdriver'
ndiswrapper version 1.1 loaded (preempt=yes,smp=no)
ndiswrapper (wrapper_init:1534): loadndiswrapper failed (256); check system log for messages from 'loadndisdriver'
ndiswrapper version 1.1 loaded (preempt=yes,smp=no)
ndiswrapper (wrapper_init:1534): loadndiswrapper failed (256); check system log for messages from 'loadndisdriver'
ndiswrapper version 1.1 loaded (preempt=yes,smp=no)
ndiswrapper (wrapper_init:1534): loadndiswrapper failed (256); check system log for messages from 'loadndisdriver'
At this point, I will have to make ndiswrapper work again in order to setup WPA2. Another alternative might be to compile a new kernel with the native driver included and take it from there. Any suggestions?
That Operation not permitted error suggests you weren't root when running modprobe. Can you make sure you're root? And did you check the system logs to see specifically what ndiswrapper is complaining about at boot? It might be the same error you're getting from modprobe, but it is worth checking.
The bcm43xx driver has its own issues. Before you go down that path, you'll probably want to research whether or not it can handle WPA encryption. I'm not sure the SoftMAC stack (which is what is in the 2.6.17.x kernels) can. I know the Devicescape stack can, but creating one of those kernels requires a bit of kernel patching. There is a link in my sig to a howto to compile a kernel with a dscape stack.
Thanks again, Hangdog42. Yes, while doing all this, I was root all the time.I have bookmarked your sites, and I'll read the related parts very thouroughly.
I'll post again.
I have been trying to get my Broadcom 4306 wireless card to work with Slackware 10.2/Dropline using the native kernel driver. I have compiled kernel 2.6.17.3 and installed the firmware from the compaq windows driver (it shows as being supported in fwcutter).
So far I can see the card in iwconfig, and I can scan access points with iwlist, but I have not been able to get it to aquire an IP address with either network manager (which I give up on), or using dhclient.
I feel like I am real close here, but it is frustrating not being able complete the deal. Any help or suggestions would be greatly appreciated.
You may need to do some reading in your log files, particularly dmesg, to see what is going on. On my rig, there is a very short windows of time between when SoftMAC associates with the access point and when it shuts down the radio. If I look as the dmesg output I can see it happening. If I can run dhcpcd between seeing the message saying it is associated and the shutdown, I get an IP address. If I miss, I usually end up pulling out the module, then re-insterting it and trying again.
This nonsense is the main reason I learned how to compile a kernel with the Devicescape stack, since it doesn't pull crapola like that.
Thanks for the response. I did manage to get it working for a while by compiling in the WEP support in the kernel rather than as module. The problem I found was data transfers were painfully slow, basically slower than dialup speed when displaying web pages.
I have a Belkin F5D6051 USB 802.11b adapter that is working great with the native linux driver in the kernel, so I think I will just stick with that for now.
One question, I would like to get the wireless to auto connect at home on my WEP home network, but also I would like it to auto connect to an unprotected public network when I take it to work.
I have added the info to connect at home in rc.wireless.conf, and this works great. Can I add another entry for the same device to allow it to connect to a public network without encryption? Or so I need to manually connect to one or the other?
I've done this a few ways. I've got a script that scans for access points and presents me with a list I can chose from. It's set up so that if it finds my home network, it sets that up automatically. I've got the script here if you want it.
I've also just kept a small collection of scripts for networks I frequently use and then run the appropriate one.
However, the best solution is probably wpa_supplicant. You can store a series of network configurations in the wpa_supplicant.conf file and it will scan for networks and then use the appropriate config automatically. Since it supports WEP as well as WPA (and no security) it is a great solution. The problem is that I have no idea if wpa_supplicant works with the bcm43xx driver and SoftMAC. If you're interested, the only way it would work would be with the WEXT driver in wpa_supplicant, so it would be fairly straight-forward to try.
Quote:
The problem I found was data transfers were painfully slow, basically slower than dialup speed when displaying web pages.
Wow. I know that the driver does have trouble with G speeds, but it should be able to handle 11Mbs without a problem. That should feel faster than dial-up!
My laptop: HP Pavilion ze2000
Distribution: Mepis 3.3.1
Kernel: 2.6.17.6
My wireless card: Broadcom Corporation BCM4306
I completely uninstalled ndiswrapper (it was a very old version anyway).
I compiled a new kernel (I used the instructions on your site, Hangdog42). I downloaded the latest version of ndiswrapper and followed the instructions. While compiling, it gave me a lot of error messages, including that it needed at least gcc 3.4 (I've got 3.5). It never worked.
Tired of that, I downloaded Linuxant's driveloader and installed its debian package. Once I entered the trial license on their graphical interface, the laptop froze. On reboot, my new kernel stopped booting, with lots of error messages including "kernel tainted". I was able to boot my old 2.6.10 kernel and supplied the working drivers (it never asked for the license number again). Now it says that the device is not recognized or something like that (Im writing this from my xp side).
Hangdog42, buddy, I'm so fed up. Is it too difficult/expensive to buy and install a linux-compatible wireless card? What do you recommend?
Wow. That is ugly. Since I've been using my broadcom 4306 with both ndiswrapper and bcm43xx, I haven't had to go hunting for anything new, so I don't have any first-hand advice. Things based on Intel chipsets seem to be well supported as do Atheros chipsets. I'd have a look through the LQ HCL (see the top of the Wireless forum for a link) and see what makes/models that people have had success with.
The ndiswrapper compile problem is kind of wierd. I know that the more recent versions require a newer gcc, but I've never see the kind of problem with backward compatibility you're seeing. I'm running ndiswrapper 1.10, so maybe dropping back a few versions would help.
As for the freezing, that tends to be a classic symptom of having a 4K stack size restriction. However, if you compiled your own kernel, I doubt that is the problem. It could be a problem with the Windows driver you're using. Can you fill in some details on which one?
I compiled the kernel again, making sure there is no 4K stack size restriction. It also has the bcm43xx driver as a module.
I was able to install the Linuxant driverloader and also their wpa software. The configuration went apparently well. However, I could not reach my encrypted access point. So, I decided to reboot, and found out that the boot fails with several error messages, one of them being that there is a non GPL module for the kernel (I dont know if that is particularly decisive for the kernel not to boot). However, I uninstalled driverloader and its wpa program and, of course, my kernel is booting fine again.
One question now:
Why installing driverloader prevents my kernel to boot? Any solution for that?
I hate to say it, but I'm stumped. Can you post the error messages? I'm hoping that there is some clue as to what is going on. I've never heard of Linuxant freezing a boot like this, but I suppose it is possible.
The only thing I can think is that there is something about Mepis that is causing this problem. However, that is just rampant, irresponsible speculation on my part.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.