Wireless Tools for Linux
Presentation
The Linux Wireless Extension and the Wireless Tools are an Open
Source project sponsored by Hewlett Packard (through my
contribution) since 1996, and build with the contribution of many
Linux users all over the world.
The Wireless Extension (WE) is a generic API allowing a driver
to expose to the user space configuration and statistics specific to
common Wireless LANs. The beauty of it is that a single set of tool
can support all the variations of Wireless LANs, regardless of their
type (as long as the driver support Wireless Extension). Another
advantage is these parameters may be changed on the fly without
restarting the driver (or Linux).
The Wireless Tools (WT) is a set of tools allowing to
manipulate the Wireless Extensions. They use a textual interface and
are rather crude, but aim to support the full Wireless
Extension. There are many other tools you
can use with Wireless Extensions, however Wireless Tools is the
reference implementation.
- iwconfig manipulate the basic wireless parameters
- iwlist allow to initiate scanning and list frequencies,
bit-rates, encryption keys...
- iwspy allow to get per node link quality
- iwpriv allow to manipulate the Wireless Extensions specific
to a driver (private)
- ifrename allow to name interfaces based on various static criteria
Most Linux distributions also have integrated Wireless Extensions support in
their networking initialisation scripts, for easier boot-time
configuration of wireless interfaces. They also include Wireless Tools
as part of their standard packages.
Wireless configuration can also be done using
the Hotplug scripts and distribution specific support, this enable
the proper support of any removable wireless interface (Pcmcia,
CardBus, USB...).
Any versions of the Pcmcia
package offer the possibility to do wireless configuration of
Pcmcia and Cardbus card through thefile
wireless.opts. This allow to fully integrate wireless settings in
the Pcmcia scheme mechansism. However, this method is now deprecated
in favor of distribution specific methods.
Please note that the Wireless Tools (starting with version 19)
supports fully IEEE 802.11 parameters and devices, support
older style of devices and most proprietary protocols, and are
prepared to handle HiperLan as well. More recent versions of course
adds more 802.11 support.
But, unfortunately not all drivers
support all these features...
Documentation & erratas
The Wireless Tools package include extensive man pages for each
of the tools, which are the most up to date and most detailed
documentation on the capability of these tools.
The Wireless Tools package also includes two text documents on the
usage of Wireless Tools to configure wireless cards
automatically :
- DISTRIBUTIONS.txt describes how
various Linux distributions implement Wireless Extensions in
their specific configuration scripts. Please read this, as most
distributions no longer use wireless.opts. I need your help
making this document better.
- HOTPLUG.txt describes how to manage
wireless interfaces using the HotPlug subsystem and the
distribution specific support for wireless, and includes some more
advanced material. This is a complement to DISTRIBUTIONS.txt.
- PCMCIA.txt describes the use of Pcmcia
schemes and wireless.opts (i.e. configuration with the default
Pcmcia scripts). This method is deprecated, but still work and has
some advantages.
Some driver documentations (man page, web, README) describe
what the driver support in term of Wireless Extension and how the
various Wireless Extension parameters map to the capability of the
card.
The Linux Wireless LAN Howto contains a
section about the Wireless
Extensions, but it's a bit out of date for the details...
I have also the following erratas and comments :
- In the rare cases where your kernel isn't compiled with Wireless
Extensions (/proc/net/wireless non-existent), you need to recompile
it with Wireless Extensions (CONFIG_NET_RADIO enabled).
- After recompiling a kernel with Wireless Extension, you have to
recompile your driver or the Pcmcia package as well (and restart it).
- All versions of Wireless Tools up to version 26 need to be
compiled for the precise version of Wireless Extension present
on the system. Starting with Wireless Tools 27, Wireless Tools
can handle multiple versions of Wireless Extension without
recompile.
- The Wireless Extensions and Wireless Tools version numbers will
not match with each other. The Wireless Tools and the Wireless
Extensions (the underlying API) evolve independantly of each
other. The command iwconfig --version gives you the detail of
your setup.
- Compilation of the Wireless Tools used to be tricky, especially in
the header area. I believe this has been fixed for good.
- For kernels before 2.2.14/2.3.30, use Wireless Tools version
19.
- For kernel after 2.2.14/2.3.30 use Wireless Tools version
20 or greater.
- The tools and the wireless library are GPL.
- In the old time, you could upgrade Wireless Extensions by just
changing wireless.h. Starting with Wireless Extensions
v12, this is no longer true, you need to apply the full patch to
the kernel. See above for the patches.
- Further down, you will find a FAQ about common
problems.
Wireless Tools latest versions
The latest stable version of Wireless Tools is version 27, it
is stable, most of the stupid bugs have been removed and it supports
all Wireless Extensions (from version v11 to v17).
You can download Wireless Tools on the Pcmcia ftp server, in
the contrib directory :
In case of trouble, you can also fetch it on this server : version 27, but be gentle on this
server... For historical purpose, you can get earlier version
here : version 19, version 20, version 21, version 22, version 23, version 24, version 25 and version 26. There is no point in
using an old version, as the latest version can support all versions of
Wireless Extensions.
If you have troubles compiling version 27 on your system, you may use
version 27 + compile
fix. This version will produce the exact same code as the regular
version 27, but should compile properly on those systems where the
regular version 27 fails.
The main features of the latest beta is a longer scanning time
for the MadWiFi driver, more features for ifrename, a multicall
version of the tools for memory starved systems, and minimal WPA
(WE-18) support :
Experimental version of Wireless Tools (at your own risk) :
The detailed changelog of the Wireless Tools is in the package, what
follows is a human readable version of it ;-).
Version 27 adds :
- Ability to run with multiple version of Wireless
Extensions. It means that all WE version mismatch are gone, and
you don't need to recompile when changing between kernels with
different WE version. The tool redirector is obsolete and removed.
- Make libiw really usable by third party tools. This include
the removal of the WE version dependancy, the stabilisation of the API
and the addition of the easy Scanning API.
- Add ifrename, to rename network interfaces based on
various static criteria, and associated documentation
- Add advanced documentation about network Hotplug and
related stuff in HOTPLUG.txt
- Support auto/fixed frequencies and relative tx-power (WE-17)
- Support very large scan results and private definition lists (WE-17)
- Optionally disable individual quality statistics (WE-17)
- Support event capability in iwlist event (WE-17)
- Display channel alongside frequencies in iwlist and iwevent
- Display updated quality statistics with '=' instead of '(updated)'
- Implement iwconfig XXX txpower on and fixed
- Fix redirection of iwevent output to file/pipe
- Add raw display and channel support in iwgetid
- Various bugfixes, optimisations and cleanup
Version 26 adds :
- Fix bugs in parsing encryption keys and setting encryption
on in iwconfig.
- Update distribitions specific documentation
in DISTRIBUTIONS.txt
- Really allow compile without maths library for embeeded platforms
- Support new iwspy features (setthr and related event) (WE-16)
- Add tool redirector for people having multiple kernels with
different Wireless Extension versions (WE-16)
- Various trivial bugfixes and cleanup
- Various Makefile and and iwlib improvements
Version 25 adds :
- Start document distribitions specific wireless configuration scripts
in DISTRIBUTIONS.txt
- Enumerate *all* network interfaces (fix problem with NWN drivers)
- Improve private extension support : new types, sub-ioctls,
iwpriv -a, handle more than 16 extensions... (WE-15)
- Fix infinite loop with unknown Wireless Events (bad bug)
- Add new Wireless Events : IWEVCUSTOM, IWEVREGISTERED and
IWEVEXPIRED (WE-15)
- Show current settings in iwlist for freq, rate and
txpower
- New iwgetid options : mode, freq, protocol
- Implement --version to show tools and WE versions
- Improve version warning messages to be hopefully less confusing
- Allow compile without maths library for embeeded platforms
- Makefile fixes, various other cleanups
Version 24 adds :
- Fix a bug that prevents disabling encryption and setting authentication
(introduced in version 23)
- Change the way tools enumerate wireless interfaces. Tools no
longer lists interfaces not supporting /proc/net/wireless, but
lists interfaces which are down.
- Wireless Event support (WE-14)
- Scanning support (WE-14 - replaces now obsolete iwlist
aplist)
- Support iwconfig ethX ap auto/any/off
- Man pages for iwevent and iwgetid
- Improved system header definitions, more complete libiw,
cleanups...
Version 23 adds :
- Fix a problem when trying to use iwspy before the interface
is configured
- Add missing commands in the iwlist man page
- Fix "make install" and install man pages
- Automatic glibc/kernel header configuration
- Nicer iwconfig error messages
- Add iwconfig ethX commit (WE-13)
Version 22 adds :
- Fix minor bugs in parsing command line
- Most basic functions of the tools available as a library
(libiw)
- Add a few extra wireless statistics (WE-12)
Version 21 adds :
- Improved power management support (WE-10)
- Transmit Power parameter (WE-10)
- Document wireless.opts and Pcmcia
scheme usage (multi cards, multi setups)
- Better Makefile, header options can be set there
- Support for GLibc2.2
- Check Wireless Extension version mismatch (WE-11)
- Retry settings (WE-11)
- Split iwspy into iwspy and iwlist
Version 20 was already adding :
- Operation mode support (managed/ad-hoc) (WE-9)
- Power saving support (WE-9)
- New encryption support (WE-9)
However, the version 20 and later don't work for older kernels
(prior to 2.2.14 and 2.3.30), for those kernel I
recommend to use version 19, which is also very stable (but
with less features). Note that most 802.11b drivers require Wireless
Extension v9 or later, so won't work with those ancient kernels.
ifscheme for Debian users
Users of the Debian distribution may want to use the ifscheme
scripts to manually manage multiple configuration per wireless
interface. Note that a Debian package exist, so you probably don't
have much reason to pick the version here...
For automatic management, please check for various tools in the
later section.
Wireless Extensions patches (for kernel and drivers)
The Wireless Extensions support come as 3 parts :
- The Wireless Extension (the core API), part of the Linux kernel
(mostly defined in wireless.h).
- Driver support, implementing some of those extensions for the
specific hardware.
- Wireless Tools and other wireless applications, that the users
manipulate.
Wireless Extension versions :
Version
| Kernel
| Features
|
WE-9
| 2.2.14, 2.3.30
| Basic 802.11b support
|
WE-10
| 2.2.19, 2.4.0
| Add TxPower setting
|
WE-11
| 2.4.4
| Driver version check, retry setting
|
WE-12
| 2.4.13
| Additional statistics
|
WE-13
| 2.4.19, 2.5.3
| New driver API
|
WE-14
| 2.4.20, 2.5.7
| Wireless Scanning, Wireless Events
|
WE-15
| 2.4.21, 2.5.37
| Enhanced iwpriv support
|
WE-16
| 2.4.23, 2.5.70
| 802.11a/802.11g fixes, Enhanced iwspy support
|
WE-17
| 2.6.10
| Event capability, large scan results
|
The core API is strongly versioned, so that application can detect
changes in the API. The version number of Wireless Extensions
specify which feature are available through the API, and is completely
independant of the version of the tool using it, for example, each
version of the Wireless Tools can support a wide range Wireless
Extension versions. You can use iwconfig --version to get all
the details on your current setup.
One common issue is that Wireless Extensions offers only source level
backward/forward compatibility, not binary compatibility. Therefore,
every time the core API is updated or changed on the system (kernel
upgrade), both drivers and tools need to be recompiled. Version
27 and later of Wireless Tools can support multiple versions of
Wireless Extensions without the need of a recompile.
Some wireless drivers require a minimum level of Wireless Extensions,
and most often newer version of Wireless Extensions enable additional
features in the driver. Usually, the simplest way to upgrade the
Wireless Extensions is to upgrade your kernel (see table
above). Most driver support the newer Wireless Extension only in
their most recent version, so most often to get the benefit of the
additional features you might need to upgrade your
driver.
Alternatively, you can use the patches below. Those patches may not
always apply properly to your kernel, they may crash or eat your hard
drive, use at your own risks and don't expect much help, because I
would rather have you upgrading your kernel. After patching the
kernel, don't forget to recompile and reinstall the kernel itself, the
kernel modules, the Pcmcia package modules and the various external
driver modules.
- Kernel 2.2.X patches
- Wireless Extensions v15 for kernel
2.2.25 : cummulative patch to upgrade directly from WE-10 to
WE-15. Wireless Event is not available, the rest seems to work.
- Kernel 2.4.X patches
- Wireless Extensions v11 for kernel
2.4.2, including various wireless drivers. Adds driver version check,
retry setting. [Already in 2.4.3]
- Wireless Extensions v12 for kernel
2.4.12. Adds more statistics, move iwpriv ioctls to a private
space. [Already in 2.4.13]
- Wireless Extensions v13 for
kernel 2.4.18. Add the new driver API based on iw-handlers (to replace
ioctl handler). [Already in 2.4.19-pre5]
- Wireless Extensions v14 + WE-13
ESSID bug fix for kernel 2.4.19. Add a Wireless Event dispatcher
through rtnetlink (driver and set events) and support for
Wireless Scanning (iwlist ethX scan). Also fix a stupid bug in
WE-13 patch above (of by one). [Already in 2.4.20-pre2]
- Wireless Extensions v15 for kernel
2.4.20. Fix and enhance private extensions support, mostly for HostAP
driver. Define additional Wireless Events. Get strict on buffer size
for GET requests (this may break old applications using Wireless
Extensions). [Already in 2.4.21-pre2]
- Wireless Extensions v16 for kernel
2.4.21. Rework iwspy support : simplify driver side iwspy support
and add iwspy Wireless Event. Also increase the number of bit-rates in
iwrange for complete 802.11a/802.11g support. [Already in
2.4.23]
- Wireless Extensions v16 for kernel
2.4.19 and earlier. Same as patch above, but apply to kernel 2.4.19
and earlier. Not a cumulative patch, you will need to apply after the
v15 patch (and previous patches as needed).
- Wireless Extensions v17 for
kernel 2.4.29 and earlier. Export driver event capacities, allow large
scan requests and various minor fixes.
- Kernel 2.5.X patches
- Wireless Extensions v13 for
kernel 2.5.2. Add the new driver API based on iw-handlers (to replace
ioctl handler). [Already in 2.5.3-pre3]
- Wireless Extensions v14 for
kernel 2.5.6. Add a Wireless Event dispatcher through rtnetlink
(driver and set events) and support for Wireless Scanning (iwlist
ethX scan). [Already in 2.5.7-pre1]
- WE-13 ESSID bug fix for
2.5.15, fix a stupid bug in WE-13 patch above (of by one). [Already
in 2.5.16]
- Wireless Extensions v15 for kernel
2.5.32. Fix and enhance private extensions support, mostly for HostAP
driver. Define additional Wireless Events. Get strict on buffer size
for GET requests (this may break old applications using Wireless
Extensions). [Already in 2.5.37]
- Wireless Extensions v16 for kernel
2.5.64. Rework iwspy support : simplify driver side iwspy support
and add iwspy Wireless Event. Also increase the number of bit-rates in
iwrange for complete 802.11a/802.11g support. [Already in 2.5.70]
- Kernel 2.6.X patches
- Wireless Extensions v17 for kernel
2.6.9. Export driver event capacities, allow large scan requests and
various minor fixes. [Already in 2.6.10-rc2]
- Wireless Extensions v18 for kernel
2.6.1. WPA support, from Jouni Malinen. You will need WT-27-pre25 or
later.
- Wireless Extensions v19 for kernel
2.6.12. Misc updates and cleanups. You will need WT-27-pre25 or later.
- Wireless Extensions v20 for kernel
2.6.12. Wireless-RtNetlink support : Allow to Set/Get Wireless
Extensions through the RtNetlink socket. Very experimental, this is
not the final version, and some things are known to be broken.
- Obsolete wireless driver patches (wavelan,
wavelan_cs and netwave_cs)
- Orinoco driver patches
- Conversion of the Orinoco driver
version 0.9b to the new driver API (WE-13).
- Add some Wireless Events and Scanning (WE-14) to the Orinoco driver version 0.9b.
- Moustafa
A. Youssef has updated my patches to the Orinoco driver
v0.11b (both WE-13 and WE-14 support : convert to new API and
add Wireless Events and Scanning).
- Orinoco v0.13a patch :
convert the Orinoco to the new API (WE-13), and add Wireless Events
and Scanning (WE-14). Contributed by Jim Carter, based on the
patch from Moustafa (see above). I didn't yet test that patch.
- Orinoco v0.13d patch :
convert the Orinoco to the new API (WE-13), and add Wireless Events
and Scanning (WE-14). Contributed by Pavel Roskin, based on the
patch from Moustafa (see above). Also include scanning support for
Symbol firmwares (from Jesus Molina). I've quickly checked this patch.
- Orinoco WE-16 & WE-17
support : use the new iwspy support, export event
capability. For orinoco-0.15rc1.
- Other driver patches
- The Aironet
driver has already been converted to the new driver API (WE-13)
and has scanning and event support (WE-14). [Already in 2.5.20 ;
2.4.20-pre1 and CVS]
- Use new iwspy support (WE-16) in the Aironet driver. [Already in 2.6.0-test2
and CVS]
- iwstats cleanups (WE-19) in the Aironet driver.
- The No Wires Needed
driver has already been converted to the new driver API (WE-13)
and has scanning support (WE-14).
- The Prism2
HostAP driver has already been converted to the new driver API
(WE-13), has scanning and event support (WE-14) and take advantage of
the improved iwpriv support (WE-15). [Already in 2002-09-12]
- Add support for "iwlist scan" in master mode in the HostAP driver. [Already in
v0.0.1]
- Add new iwspy support (WE-16) in the HostAP driver. [Already in
v0.0.2]
- HostAP WE-17
support : allow large scan requests, export event
capability. For hostap-driver-0.2.3.
- Prism54 WE-17
support : allow large scan requests, export event
capability. For kernel 2.6.8. [Already in 2.6.10-rc1]
Debugging Wireless Extensions (common problems)
Usually, people don't have much trouble with Wireless
Extensions. There are a few gotchas, here are the most common
ones :
- iwconfig says "no wireless extensions."
- Enable the config option CONFIG_NET_RADIO in your kernel
setup.
- Recompile and reinstall this kernel.
- Recompile and reinstall the kernel modules.
- Do cat /proc/net/wireless. If the command returns an error,
you are using the wrong kernel. Try again.
- If you are using Pcmcia, go into the Pcmcia package, do a make
config
- Check that the following line appears : "Radio network interface
support is enabled.".
- Recompile and install the Pcmcia package.
- iwconfig still says "no wireless extensions.", displays
garbage or crashes before displaying anything.
- Make sure you have fully checked all the steps of the first
question.
- The driver or driver version you are using probably does not
support Wireless Extension.
- Check the list below.
- If your driver is listed, try a more recent version.
- If your hardware is listed, try the driver mentionned (there may
be multiple of them - see also the Howto).
- Make sure that Pcmcia is loading the driver you think it is
loading. Hack the various files in /etc/pcmcia/ until it loads
the correct driver (grep is your friend).
- If you still can't get it, or if you find no suitable driver,
complain to the driver maintainer.
- I try to change a specific parameter with iwconfig, it
just returns an error message
- Check reading parameters and setting other parameters.
- If setting all parameters fail, see first two questions.
- No card support the full range of Wireless Extension, so your
hardware or firmware may not have this feature.
- Check the Windows driver and card documentation to see if the
feature exist.
- Then, your driver or your driver version may not export this
particular feature. Try the latest version.
- For driver with otherwise rich support, it's more likely a
hardware limitation. For driver with limited support, it might be a
driver limitation.
- Check the driver documentation to see if the feature is supported.
- Lastly, ask the maintainer if it is a hardware, software or
documentation limitation and what to do about it.
- I change stuff in wireless.opts, nothing happens
- Check that the MAC address prefix of the definition matches the MAC
address of your card (with ifconfig).
- Check that no other previous definition would match your card (the
first matching section is used, "*" matches everything).
- In particular, make sure that you have either commented or removed
the "*,*,*,*)" at the top of wireless.opts.
- Check the scheme matching and the scheme you are currently using
(with cardctl scheme).
- Restart the Pcmcia card manager.
- Check you system logs for error messages.
- See next question
- My config in wireless.opts is still ignored, and I have
no error message in the system log
- If your card is not a Pcmcia card, it's normal, because
wireless.opts is part of the Pcmcia specific configuration. The
workaround is to use a distribution with integrated support for
Wireless Extensions.
- Most distributions don't use standard Pcmcia configuration but
their own network configuration scripts. In this case, they will
ignore wireless.opts.
- Most modern distributions have integrated support for Wireless
Extensions. When this is available, this is the easiest option, as
you just need to add your settings the network configuration file of
the distribution. Sometime you can even do wireless configuration in
the graphical tools.
- For distributions that don't have integrated support for Wireless
Extensions, file a bug report with the distribution and reinstall
standard Pcmcia scripts, especially /etc/pcmcia/network.
- When I set my configuration in wireless.opts, it
complains in the system log that it can't find iwconfig
- Install Wireless Tools somewhere on the system, like in
/usr/local/sbin
- When I set my configuration in wireless.opts, I've got
weird errors in the system logs
- Run iwconfig. See first two questions.
- Try to set the equivalent parameters directly using
iwconfig to make sure that you get the syntax right and that
the card support those.
- iwconfig crashes after displaying valid info...
- Do cp /usr/src/linux/include/linux/wireless.h /usr/include/linux
- Recompile and reinstall the wireless tools
- iwconfig says : "Warning: Driver for device XXXX
has been compiled with version XX"
- Use Wireless Tools version 27 or later, which fixes this issue.
- For older version of Wireless Tools :
- Do cp /usr/src/linux/include/linux/wireless.h /usr/include/linux
- Recompile and reinstall the wireless tools
- Use "iwconfig --version" to check that versions matches
- If you still have this message after this, or if the driver
version is a bogus number, your driver need fixing...
- iwconfig says : "Warning: Driver for device XXXX
recommend version XX of Wireless Extension"
- Ignore, unless you can't configure your device
- Upgrade your kernel, and recompile/reinstall kernel/modules/tools.
- When compiling the Wireless Tools, it says "Wireless
Extension earlier than XX detected"
- Ignore, unless you find a bug
- When compiling the Wireless Tools, it says "Wireless
Extension later than XX detected"
- This is not problematic, but think of getting a newer version of the tools.
- When compiling the Wireless Tools, it complains that
IFLA_WIRELESS is undeclared
- Use Wireless Tools version 27 or later, which fixes this issue.
- For older version of Wireless Tools :
- Make sure you are not messing up with wireless.h in the
kernel, you could make things to not work at all.
- Do cp /usr/src/linux/include/linux/rtnetlink.h /usr/include/linux
- Recompile and reinstall the wireless tools
- In the kernel log, it say "wlan0 (WE) : Buffer for request
XXXX too small (0<XX)"
- Find the wireless application that generates it
- Upgrade this application it to the latest version
- If the problem persist, file a bug on the application
- In the kernel log, it say "wlan0 (WE) : Invalid/Unknown
Wireless Event"
- Your kernel and your driver are out of sync
- Recompile/reinstall your kernel, kernel modules, pcmcia modules
and external driver modules
Driver support
All the drivers for Wireless LANs are listed in the Linux Wireless LAN Howto, and each section detail the level of Wireless Extension support.
If you are developping Wireless Extension support in your wireless
driver, those few drivers are worth a look at :
- The Wavelan
driver is the reference implementation of Wireless Extensions for
pre-802.11 devices. It supports NWID, Channel, Sensitivity, Encryption
key, stats and spy.
- The HostAP
driver is the reference implementation of Wireless Extensions for
802.11b devices, and is the reference implementation for
iwpriv functionality.
- The Aironet
driver (version 1.4 and later from Ben) is an alternate reference
implementation of Wireless Extensions for 802.11b devices. It
implements fully WE-14 (Wireless Scanning and Wireless Events), and is
different than HostAP.
- The Orinoco
MPL/GPL driver version v0.14 or later is also an alternate
reference implementation of Wireless Extensions for 802.11b
devices. On the other hand, version v0.13 and earlier found in most
places only support WE-12 (so no scanning and no events). The Orinoco
driver tend to be easier to study than both the HostAP and the Aironet
drivers.
Wireless Applications for Linux
I need your help to make this section larger ;-)
The first set of application are applications that make use of
Wireless Extensions :
- Don Park is writting
ApRadar, a GTK application that use scanning support to
show a graphical list of reachable Access Point and to allow the user
to easily connect to one wireless network at the click of a button.
- Lennart
Poettering has written IfPlugd/WapRoamd, a pair of deamons
that automatically roam between Access Points. It can use wireless
event support to detect AP handoff and can then automatically
select an new AP and configure the link.
- Stefan Winter
has developped KWiFiManager, a very complete set of KDE
tools using Wireless Extensions (configurator, link monitor) and
compatible with many drivers/cards. It is the successor to the famous
KOrinoco. The
latest version has scanning support.
- Christopher TenHarmsel
and his friends have developped Kifi, another KDE
wireless configuration tool, that use scanning support to show
a graphical list of reachable Access Point and to allow the user to
easily connect to one wireless network at the click of a button.
- Dan
Williams has developped NetworkManager, a complete network
configuration and autodiscovery package used in RedHat and
Fedora, which fully support Wireless Extensions including
Scanning.
-
Helge Oyvind wrote WaveSelect, a KDE wrapper around iwlist
and iwconfig.
- Edward A. Falk has
developped a new version of Netcfg, which main features are the
support of wireless configuration and network profiles (implemented
through Pcmcia schemes). Very nice !
- Sujal Shah has
developped GWireless, a Gnome link monitor and
configurator for 802.11b cards using Wireless Extensions.
- Tom Waters
has written xwconfig, a GTK version of iwconfig.
- Werner Schulte has
developped QWireless, a program for the X86 and ipaq allowing
to analyse wireless lans.
- Jan
Morgenstern has written wavemon, a very nice curses
application to monitor your card using Wireless Extensions.
- Green
Bay Professional Packet Radio has a modified version of my
Wireless Tools for the Symphony, with nice colors and bar graphs, to
allow better setup of Wireless Links.
- Luis Peralta
has written a web based Wireless Configurator and a Link
Quality Checker, which are perl wrappers around my Wireless Tools.
- Jim
Carter has written a APHunter, a Perl wrapper around my
Wireless Tools using curses to shows the result of Wireless
Scans.
- Matthias Reif
has written KWaveControl, a KDE application that display
current setting and statistics of Wireless cards.
- Paolo
Cavone has written Mobydik.tk, a TCL wrapper around
Wireless Tools.
-
Tobias Rundstr�m did wvlanmon, a link monitor for
Gnome using Wireless Extensions.
- Mark
C. Langston has developed a very nice Enlightenment epplet,
E-Wireless, that monitor link quality, of course using Wireless
Extensions...
- Carsten
Schuermann has developed a very nice Window Maker dockapp,
WMWave, that monitor link quality, signal strength and noise
level.
- Gtnx
Sjoerd has developped a signal strength plug-in that fits into the
GKrellM monitoring system.
- Trent
Trautman has developped a signal strength plug-in that fits into
the Entity XML framework.
- Tim Ehlers has modified
xosview to monitor the wireless link.
- Jim Binkley has
developped a wireless signal strength monitor. The Linux
version uses the Wireless Extensions and has been designed for the
iPaq.
- David
Koski has written a Java Applet to monitor the Wireless
Link.
- Gabriel
Cain made a compact X11 wireless monitor.
- Rob Flickenger made a
Perl script that display link quality in color on your teminal.
- Ico Doornekamp has
written a simple applet that show basic network info and also
wireless signal strength.
- Ico Doornekamp has
written a simple applet that show basic network info and also
wireless signal strength.
- Jerome
Kerdreux has written Gtk-Womitor, an applet that show
graphs of signal strength.
- P. Lutus
has written NetworkControl, an utility to monitor network
interfaces statistics and signal strenght.
- Jess Mahan wrote
WM WiFi, a small Window Maker dockapp that monitor link
quality, bit rate and current access point.
- Steven Hanley has
developed a small package using Wireless Extensions to get the
statistics at the other end of the wireless link (remote
stats), with a nice graphical user interface, and which can be docked
in your window manager.
- Eric
Maland and friends have developped a package to log discovered
ESSID (and related info) of wireless networks in range.
- Jeffrey Strube has
written AP Hopper, a program that automatically hops between
access point, check DHCP and log the result.
- Paul Fox
has developped a shtumble, tiny shell script stumbler.
- Moustafa
Youssef has developped a general API for interfacing with
Wireless Extensions.
- Petr Baudis
has modified the Hotplug scripts to better integrate ifrename with
ifplugd.
- Jim Binkley has
developed a version of Mobile IP which is wireless
aware. His Linux implementation uses the Wireless Extensions...
- Open1x is an Open Source
implementation of the 802.1x protocol that uses Wireless
Extensions.
- AvantCom has
created a 802.11 SNMP MIB which expose Wireless Extension
information through SNMP.
Those applications are partially using Wireless Extension, but also
require specific driver APIs, making them only useful if you use the
specific wireless driver (HostAP in this case) :
- WeWimo
monitor the HostAP driver and clients associated to it in a web
interface.
- wifimon
monitor the HostAP driver and clients associated to it in a
text terminal.
- Thanos Panousis and
Thimios Dimopoulos have developped WiFiAdmin, a web front
end to configure the HostAP driver and some other drivers.
Now, a few other applications that don't use Wireless Extensions but
are useful anyway :
- Jon Sevy has
developped a Java-based AirPort/RG1000 Base Station
configurator, that should please some people not owning a
Mac... He has also done Wireless Link Test Utility and a
Wireless Host Monitoring Utility for the Airport/RG1000.
- Johan
Almqvist has developed a perl script to configure a D-Link
DWL-1000AP Access Point via SNMP.
- Sujal Shah is
writting a Gnome application to configure a Linksys
WAP11 Access Point via SNMP.
- Ori Pessach has
done a Gnome application to configure a Linksys WAP11
Access Point via SNMP, which really works.
- Roman Festchook has
writen a set of ncurses based utilities to configure via SNMP protocol
Access Points based on Atmel chipset (the case for most
Intersil clone vendors), and also Access Points based on NWN
chipset.
- Mark
C. Langston has written some Perl script to check the status of
the Airport Base Station.
- Tom
Z. Meinlschmidt has developped an impressive package allowing to
monitor a Wavelan Access Point using SNMP.
- Greg Hankins
has done a similar monitor for the RoamAbout Access Points.
- V.Melnik has developped
a package to monitor a Wavelan Access Point using SNMP and
store the result in a mySQL database.
- Dominic Kilbride
has developped a package to monitor various Access Points using
SNMP and store the result in a mySQL database and show graphical
results.
- Kirby Kuehl has
developped a package discovering Wireless Access points from their
wired side. It basically check MAC address that match known Access
Point manufacturers.
- Jan.B.Fernquist has
developped PrismStumbler, discovering networks in ranges with
PrismII cards.
- AirSnort is the very
famous tools that allow you to crack WEP encryption and snoop
802.11 traffic. Use only on your own network...
- Bruce
Barnett has some tool to decode 802.11 frames.
- Mike Kershaw and
friends have developped Kismet, a complete package for
finding 802.11 cells and their characteristics and 802.11 traffic
analysis (using the "monitor" mode of various cards).
- The iproute2
package, which allow to configure part of the Linux TCP/IP stack
that ifconfig just can't reach.
- The
NetPerf benchmark. That's the one I use, and I love it !
- MRTG
seems an interesting tool to monitor the quality of TCP links
(I need to try it...).
Wavelan,
Orinoco and
Wireless LANs -
jt@hpl.hp.com
Updated 26 May 04
Copyright © 1996-2004 Jean Tourrilhes
|
|
Project hosted and sponsored by :
|