Difference between revisions of "Linux/network/wireless"

from HTYP, the free directory anyone can edit if they can prove to me that they're not a spambot
Jump to navigation Jump to search
 
(post-move update; removed navbar)
 
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Computing]]: [[Software]]: [[Operating Systems]]: [[Linux]]: [[{{PAGENAME}}|Wireless Network Cards]]{{seed}}
+
==About==
 +
This page is about [[wireless networking]] in [[Linux]], with a focus (currently) on setting up client adapter cards.
 +
 
 +
See also [[mesh network]] for discussion of wireless networking infrastructure, much of which involves configuration of Linux servers.
 
==Links==
 
==Links==
 +
* [http://ndiswrapper.sourceforge.net/mediawiki/index.php/List ndiswrapper driver info]: [[ndiswrapper]] converts Windows network drivers for use with Linux; this page also includes some information about chipsets and available native Linux drivers
 +
** '''Ubuntu ndiswrapper how-to'''
 +
*** http://ndiswrapper.sourceforge.net/mediawiki/index.php/Ubuntu
 +
*** https://wiki.ubuntu.com//SetupNdiswrapperHowto
 +
==Related Commands==
 +
===wireless-specific===
 +
* [[iwconfig]] configures or gets information from one or more wireless interfaces
 +
* [[iwlist]] gets additional information from a wireless interface
 +
* [[/proc/net/wireless]] lists current wireless status
 +
===networking===
 +
* {{linuxcmd|ip}} (iproute2) gets information about network interfaces (wireless and otherwise)
 +
** provides some of the same functionality as [[ipconfig]] in [[Windows (MS)|Windows]]
 +
** supercedes (and improves upon) [[ifconfig]] and {{linuxcmd|route}}
 +
** iproute2 can do these things, and ifconfig cannot:
 +
*** assign multiple addresses to a single interface (with ifconfig, you need to create virtual interfaces)
 +
* [[ifconfig]] has been superceded by iproute2, but the latter may not be available on all systems
 +
===hardware-related===
 +
* [[lspci]] is the command to list all [[PCI]] devices, which usually will include any wireless cards
 +
* [[lspcmcia]] is like lspci except that it looks specifically at the [[PCMCIA]] cards
 +
 +
==Compatibility==
 +
===External Lists===
 +
* [http://doc.gwos.org/index.php/Networkwifi Networkwifi] at the Ubuntu Document Storage Facility
 +
* [https://help.ubuntu.com/community/WifiDocs/WirelessCardsSupported WifiDocs/WirelessCardsSupported]
 +
* [http://linux-wless.passys.nl/ Linux wireless LAN support]: "Wireless Adapter Chipset Directory compiled by HJ Heins"; shows date last updated
 
* [http://www.linux-wlan.org/docs/wlan_adapters.html.gz WLAN Adapters]: compatibility information from AbsoluteValue Systems, Inc.
 
* [http://www.linux-wlan.org/docs/wlan_adapters.html.gz WLAN Adapters]: compatibility information from AbsoluteValue Systems, Inc.
* [http://ndiswrapper.sourceforge.net/mediawiki/index.php/List ndiswrapper driver info]: [[ndiswrapper]] converts Windows network drivers for use with Linux; this page also includes some information about chipsets and available native Linux drivers
+
** Although a very extensive list of available cards, this list does not seem to be very up-to-date; as of 2007-05-18, the TRENDnet was not shown as compatible. See [[#Compatible Cards]] below.
 +
===Compatible Cards===
 +
These cards worked with at least one version of [[Linux]] out of the box, no additional installation required.
 +
* [[Linksys WPC11]] "Instant Wireless" (ID and serial # illegible) -- worked since 2005-11-11 or earlier, Ubuntu 5.10
 +
** does not show up in {{linuxcmd|lspci}} ([[WTF]]??)
 +
* [[TRENDnet TEW-221PC]] -- worked since 2006-09-06 or earlier
 +
** '''controller''': ADMtek ADM8211 802.11b rev 11
 +
** '''subsystem''': ADMtek SMC2635W 802.11b
 +
===Relatively Painless Mods===
 +
* [[Linksys WPC54G]] ver. 3 serial #BDH61F706933
 +
** '''controller''': Broadcom Corporation BCM4318 [AirForce One 54g] rev 02
 +
** '''subsystem''': Linksys WPC54G-EU version 3 [Wireless-G Notebook Adapter]
 +
** "power" light comes on
 +
** apparently this card requires firmware which cannot legally be distributed with Linux, but which is nonetheless freely available for download; [http://ubuntuforums.org/showthread.php?t=185174 this shows how]. Note that this particular rev is apparently more problematic than others.
 +
** with [[Ubuntu]] 7.04, the "bcm43xx-fwcutter" package now automatically downloads the firmware, extracts it, and installs it; just be sure to use the command-line apt-get rather than graphical (Synaptic or Adept), as there are prompts, and (of course) you will need a working internet connection to do the install.
 +
===Would Not Work===
 +
* [[D-Link DWL-650]] Rev M "Air"
 +
* [[D-Link DWL-650]] Rev P "Air"
 +
** "Act" light comes on, but nothing listed in lspci; possibly card is bad, as it gave trouble in Win98 as well
 +
* [[D-Link DWL-650+]] AirPlus
 +
** '''controller''': Texas Instruments Unknown device 0400
 +
** '''subsystem''': D-Link System Inc Unknown device 3b00
 +
 
 +
==Notes==
 +
===ndiswrapper on an Ubuntu LiveCD===
 +
One of the ndiswrapper how-tos above insists that it's pointlessly difficult to install ndiswrapper when booting from a LiveCD, but (with one caveat) it's not true; I did it (with a KUbuntu 5.10 LiveCD), and it took me about 10 minutes of mostly fiddling. The actual work was about 3 commands and a bit of browsing. The caveat is that you need to have a working network connection in order to be able to install packages; you can disable it once the WLAN card is happy. You will also need to have some way to access the driver -- so if you've only got one CD reader and the driver is on a CD, you might want to copy it somewhere else (floppy, network, or a local hard drive) where the LiveCD-booted machine will be able to access it.
 +
 
 +
This is typed from memory, so steps are probably missing and out of order.
 +
# Boot LiveCD with both network cards (wireless and other working connection, which I'll call "wired" for short) installed
 +
# At some point, run the Wireless LAN Utility; it will show you the status of the WLAN
 +
# You should probably also run the Network Configuration applet from the System Configuration control panel thingy; it should show either just the wired connection, or possibly both connections with the wireless disabled. You can try enabling it, but it won't stay on at this point.
 +
# Using [[Adept]], install ndiswrapper-util or whatever it's called (the only thing which shows up when you search for "ndiswrapper")
 +
# In a console window, type: <tt>sudo ndiswrapper -i ''path/to/driver''</tt> (Not sure about this, but I don't have ndiswrapper manpage handy) where "driver" is the appropriate .ini file.
 +
 
 +
The driver is now installed, and just needs to be configured and activated.
 +
 
 +
With the liveCD, this procedure worked (to the best of my recollection), but it did not work on a full install of Ubuntu:
 +
* Figure out what device is being assigned to the network card (I forget how this is done; <tt>[[lspci]] -vv</tt> might do it...)
 +
* In a console window, type: <tt>sudo iwconfig ra0 essid "Hypertwins"</tt> (substitute the name of your WLAN for "Hypertwins")
 +
* If everything doesn't magically start working, tell the Network Config applet to activate the wireless card.
 +
 
 +
With Ubuntu installed on the hard drive, this procedure seemed to work better:
 +
* In the Network Configuration applet, select the wireless card and press [Configure Interface...].
 +
* Enter the appropriate settings for your network (mine: use DHCP, and network name is "Hypertwins")
 +
* Click [Ok]
 +
* Click [Apply] (at the very bottom right)
 +
* Click [Enable Interface] (higher up, under the interface list, next to [Configure Interface...])
 +
* I had also done the "iwconfig" step for the liveCD (described above), so if this doesn't work try iwconfig and repeat.
 +
 
 +
Scanning for networks with the WLAN Utility and then selecting one seems to have absolutely no effect (at least, when running under a liveCD), but it can give you a clue that things are starting to work.
 +
===trying to get a wlan card to work===
 +
* Notes from unassisted research trying to get any of 3 different WLAN cards to work with KUbuntu 7.04
 +
** [[2007-06-23 trying to get wlan working under Kubuntu 7.04]]
 +
* Notes from an IRC conversation in which we were trying to get a particular wireless card to work with Red Hat FC5. We didn't succeed, but a lot of useful-looking commands came up in the process.
 +
** [[2006-05-03 chat trying to fix wlan card]] (to do: extract the relevant commands and such, and link to manpages)
 +
 
 +
===notes on SUSE===
 +
SUSE 10.0 appears to have ''two'' different KDE applications having to do with wireless. I had to run them both in order to get a wireless card to start working (again).
 +
* '''KInternet''': this runs in the task tray; it's the icon which either shows two connected plugs or one plug not connected to anything (or sometimes a plug sending data, when it's connected and sending data). Double-click to connect (or disconnect; it toggles).
 +
* '''KWiFiManager''' (command: kwifimanager or run from '''Internet: Data Exchange: Wireless LAN Manager''')
 +
Running both of these resulted in a connection to the internet (ping yahoo.com returned packets). Both of these utilities ran automatically on reboot, but ping yahoo.com failed. Ping of local network addresses was still successful, so apparently DNS was not being set up right. [http://www.linuxforums.org/forum/suse-linux-help/62967-suse-10-1-nameserver-glitch.html This page] seems to be related. I was finally able to fix it with this command:
 +
{{Linuxcmd|dhcpcd}} eth1
 +
 
 +
==Links==
 +
* [http://www.kde-apps.org/content/show.php?content=28637 PyWireless]: alternative wireless management tool
 +
* '''2007-04-10''' [http://ubuntuforums.org/showthread.php?t=405990 HOWTO: Broadcom 43xx based wireless cards the EASY way]

Latest revision as of 17:27, 13 November 2011

About

This page is about wireless networking in Linux, with a focus (currently) on setting up client adapter cards.

See also mesh network for discussion of wireless networking infrastructure, much of which involves configuration of Linux servers.

Links

Related Commands

wireless-specific

  • iwconfig configures or gets information from one or more wireless interfaces
  • iwlist gets additional information from a wireless interface
  • /proc/net/wireless lists current wireless status

networking

  • ip (iproute2) gets information about network interfaces (wireless and otherwise)
    • provides some of the same functionality as ipconfig in Windows
    • supercedes (and improves upon) ifconfig and route
    • iproute2 can do these things, and ifconfig cannot:
      • assign multiple addresses to a single interface (with ifconfig, you need to create virtual interfaces)
  • ifconfig has been superceded by iproute2, but the latter may not be available on all systems

hardware-related

  • lspci is the command to list all PCI devices, which usually will include any wireless cards
  • lspcmcia is like lspci except that it looks specifically at the PCMCIA cards

Compatibility

External Lists

Compatible Cards

These cards worked with at least one version of Linux out of the box, no additional installation required.

  • Linksys WPC11 "Instant Wireless" (ID and serial # illegible) -- worked since 2005-11-11 or earlier, Ubuntu 5.10
  • TRENDnet TEW-221PC -- worked since 2006-09-06 or earlier
    • controller: ADMtek ADM8211 802.11b rev 11
    • subsystem: ADMtek SMC2635W 802.11b

Relatively Painless Mods

  • Linksys WPC54G ver. 3 serial #BDH61F706933
    • controller: Broadcom Corporation BCM4318 [AirForce One 54g] rev 02
    • subsystem: Linksys WPC54G-EU version 3 [Wireless-G Notebook Adapter]
    • "power" light comes on
    • apparently this card requires firmware which cannot legally be distributed with Linux, but which is nonetheless freely available for download; this shows how. Note that this particular rev is apparently more problematic than others.
    • with Ubuntu 7.04, the "bcm43xx-fwcutter" package now automatically downloads the firmware, extracts it, and installs it; just be sure to use the command-line apt-get rather than graphical (Synaptic or Adept), as there are prompts, and (of course) you will need a working internet connection to do the install.

Would Not Work

  • D-Link DWL-650 Rev M "Air"
  • D-Link DWL-650 Rev P "Air"
    • "Act" light comes on, but nothing listed in lspci; possibly card is bad, as it gave trouble in Win98 as well
  • D-Link DWL-650+ AirPlus
    • controller: Texas Instruments Unknown device 0400
    • subsystem: D-Link System Inc Unknown device 3b00

Notes

ndiswrapper on an Ubuntu LiveCD

One of the ndiswrapper how-tos above insists that it's pointlessly difficult to install ndiswrapper when booting from a LiveCD, but (with one caveat) it's not true; I did it (with a KUbuntu 5.10 LiveCD), and it took me about 10 minutes of mostly fiddling. The actual work was about 3 commands and a bit of browsing. The caveat is that you need to have a working network connection in order to be able to install packages; you can disable it once the WLAN card is happy. You will also need to have some way to access the driver -- so if you've only got one CD reader and the driver is on a CD, you might want to copy it somewhere else (floppy, network, or a local hard drive) where the LiveCD-booted machine will be able to access it.

This is typed from memory, so steps are probably missing and out of order.

  1. Boot LiveCD with both network cards (wireless and other working connection, which I'll call "wired" for short) installed
  2. At some point, run the Wireless LAN Utility; it will show you the status of the WLAN
  3. You should probably also run the Network Configuration applet from the System Configuration control panel thingy; it should show either just the wired connection, or possibly both connections with the wireless disabled. You can try enabling it, but it won't stay on at this point.
  4. Using Adept, install ndiswrapper-util or whatever it's called (the only thing which shows up when you search for "ndiswrapper")
  5. In a console window, type: sudo ndiswrapper -i path/to/driver (Not sure about this, but I don't have ndiswrapper manpage handy) where "driver" is the appropriate .ini file.

The driver is now installed, and just needs to be configured and activated.

With the liveCD, this procedure worked (to the best of my recollection), but it did not work on a full install of Ubuntu:

  • Figure out what device is being assigned to the network card (I forget how this is done; lspci -vv might do it...)
  • In a console window, type: sudo iwconfig ra0 essid "Hypertwins" (substitute the name of your WLAN for "Hypertwins")
  • If everything doesn't magically start working, tell the Network Config applet to activate the wireless card.

With Ubuntu installed on the hard drive, this procedure seemed to work better:

  • In the Network Configuration applet, select the wireless card and press [Configure Interface...].
  • Enter the appropriate settings for your network (mine: use DHCP, and network name is "Hypertwins")
  • Click [Ok]
  • Click [Apply] (at the very bottom right)
  • Click [Enable Interface] (higher up, under the interface list, next to [Configure Interface...])
  • I had also done the "iwconfig" step for the liveCD (described above), so if this doesn't work try iwconfig and repeat.

Scanning for networks with the WLAN Utility and then selecting one seems to have absolutely no effect (at least, when running under a liveCD), but it can give you a clue that things are starting to work.

trying to get a wlan card to work

notes on SUSE

SUSE 10.0 appears to have two different KDE applications having to do with wireless. I had to run them both in order to get a wireless card to start working (again).

  • KInternet: this runs in the task tray; it's the icon which either shows two connected plugs or one plug not connected to anything (or sometimes a plug sending data, when it's connected and sending data). Double-click to connect (or disconnect; it toggles).
  • KWiFiManager (command: kwifimanager or run from Internet: Data Exchange: Wireless LAN Manager)

Running both of these resulted in a connection to the internet (ping yahoo.com returned packets). Both of these utilities ran automatically on reboot, but ping yahoo.com failed. Ping of local network addresses was still successful, so apparently DNS was not being set up right. This page seems to be related. I was finally able to fix it with this command:

dhcpcd eth1

Links