WICONTROL(8) BSD System Manager's Manual WICONTROL(8)
wicontrol -- configure Lucent, Intersil, and Atheros wireless devices
wicontrol [-i] iface [-o]
wicontrol [-i] iface -l (dump associated stations)
wicontrol [-i] iface -L (list available access points)
wicontrol [-i] iface -t tx_rate
wicontrol [-i] iface -n network_name
wicontrol [-i] iface -s station_name
wicontrol [-i] iface -c 0 | 1
wicontrol [-i] iface -q SSID
wicontrol [-i] iface -p port_type
wicontrol [-i] iface -a access_point_density
wicontrol [-i] iface -m mac_address
wicontrol [-i] iface -d max_data_length
wicontrol [-i] iface -e 0 | 1
wicontrol [-i] iface -k key [-v 1 | 2 | 3 | 4]
wicontrol [-i] iface -T 1 | 2 | 3 | 4
wicontrol [-i] iface -r RTS_threshold
wicontrol [-i] iface -f frequency
wicontrol [-i] iface -P 0 | 1
wicontrol [-i] iface -S max_sleep_duration
wicontrol [-i] iface -Z (zero signal cache)
wicontrol [-i] iface -C (display signal cache)
The wicontrol utility controls the operation of Lucent, Intersil, and
Atheros-based wireless networking devices via wi(4) or ath(4) driver.
You should not use this program to configure IEEE 802.11 parameters. Use
ifconfig(8) instead to do those tasks (i.e., set SSID, WEP key, etc.).
The wicontrol utility can also be used to view the current settings of
these parameters, dump out the values of the card's statistics counters,
list associated stations (in HostAP mode), and scan for available access
The iface argument given to wicontrol should be the logical interface
name associated with the Lucent, Intersil, and Atheros device (wi0, wi1,
ath0, etc.). If none is specified then ``wi0'' is used as default.
The options are as follows:
[-i] iface [-o]
Display the current settings of the specified wireless interface.
This retrieves the current card settings from the driver and
prints them out. Using the additional -o flag will cause
wicontrol to print out the statistics counters instead of the
card settings. Encryption keys are only displayed if wicontrol
is run as root.
[-i] iface -a access_point_density
Specify the access point density for a given interface. Legal
values are 1 (low), 2 (medium) and 3 (high). This setting influ-
ences some of the radio modem threshold settings.
[-i] iface -m mac_address
Set the station address for the specified interface. The
mac_address is specified as a series of six hexadecimal values
separated by colons, e.g., ``00:60:1d:12:34:56''. This programs
the new address into the card and updates the interface as well.
[-i] iface -d max_data_length
Set the maximum receive and transmit frame size for a specified
interface. The max_data_length can be any number from 350 to
2304. The default is 2304.
[-i] iface -r RTS_threshold
Set the RTS/CTS threshold for a given interface. This controls
the number of bytes used for the RTS/CTS handshake boundary. The
RTS_threshold can be any value between 0 and 2347. The default
[-i] iface -Z
Clear the signal strength cache maintained internally by the
[-i] iface -C
Display the cached signal strength information maintained by the
wi(4) driver. The driver retains information about signal
strength and noise level for packets received from different
hosts. The signal strength and noise level values are displayed
in units of dBms. The signal quality value is produced by sub-
tracting the noise level from the signal strength (i.e., less
noise and better signal yields better signal quality).
DEPRECATED AND OBSOLETE OPTIONS
The wicontrol utility has a number of options that are now deprecated or
obsolete, as they have been overtaken by extensions to ifconfig(8) and
changes to the driver. The deprecated and obsolete options are as fol-
[-i] iface -t tx_rate
This flag is deprecated. Use ifconfig(8) mediaopt instead.
Set the transmit rate of the specified interface. The legal val-
ues for the transmit rate vary depending on whether the interface
is a standard WaveLAN/IEEE or a WaveLAN/IEEE Turbo adapter. The
standard NICs support a maximum transmit rate of 2Mbps while the
turbo NICs support a maximum speed of 6Mbps. The following table
shows the legal transmit rate settings and the corresponding
TX rate NIC speed
1 Fixed Low (1Mbps)
2 Fixed Standard (2Mbps)
3 Auto Rate Select (High)
4 Fixed Medium (4Mbps)
5 Fixed High (6Mbps)
6 Auto Rate Select (Standard)
7 Auto Rate Select (Medium)
The default driver setting is 3 (auto rate select). The numbers
vary from card to card.
[-i] iface -n network_name
This flag is deprecated. Use ifconfig(8) ssid or nwid instead.
Set the name of the service set (IBSS) that this station wishes
to join. The network_name can be any text string up to 30 char-
acters in length. The default name is the string ``ANY'' which
should allow the station to connect to the first available access
point. The interface should be set for BSS mode using the -p
flag in order for this to work.
Note: the WaveLAN manual indicates that an empty string will
allow the host to connect to any access point, however I have
also seen a reference in another driver which indicates that the
``ANY'' string works as well.
[-i] iface -s station_name
This flag is deprecated. Use ifconfig(8) stationname or station
Sets the station name for the specified interface. The
station_name is used for diagnostic purposes. The Lucent
WaveMANAGER software can poll the names of remote hosts.
[-i] iface -c 0 | 1
This flag is deprecated. IBSS networks are automatically created
on those cards whose firmware supports it while in IBSS mode.
Allow the station to create a service set (IBSS). Permitted val-
ues are 0 (don't create IBSS) and 1 (enable creation of IBSS).
The default is 0.
Only newer versions of the Lucent firmware support this.
[-i] iface -q SSID
This flag is deprecated. The ssid setting from ifconfig(8) is
the current preferred way of setting this parameter.
Specify the name of an IBSS (SSID) to create on a given inter-
face. The SSID can be any text string up to 30 characters long.
Note: this option is provided for experimental purposes only:
enabling the creation of an IBSS on a host system doesn't appear
to actually work.
[-i] iface -p port_type
This flag is deprecated. It should never be used. Do not use
this flag. Its meaning depends on the type of card you are
using, as well as the firmware you have installed in the card in
some cases. Beware. Danger. Do not use. Instead, use the
ifconfig(8) media and mediaopt commands.
Set the port type for a specified interface. The legal values
for port_type are 1 (BSS mode) and 3 (ad-hoc) mode. In ad-hoc
mode, the station can communicate directly with any other sta-
tions within direct radio range (provided that they are also
operating in ad-hoc mode). In BSS mode, hosts must associate
with a service set controlled by an access point, which relays
traffic between end stations. The default setting is 1 (BSS
mode). Lucent cards have one set of meanings. Prism cards have
another. Symbol cards have a third. Do not use this flag.
[-i] iface -e 0 | 1
This flag is deprecated. It has been replaced by the ifconfig(8)
Enable or disable WEP encryption. Permitted values are 0
(encryption disabled) or 1 (encryption enabled). Encryption is
off by default.
Both 128-bit and 64-bit WEP have been broken. See the BUGS sec-
tion for details.
[-i] iface -k key [-v 1 | 2 | 3 | 4]
This flag is obsolete. The ifconfig(8) wepkey should be used
Set WEP encryption keys. There are four default encryption keys
that can be programmed. A specific key can be set using the -v
flag. If the -v flag is not specified, the first key will be
set. Encryption keys can either be normal text (i.e., ``hello'')
or a series of hexadecimal digits (i.e., ``0x1234512345''). For
WaveLAN Turbo Silver cards, the key is restricted to 40 bits,
hence the key can be either a 5 character text string or 10 hex
digits. For WaveLAN Turbo Gold cards, the key can also be 104
bits, which means the key can be specified as either a 13 charac-
ter text string or 26 hex digits in addition to the formats sup-
ported by the Silver cards.
For maximum portability, hex keys are recommended; the mapping of
text keys to WEP encryption is usually driver-specific. In par-
ticular, the Windows drivers do this mapping differently to
Note: Both 128-bit and 64-bit WEP encryption have been broken.
See the BUGS section for details.
[-i] iface -T 1 | 2 | 3 | 4
This flag is obsolete. The ifconfig(8) weptxkey should be used
Specify which of the four WEP encryption keys will be used to
encrypt transmitted packets.
Note: Both 128-bit and 64-bit WEP have been broken. See the BUGS
section for details.
[-i] iface -f frequency
This flag is deprecated. Use ifconfig(8) channel instead.
Set the radio frequency of a given interface. The frequency
should be specified as a channel ID as shown in the table below.
The list of available frequencies is dependent on radio regula-
tions specified by regional authorities. Recognized regulatory
authorities include the FCC (United States), ETSI (Europe),
France and Japan. Frequencies in the table are specified in MHz.
Channel ID FCC ETSI France Japan
1 2412 2412 - 2412
2 2417 2417 - 2417
3 2422 2422 - 2422
4 2427 2427 - 2427
5 2432 2432 - 2432
6 2437 2437 - 2437
7 2442 2442 - 2442
8 2447 2447 - 2447
9 2452 2452 - 2452
10 2457 2457 2457 2457
11 2462 2462 2462 2462
12 - 2467 2467 2467
13 - 2472 2472 2472
14 - - - 2484
If an illegal channel is specified, the NIC will revert to its
default channel. For NICs sold in the United States and Europe,
the default channel is 3. For NICs sold in France, the default
channel is 11. For NICs sold in Japan, the default channel is
14, and it is the only available channel for pre-11Mbps NICs.
Note that two stations must be set to the same channel in order
[-i] iface -P 0 | 1
This flag is obsolete. The ifconfig(8) powersave should be used
Enable or disable power management on a given interface.
Enabling power management uses an alternating sleep/wake protocol
to help conserve power on mobile stations, at the cost of some
increased receive latency. Power management is off by default.
Note that power management requires the cooperation of an access
point in order to function; it is not functional in ad-hoc mode.
Also, power management is only implemented in Lucent WavePOINT
firmware version 2.03 or later, and in WaveLAN PCMCIA adapter
firmware 2.00 or later. Older revisions will silently ignore the
power management setting. Legal values for this parameter are 0
(off) and 1 (on).
[-i] iface -S max_sleep_interval
This flag is obsolete. The ifconfig(8) powersleep should be used
Specify the sleep interval to use when power management is
enabled. The max_sleep_interval is specified in milliseconds.
The default is 100.
ath(4), awi(4), ipsec(4), wi(4), ifconfig(8)
There are deprecated flags here that duplicate functionality of
ifconfig(8). These flags were deprecated in FreeBSD 5.1 and will be
removed in a future release.
The WEP encryption method has been broken so that third parties can
recover the keys in use relatively quickly at distances that are surpris-
ing to most people. Do not rely on WEP for anything but the most basic,
remedial security. IPSEC will give you a higher level of security and
should be used whenever possible. Do not trust access points or wireless
machines that connect through them as they can provide no assurance that
the traffic is legitimate. MAC addresses can easily be forged and should
therefore not be used as the only access control.
The attack on WEP is a passive attack, requiring only the ability to
sniff packets on the network. The passive attack can be launched at a
distance larger, up to many miles, than one might otherwise expect given
a specialized antenna used in point to point applications. The attacker
can recover the keys from a 128-bit WEP network with only 5,000,000 to
6,000,000 packets. While this may sound like a large number of packets,
empirical evidence suggests that this amount of traffic is generated in a
few hours on a partially loaded network. Once a key has been compro-
mised, the only remedial action is to discontinue it and use a new key.
See http://www.cs.rice.edu/~astubble/wep/wep_attack.html for details of
the attack. Many programs to assist in cracking WEP keys are widely
If you must use WEP, you are strongly encouraged to pick keys whose bytes
are random and not confined to ASCII characters. Brute force attacks on
WEP keys are also possible. Experience has showns that ASCII keys can be
cracked in less than a day. Even random bytes can be cracked in less
than two weeks.
Signal cache is broken right now.
The wicontrol utility first appeared in FreeBSD 3.0.
The wicontrol utility was written by Bill Paul <wpaulATctr.edu>.
BSD March 4, 2003 BSD