Wireless

From Gentoo Linux Wiki

(Redirected from Wireless connectivity)
Jump to: navigation, search


The wireless experience under linux strongly depends on the type of hardware. Some cards have an easy setup, some more complicated. Driver stability can also vary greatly.

Contents

[edit] Subpages

[edit] Hardware

[edit] Before buying a wireless adapter

If you don't already have a wireless network card, it is very important to research and find the best supported hardware.

The major problem with finding the right hardware is that manufacturers will change the wireless chipset without changing the model name or number of their products. So, someone might tell you that FooCard 802.11g works great under Linux, so you buy one, only to find that it's another revision with completely different drivers. Finding the right hardware is actually going to begin with finding the best possible drivers first, then seeing which network devices they work for.

[edit] Identifying existing wireless adapter

See Detecting your Hardware for a list of tools to help identify your hardware.

[edit] Wireless Network Adapters that work in Gentoo

Rule #1: If it works on the LiveCD, see if you can identify the module loaded that is the driver and load that same driver module after first reboot.

[edit] Adapters

[edit] How to Read the Following Tables

The following tables list some wireless LAN adapters by chipsets known to be working. The higher the chipset in each speed category, the easier it is to get it working. For the time being, the Atheros chipset is the best you can get because the new prism54 chipset no longer works with Linux. Feel free to add your working card. (Read this if you don't know how to edit Wiki tables.)

Warning: Manufacturers frequently change chipsets without changing model names, version numbers or even pci-ids. This page should be used as a rough guide only.

Legend:

  • Speed: Maximum specified speed class rating.
  • Chipset: The chipset class used by a card.
  • Manufacturer: Who built the card.
  • Model: The name and model number of the card.
  • Driver: The driver used to get the card operational.
  • H?: Does it work with HostAP? Y or N
  • K?: Does it work with Kismet? Y or N
  • A?: How does it work with Airsnort? D or U; Directly, or User has to set monitor mode.
  • Homepage: Where to go for more information relevant to the card.
  • Works: How well the card works with Gentoo. Perfect means that all features supported by the card are available.

[edit] PCMCIA

Speed Chipset Manufacturer Card Driver H? K? A? Homepage Works
54 Atheros Proxim Gold Orinocco 11b/g PC Card (8470-WD) MadWifi  ? Y U MadWifi Perfect
D-Link DWL-G650 AirPlus (11b/g)
Prism54 (old cards only) NETGEAR WG511 V.2 Prism54  ? Y U Good

The Proxim Gold Orinocco 11b/g PC Card (8470-WD) has a socket for a pigtail. This is one of the few cards 802.11g cards that needs not be cut open to attach a (powerful) antenna and amplifier.

[edit] PCI

Speed Chipset Manufacturer Card Driver H? K? A? Homepage Works
54 Atheros NETGEAR WG311T MadWifi  ? Y Y MadWifi Perfect
Atheros SMC WPCI-G (EU) MadWifi  ?  ?  ? MadWifi Perfect
ipw2200 Intel IPW2200 ipw2200  ? Y Y IPW2200 Sourceforge Perfect
ipn2220 LanExpress IPN2220 ndiswrapper  ?  ?  ? Ndiswrapper Perfect
Broadcom BCM4306 Belkin F5D7000 ndiswrapper, Broadcom 43xx  ?  ?  ? Ndiswrapper Perfect
F5D7001 Broadcom 43xx  ? Y  ? Kernel-built-in Perfect
DWL-G510 (C) D-Link Ralink rt61 rt61 from portage N  ?  ? rt61 from portage Perfect
DWL-G510 (B) D-Link Atheros MadWifi Y  ?  ? MadWifi Perfect
RT2561/RT61 Edimax EW-7128G rt61 1.1.0_beta2  ?  ?  ? rt61 1.1.0_beta2 Perfect
108 Atheros TrendNet TEW-443PI MadWifi Y  ?  ? Madwifi Perfect
Atheros Gigabyte GN-WP01GT MadWifi Y  ?  ? Madwifi Perfect
Atheros D-Link DWL-G520 (A,B,C) MadWifi Y  ?  ? Madwifi Perfect

SMC WPCI-G may also have a RTL8185 chip. There's a (beta) driver available for ~x86, but it's supported by neither wpa_supplicant nor hostapd.

[edit] USB

Speed Chipset Manufacturer Card Driver H? K? A? Homepage Works
 ? RT2571 Edimax EW-7318UG USB RT73  ?  ?  ?  ? Yes
g sis163u Trendnet TEW-424UB (V2) ndiswrapper  ?  ?  ? Yes
g++ Texas Instruments NETW1450 AVM FRITZ!WLAN fwlanusb, ndiswrapper  ?  ?  ? Link Kernel panic using >= 2.6.23, you need to either downgrade to 2.6.22 or use the ndiswrapper
b Prism2 NETGEAR MA111 v1 wlan-ng N Y  ? Link Yes
b Prism2 D-Link DWL-120 rev. D1 wlan-ng N  ?  ? Link Yes
b SIS 162? Netgear MA111 v2 wlan-ng - - - Link No
g RTL-8187 Netgear WG111 v2 ndiswrapper - - - Yes, but not on AMD64. Use Windows 98/ME driver.
g RTL 8187 Netgear WG111 v2 rtl8187 - - - Yes, but not on AMD64. Use rtl8187 ebuild from portage.
g ISL3686[-BIZ] US Robotics USR805422 USB ndiswrapper - - - Yes. Use rsc4usb Windows driver. Not 100% reliable.
islsm - - - islsm link Shows up as a wireless device, but won't connect.

[edit] Drivers

[edit] Sources

There are several sources for wireless drivers.

[edit] Linux Kernel

Reportedly the most stable and easy to configure drivers are the ones in the kernel. These include drivers for:

Note: Other kernel source packages (like sys-kernel/zen-sources in the custom-kernels overlay) include patches for other drivers.

[edit] Third-Party Open Source Modules

These either already stable, or will stabilize quickly.

[edit] Binary Wrappers

Some binary drivers originally intended for windows can be loaded in linux using ndiswrapper.

Warning: The kernel must not use 4k stacks for NDISWrapper to work. Recompile with CONFIG_4KSTACKS=n. This is also under "Kernel Hacking" in genkernel.
Warning: Be sure to remove any files left over by ndiswrapper if it was previously used. Check in /lib/modules/2.6.xxx/misc and /etc/modprobe.d

[edit] FAQ

  • Q. How I can connect to several wireless networks at the same time?
  • A. You can't, at least not with only one wireless card. Just as a single ethernet card cannot be on two (physical) networks at once, a wireless card can only be associated with one wireless network at once. However, with the proper configuration, a card could be configured to intelligently switch between available wireless networks dynamically. wpa_supplicant makes this an easier task than with wireless-tools, but neither is quite as simple as in Windows XP at this time.
  • Q. What am I doing wrong?
  • A. Please check that you have a working kernel module for your wireless card. There's a whole lotta hardware out there that I do not have, and probably will never have and I cannot help with driver/hardware issues. Please start a new thread in the forum if this is the case.

Simplify, simplify, simplfy. Verify network end via other, working hardware. Try to use a fixed ethernet interface, if possible, to validate your Linux installation. Try without encryption, and with varying levels of encryption. Check that you really have all needed cryptographic kernel modules compiled.

  • Q. Are there any drivers that do not work with this?
  • A. The only one I know of is linux-wlan-ng. They have their own setup software which is vastly different from anyone elses. All other drivers use wireless-tools which is what my script uses. The developers of linux-wlan-ng are in the process of making their driver support wireless-tools - so eventually it should work. Bug them about this, not me.
  • Q. Will this work on the LiveCD?
  • A. It should do. Knoppix is a good option if you can't get it working properly on the Gentoo LiveCD.
  • Q. Is linux-wlan-ng supported?
  • A. No. And there no plans to support it either. linux-wlan-ng seems to be supporting wireless-tools more and more. Hopefully it will be supported soon, but until then you'll have to disable iwconfig module - see the above answer about how to do that. In the mean time, you can use the hostap-driver if you're not using USB.
  • Q. I cannot get WEP working!
  • A. WEP is a fickle beast. Some drivers don't support both encryption methods, some cards/drivers won't talk to some Access Points. Remember that encryption method on the Access Point has to match the method on the client otherwise it will not work. Basically, if you can get WEP to work on the command line it will work with my script.

For madwifi cards, remember to install the wlan_wep kernel modules

  • Q. Does the script only control wireless access on boot or will it allow you to "roam" between access points over time?
  • A. At present it only controls which access point you connect to on boot or restarting the script. wpa_supplicant does "roam", but there's no trigger to get a new DHCP address or supply a different IP address at this time.
  • Q. Using wpa_supplicant, I can connect, but the connection quickly drops or is available for only very short intervals.
  • A. This could be caused by a too high beacon interval. According to a Madwifi document, "Beacon intervals close to the upper limit of 500 ms should be avoided when using wpa_supplicant. There appears to be a problem with repeated association and disassociation of the client with the AP". If this is the case, try setting your beacon interval to 100 ms on your access point.
  • Q. How can I grant access to the wpa_supplicant control device to a user, so they can manage the wireless card with wpa_gui?
  • A. This can be done by setting the group ID for the control device in wpa_supplicant.conf as follows:
File: /etc/wpa_supplicant.conf
ctrl_interface_group=100 #Remember to replace 100 with the gid for the user(s) you would like to grant access

[edit] Links

Personal tools