Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
WLAN(4)			 BSD Kernel Interfaces Manual		       WLAN(4)

     wlan -- generic 802.11 link-layer support

     device wlan

     The wlan module provides generic code to support 802.11 drivers.  Where a
     device does not directly support 802.11 functionality this	layer fills
     in.  The wlan module is required by all native 802.11 drivers as well as
     the ndis(4) support.

     wlan supports multi-mode devices capable of operating in both 2.4GHz and
     5GHz bands	and supports numerous 802.11 standards:	802.11a, 802.11b,
     802.11g, 802.11n, and 802.11s (Draft 3.0).	 The WPA, 802.11i, and 802.1x
     security protocols	are supported through a	combination of in-kernel code
     and user-mode applications.  The WME/WMM multi-media protocols are	sup-
     ported entirely within the	wlan module but	require	a suitably capable
     hardware device.  Likewise	the 802.11h specification is supported only by
     suitably capable devices.

     Drivers provide 802.11 functionality through wlan interfaces that are
     created at	runtime	using interface	cloning.  This is done with the
     ifconfig(8) create	command	or using the wlans_IFX variable	in rc.conf(5).
     Some drivers support the creation of multiple wlan	interfaces that	share
     the same underlying device; this is the way by which ``multi-bss sup-
     port'' is provided	but it can also	be used	to create WDS links and	other
     interesting applications.

     There are several types of	wlan interfaces	that may be created:

     sta      A	client station in an infrastructure bss	(i.e. one that asso-
	      ciates to	an access point).

     hostap   An access	point in an infrastructure bss.

     mesh     A	mesh station in	an MBSS	network.

     adhoc    A	station	in an IBSS network.

     ahdemo   A	station	operating in ``adhoc demo mode''.  This	is essentially
	      an IBSS station that does	not use	management frames (e.g.	no
	      beacons are transmitted).	 An ahdemo interface is	especially
	      useful for applications that want	to transmit and	receive	raw
	      802.11 packets.

     monitor  An interface used	exclusively for	capturing 802.11 frames.  In
	      particular this specified	to have	read-only properties which en-
	      ables it to be operated on frequencies where one would otherwise
	      not be allowed.

     wds      A	station	that passes 4-address 802.11 traffic for the purpose
	      of tunneling traffic over	a wireless link.  Typically this sta-
	      tion would share the same	MAC address as a hostap	interface.  It
	      may be possible to create	wds interfaces without a companion
	      hostap interface but that	is not guaranteed; one may need	to
	      create a hostap interface	that does not send beacon frames be-
	      fore wds interfaces may be created.

     Note that an interface's type cannot be changed once it is	created.

     wlan defines several mechanisms by	which plugin modules may be used to
     extend its	functionality.	Cryptographic support such as WEP, TKIP, and
     AES-CCMP are implemented as standalone modules (if	not statically config-
     ured into a system) that register with wlan.  Similarly there is an au-
     thenticator framework for defining	802.11 authentication services and a
     framework for integrating access control mechanisms specific to the
     802.11 protocol.

     If	the IEEE80211_DEBUG option is included in the kernel configuration,
     debugging controls	are available using:

	   sysctl net.wlan.X.debug=mask

     where X is	the number of the wlan instance	and mask is a bit-or of	con-
     trol bits that determine which debugging messages to enable.  For exam-

	   sysctl net.wlan.0.debug=0x00200000

     enables debugging messages	related	to scanning for	an access point, adhoc
     neighbor, or an unoccupied	channel	when operation as an access point.
     The wlandebug(8) tool provides a more user-friendly mechanism for doing
     the same thing.  Note that

	   sysctl net.wlan.debug=mask

     defines the initial value of the debugging	flags for each cloned wlan in-
     terface; this is useful to	enable debug messages during interface cre-

     The module	name of	wlan was used to be compatible with NetBSD.

     Mesh stations follow the 802.11s Draft 3.0	specification which is not
     ratified and subject to change.  Beware that this specification is	incom-
     patible with earlier drafts; and stations implementing earlier drafts
     (e.g. Linux) may not interoperate.

     an(4), ath(4), bwi(4), ipw(4), iwi(4), iwn(4), malo(4), netintro(4),
     ral(4), rum(4), uath(4), upgt(4), ural(4),	urtw(4), wi(4),	wlan_acl(4),
     wlan_ccmp(4), wlan_tkip(4), wlan_wep(4), wlan_xauth(4), wpi(4), zyd(4)

     More information can be found in the IEEE 802.11 Standards.

     The wlan driver first appeared in FreeBSD 5.0.

     Atsushi Onoe is the author	of original NetBSD software from which this
     work began.  Sam Leffler brought the code into FreeBSD and	then rewrote
     it	to support multi-mode devices, 802.11g,	802.11n, WPA/802.11i, WME,
     multi-bss,	and add	the extensible frameworks for cryptographic, authenti-
     cation, and access	control	plugins.  This manual page was written by Tom
     Rhodes <>.

BSD				 July 8, 2009				   BSD


Want to link to this manual page? Use this URL:

home | help