378 lines
14 KiB
Plaintext
Executable File
378 lines
14 KiB
Plaintext
Executable File
Distribution specific notes on Wireless Configuration
|
|
-----------------------------------------------------
|
|
|
|
***** HELP *****
|
|
If people send me information about the specifics of each
|
|
distribution, I'll try to collect that here. Don't forget to mention
|
|
to which distribution those instructions apply, the tool used (if any)
|
|
and the files modified.
|
|
Actually, the people packaging my tools for a specific
|
|
distribution have a moral obligation to send me the exact detailed
|
|
instructions of what they have done. I will list in the wireless.7
|
|
man page only distributions that give me an official answer.
|
|
***** HELP *****
|
|
|
|
-----
|
|
|
|
INTRODUCTION
|
|
------------
|
|
The tools enable users to change the card settings at run time
|
|
(when running iwconfig, for example). However, most users want the
|
|
card to be configured either at boot time or when the card is
|
|
activated in the system.
|
|
Each distribution has its own configuration scripts, and
|
|
therefore is slightly different. Some distributions even add some
|
|
graphical setup tool (nice). This file describe the procedure for a
|
|
few of them.
|
|
Note : if you install the Pcmcia package in source form from
|
|
the official Linux-Pcmcia web site (as opposed to precompiled by a
|
|
distribution, please use the PCMCIA method).
|
|
|
|
Please remember : I don't use your distribution, and I have
|
|
absolutely no clue about how your distribution works. I'm just
|
|
collecting random information here without beeing able to verify it.
|
|
|
|
-----
|
|
|
|
WIRELESS DRIVERS
|
|
----------------
|
|
Most Linux wireless drivers support Wireless Extensions, and
|
|
therefore may be configure via Wireless Tools and the methods
|
|
described in this file.
|
|
|
|
However, a few drivers have no support or limited support for
|
|
Wireless Extensions (like read only). In those cases, these are your
|
|
options :
|
|
o read the driver documentation.
|
|
o use the driver specific interface or tools to
|
|
configure the card, and try to integrate that in your distribution.
|
|
o implement Wireless Extension support in the driver.
|
|
In some cases, there are easier workaround. Different version
|
|
of the driver may add Wireless Extension (often alongside the
|
|
proprietary method). In some other case, there may be another driver
|
|
supporting the same card and with support for Wireless Extensions.
|
|
|
|
Some Linux wireless drivers don't export all wireless settings
|
|
via Wireless Extensions, not even through iwpriv. Those setting may be
|
|
available through the driver specific interface. Refer to previous
|
|
section for workarounds.
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
PCMCIA METHOD
|
|
-------------
|
|
(Contributed by Jean Tourrilhes <jt@hpl.hp.com>)
|
|
This method work for *all* distributions.
|
|
For Pcmcia cards, it is possible to overwrite the Pcmcia
|
|
configuration files of the distribution with the original Pcmcia
|
|
configuration files from the Pcmcia package (/etc/pcmcia/*). If you
|
|
install the Pcmcia package in source form from the official
|
|
Linux-Pcmcia web site, this will be done automatically.
|
|
Once this is done, you can no longer use the specific tools
|
|
and configuration files of the distribution, and are required to use
|
|
Pcmcia style of configuration (see Pcmcia Howto).
|
|
In such a case, Wireless configuration is done through
|
|
wireless.opts, and documented in the file PCMCIA.txt.
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
DEBIAN 2.2 (and earlier)
|
|
----------
|
|
(Contributed by Jean Tourrilhes <jt@hpl.hp.com>)
|
|
Debian 2.2 (and earlier) doesn't support any Wireless
|
|
Configuration. You are required to use the Pcmcia method. Also, the
|
|
Wireless Tools package is not part of the standard packages.
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
DEBIAN 3.0 (and later)
|
|
----------
|
|
(Contributed by Guus Sliepen <guus@sliepen.eu.org>)
|
|
Debian also has another way of configuring network devices,
|
|
controlled by /etc/network/interfaces. Users can add a wireless
|
|
interface to /etc/network/interfaces, using the standard options to
|
|
set the address and such, but the wireless-tools package adds new
|
|
option statements that can be used to configure keys, channel,
|
|
etcetera.
|
|
From the README.Debian script that comes with wireless-tools:
|
|
|
|
/etc/network/interfaces
|
|
-----------------------
|
|
|
|
You can now add extra statements to the iface sections of the files in
|
|
/etc/network/interfaces that are specific for wireless interfaces. They
|
|
are of the form:
|
|
|
|
wireless-<function> <value>
|
|
|
|
Before the interface is brought up, such a statement will result in the
|
|
execution of the following command:
|
|
|
|
iwconfig <interface> <function> <value>
|
|
|
|
Example:
|
|
|
|
iface eth0 inet static
|
|
address 192.168.1.2
|
|
network 192.168.1.0
|
|
netmask 255.255.255.0
|
|
broadcast 192.168.1.255
|
|
wireless-essid Home
|
|
wireless-mode ad-hoc
|
|
|
|
The current Debian script support all arguments present in
|
|
wireless.opts apart from Nickname. You can check this in the script
|
|
/etc/network/if-pre-up.d/wireless-tool.
|
|
You will need of course to install the Wireless Tools package
|
|
if it's not already done, which is part of the standard package list
|
|
(use dselect, dpkg, apt or anything you like to get it).
|
|
|
|
-----
|
|
|
|
(Contributed by Joey Hess <joey@dragon.kitenet.net>)
|
|
/etc/network/interfaces is much more flexible than it appears. It can probably
|
|
do everything pcmcia schemes can do, and more. Here is part of mine:
|
|
|
|
auto wlan0
|
|
mapping wlan0
|
|
script /usr/local/bin/ifscheme-mapping
|
|
|
|
iface wlan0-home inet static
|
|
address 192.168.1.5
|
|
gateway 192.168.1.1
|
|
netmask 255.255.255.0
|
|
wireless-mode ad-hoc
|
|
wireless-essid wortroot
|
|
wireless-nick dragon
|
|
wireless-channel 1
|
|
|
|
iface wlan0-away inet dhcp
|
|
wireless-mode managed
|
|
|
|
Now I can type 'ifscheme -s away' when I leave home, rather like
|
|
cardctl scheme.
|
|
|
|
The ifscheme script is at http://bugs.debian.org/154444. If the request in
|
|
bug #154442 is implemented, it will become very flexible indeed..
|
|
|
|
Debian will hopefully be using this same file eventually for pcmcia network
|
|
devices too. It's already doable but takes a little work. This is all rather
|
|
rough and badly documented so far.
|
|
|
|
You can also do mapping based on the MAC address, if you want specific
|
|
configuration on specific card. See
|
|
/usr/share/doc/ifupdown/examples/get-mac-address.sh and the stanza in
|
|
/usr/share/doc/ifupdown/examples/network-interfaces.gz that uses it.
|
|
This comes back to the problem I alluded to with mapping scripts not
|
|
being "nestable" yet, and bug #154442. You can do what you want today,
|
|
but you may need to write your own mapping script which uses a
|
|
combination of MAC address and scheme info to return a stanza name to
|
|
ifupdown.
|
|
|
|
-----
|
|
|
|
(Contributed by Jean Tourrilhes <jt@hpl.hp.com>)
|
|
The 'ifscheme' scripts mentionned above are now available in
|
|
Debian Sarge, in the 'ifscheme' package.
|
|
The MAC address based mapping mentioned above is deprecated,
|
|
you should use 'ifrename' to assign a consistent interface name to
|
|
each of your network interface. This is documented in
|
|
HOTPLUG.txt. This enable the combination of MAC address identification
|
|
of interfaces with scheme multi-configuration.
|
|
|
|
-----
|
|
|
|
If you need automatic wireless configuration, you can look at
|
|
the following packages :
|
|
o ifupdown-roaming :
|
|
http://panopticon.csustan.edu/thood/ifupdown-roaming.html
|
|
o waproamd
|
|
http://0pointer.de/lennart/projects/waproamd/
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
SuSE 8.0 and later
|
|
--------
|
|
(Contributed by Christian Zoz <zoz@suse.de>)
|
|
All network configuration is done in the directory
|
|
/etc/sysconfig/network. It does not matter if it's a build in NIC or
|
|
PCMCIA, USB, etc. The files network.opts and wireless.opts in
|
|
/etc/pcmcia are not used any longer. There is /sbin/ifup to set up all
|
|
kind of network interface.
|
|
There is a file /etc/sysconfig/network/wireless where you may
|
|
set most of the options of iwconfig in seperate variables (they are
|
|
named like the options). Additionally you may use
|
|
WIRELESS_IWCONFIG_OPTIONS e.g. for setting key 2, 3 or 4 or
|
|
unsupported iwconfig commands. This file is documented and its
|
|
settings are used for any wlan NIC.
|
|
Configuration of wireless variable looks like :
|
|
WIRELESS_ESSID="<essid>"
|
|
Every variable from file wireless may be used in the interface
|
|
configuration files /etc/sysconfig/network/ifcfg-* as well. As
|
|
expectable this overwrites the global setting in wireless. For
|
|
sophisticated use of the ifcfg-* files read 'man ifup'.
|
|
|
|
Hint for PCMCIA and USB users:
|
|
You need not to use the iterface name for the configuration as
|
|
this may vary from one plugin to another. You may use a description of
|
|
your hardware instead (ifcfg-<MACADDRESS> or ifcfg-pcmcia-1 for card
|
|
in Slot 1)
|
|
|
|
Some of the variables can be set with YaST2 as well.
|
|
|
|
If you miss the 'schemes' functionality from the pcmcia-cs
|
|
packages use the tool SCPM (System Configuration Profile Management)
|
|
instead. This extends the pcmcia schemes to the whole system
|
|
configuration. Read 'info scpm'. Since SuSE 8.1 there also is a YaST2
|
|
modul for SCPM.
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
RED-HAT 7.2
|
|
-----------
|
|
(Grabbed from various source - Google is your friend)
|
|
Configuration is done in the file :
|
|
/etc/sysconfig/network-scripts/ifcfg-ethN
|
|
Where 'ethN' is the name of the wireless interface (such as
|
|
eth0, eth1, ...).
|
|
The following lines may be added in this file :
|
|
MODE=<mode>
|
|
ESSID="<essid>"
|
|
RATE=<rate>
|
|
TXPOWER=<txpower>
|
|
KEY="<key>"
|
|
The full list of configuration can be found in the file :
|
|
/etc/sysconfig/network-scripts/ifup-wireless
|
|
|
|
Note that Brad Allison has other tips for 7.2 :
|
|
http://jackal.dnsalias.com:8080/public/misc/wireless/wireless.html
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
RED-HAT 7.3 and later
|
|
-----------
|
|
(Cut'n'pasted from Brad Allison web page)
|
|
http://jackal.dnsalias.com:8080/public/misc/wireless/wireless.html
|
|
|
|
If you are running RedHat 7.3, I would tell you to simply run
|
|
/usr/bin/redhat-config-network and click "Devices", Click "Add", then
|
|
select "Wireless Connection". You can find the full instructions in
|
|
RedHat's Customization Guide for RH7.3 in Chapter 6, Network
|
|
Configuration: Wireless Connection.
|
|
http://www.redhat.com/docs/manuals/linux/
|
|
http://www.redhat.com/docs/manuals/linux/RHL-7.3-Manual/custom-guide/s1-network-config-wireless.html
|
|
|
|
However, according to the Errata: The version of the Red Hat
|
|
Network Administration Tool that shipped with Red Hat Linux 7.3 did
|
|
not include wireless connection in the configuration wizard. An
|
|
enhancement errata will be released soon with this feature. You can
|
|
download the newest version of redhat-config-network from rpmfind.net.
|
|
http://www.redhat.com/docs/errata/RHL-7.3-Manual/
|
|
http://www.rpmfind.net/linux/rpm2html/search.php?query=redhat-config-network&submit=Search+...
|
|
|
|
-----
|
|
|
|
(Grabbed from various source - Google is your friend)
|
|
The current graphical user interface support :
|
|
ESSID, Mode, Freq, Channel, Rate, Key
|
|
|
|
Compared to Red-Hat 7.2, the Wireless Setting in the
|
|
configuration file have change to include the WIRELESS_ prefix :
|
|
WIRELESS_MODE=<mode>
|
|
WIRELESS_ESSID='<essid>'
|
|
WIRELESS_ENC_KEY='<key>'
|
|
The underlying configuration files and configurations options
|
|
seems to be indentical to what is done in Mandrake 8.2 (or vice
|
|
versa), so please check the section below. This allow configuration of
|
|
additional wireless settings not available in the GUI.
|
|
|
|
-----
|
|
|
|
(Extrapolated from web page of Martin Pot <m.t.pot@ieee.org>)
|
|
http://ii.net/~mpot/wireless/router.cgi
|
|
Red-Hat 7.3 also seem to support configuration in
|
|
wireless.opts to some extent. But for compatibility with the network
|
|
admin tools, I would still recommend to use the above method.
|
|
Red-Hat 7.3 seems to load wvlan_cs for Orinoco cards and
|
|
friends. The above web page explain how to switch it to orinoco_cs.
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
RED-HAT 9.0 and later
|
|
-----------
|
|
(Cut'n'pasted from Dax Kelson web page)
|
|
http://www.gurulabs.com/RedHatLinux9-review.html
|
|
|
|
A little known fact is that newer versions of RHL support
|
|
multiple network profiles. This is useful for machines that commonly
|
|
plug into different networks (think laptops). The easy way to create
|
|
network profiles is to use the redhat-config-network command. The
|
|
question then becomes, what happens when you type "ifup eth0"? The
|
|
behavior wasn't defined in previous versions, however, now in RHL 9
|
|
the following behavior is defined;
|
|
|
|
search path for:
|
|
# ifup $DEV
|
|
is:
|
|
/etc/sysconfig/networking/profiles/$CURRENT_PROFILE/ifcfg-$DEV
|
|
/etc/sysconfig/networking/profiles/default/ifcfg-$DEV
|
|
/etc/sysconfig/network-scripts/ifcfg-$DEV
|
|
|
|
A cool trick is to boot your RHL box directly into a profile
|
|
from the GRUB boot screen. To do this, create a separate
|
|
/etc/boot/grub.conf entry for each network profile, and in each entry
|
|
add the kernel argument netprofile=profilename.
|
|
|
|
-----
|
|
|
|
I'm pretty certain the profile scheme above also apply to
|
|
wireless settings, which is good news...
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
MANDRAKE 8.2 and later
|
|
------------
|
|
(Grabbed from various source - Google is your friend)
|
|
Configuration is done in the file :
|
|
/etc/sysconfig/network-scripts/ifcfg-ethN
|
|
Where 'ethN' is the name of the wireless interface (such as
|
|
eth0, eth1, ...).
|
|
The following lines may be added in this file :
|
|
WIRELESS_MODE=<mode>
|
|
WIRELESS_ESSID=<essid>
|
|
WIRELESS_NWID=<nwid>
|
|
WIRELESS_FREQ=<freq/channel>
|
|
WIRELESS_SENS=<sensitivity>
|
|
WIRELESS_RATE=<rate>
|
|
WIRELESS_ENC_KEY=<keys>
|
|
WIRELESS_RTS=<rts>
|
|
WIRELESS_FRAG=<frag>
|
|
WIRELESS_IWCONFIG=<iwconfig command>
|
|
WIRELESS_IWSPY=<iwspy command>
|
|
WIRELESS_IWPRIV=<iwpriv command>
|
|
Most likely, you only need to add a few of those lines and not
|
|
all of them. The script doing the configuration and where you can
|
|
check the details is :
|
|
/etc/network/network-scripts/ifup-wireless
|
|
You will of course need the Wireless Tools package :
|
|
rpm -Uvh wireless-tools-XX-Xmdk.XXX.rpm
|
|
|
|
Mandrake can also have wireless setting added to its
|
|
Auto-Install procedure :
|
|
http://members.shaw.ca/mandrake/drakx/8.2/HTML/section4-13.html
|
|
|
|
-----
|
|
|
|
(in e-mail from Thierry Vignaud <tvignaud@mandrakesoft.com>)
|
|
You may use the following tool :
|
|
o drakconnect
|
|
You may read the following documentation :
|
|
o ifcfg
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
|
|
Have fun...
|
|
|
|
Jean
|