.\"	$OpenBSD: ifmedia.4,v 1.13 2005/03/02 11:54:46 jmc Exp $
.\"	$NetBSD: ifmedia.4,v 1.14 2001/06/30 17:57:56 bjh21 Exp $
.\"
.\" Copyright (c) 1998 The NetBSD Foundation, Inc.
.\" All rights reserved.
.\"
.\" This code is derived from software contributed to The NetBSD Foundation
.\" by Jason R. Thorpe of the Numerical Aerospace Simulation Facility,
.\" NASA Ames Research Center.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"        This product includes software developed by the NetBSD
.\"        Foundation, Inc. and its contributors.
.\" 4. Neither the name of The NetBSD Foundation nor the names of its
.\"    contributors may be used to endorse or promote products derived
.\"    from this software without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
.Dd July 19, 2000
.Dt IFMEDIA 4
.Os
.Sh NAME
.Nm ifmedia
.Nd network interface media settings
.Sh SYNOPSIS
.Fd #include <sys/socket.h>
.Fd #include <net/if.h>
.Fd #include <net/if_media.h>
.Sh DESCRIPTION
The
.Nm
interface provides a consistent method for querying and setting
network interface media and media options.
The media is typically set using the
.Xr ifconfig 8
command.
.Pp
There are currently four link types supported by
.Nm ifmedia :
.Pp
.Bl -tag -offset indent -width IFM_IEEE80211 -compact
.It Dv IFM_ETHER
Ethernet
.It Dv IFM_TOKEN
Token Ring
.It Dv IFM_FDDI
FDDI
.It Dv IFM_IEEE80211
IEEE802.11 Wireless LAN
.El
.Pp
The following sections describe the possible media settings for each
link type.
Not all of these are supported by every device; refer to
your device's manual page for more information.
.Pp
The lists below provide the possible names of each media type or option.
The first name in the list is the canonical name of the media type or
option.
Additional names are acceptable aliases for the media type or option.
.Sh COMMON MEDIA TYPES AND OPTIONS
The following media types are shared by all link types:
.Pp
.Bl -tag -offset indent -width IFM_MANUAL -compact
.It Dv IFM_AUTO
Autoselect the best media.
[autoselect, auto]
.It Dv IFM_MANUAL
Jumper or switch on device selects media.
[manual]
.It Dv IFM_NONE
Deselect all media.
[none]
.El
.Pp
The following media options are shared by all link types:
.Bl -tag -offset indent -width IFM_FLAG0
.It Dv IFM_FDX
Place the device into full-duplex mode.
This option only has meaning if the device is normally not full-duplex.
.It Dv IFM_HDX
Place the device into half-duplex mode.
This option only has meaning if the device is normally not half-duplex.
[half-duplex, hdx]
.It Dv IFM_FLAG0
Driver-defined flag.
[flag0]
.It Dv IFM_FLAG1
Driver-defined flag.
[flag1]
.It Dv IFM_FLAG2
Driver-defined flag.
[flag2]
.It Dv IFM_LOOP
Place the device into hardware loopback mode.
[loopback, hw-loopback, loop]
.El
.Sh MEDIA TYPES AND OPTIONS FOR ETHERNET
The following media types are defined for Ethernet:
.Bl -tag -offset indent -width IFM_1000_FX
.It Dv IFM_10_T
10BASE-T, 10Mb/s over unshielded twisted pair, RJ45 connector.
[10baseT, UTP, 10UTP]
.It Dv IFM_10_2
10BASE2, 10Mb/s over coaxial cable, BNC connector; also called Thinnet.
[10base2, BNC, 10BNC]
.It Dv IFM_10_5
10BASE5, 10Mb/s over 15-wire cables, DB15 connector; also called AUI.
[10base5, AUI, 10AUI]
.It Dv IFM_10_STP
10BASE-STP, 10Mb/s over shielded twisted pair, DB9 connector.
[10baseSTP, STP, 10STP]
.It Dv IFM_10_FL
10BASE-FL, 10Mb/s over fiber optic cables.
[10baseFL, FL, 10FL]
.It Dv IFM_100_TX
100BASE-TX, 100Mb/s over unshielded twisted pair, RJ45 connector.
[100baseTX, 100TX]
.It Dv IFM_100_FX
100BASE-FX, 100Mb/s over fiber optic cables.
[100baseFX, 100FX]
.It Dv IFM_100_T4
100BASE-T4, 100Mb/s over 4-wire (category 3) unshielded twisted pair, RJ45
connector.
[100baseT4, 100T4]
.It Dv IFM_100_T2
100BASE-T2.
[100baseT2, 100T2]
.It Dv IFM_100_VG
100VG-AnyLAN.
[100baseVG, 100VG]
.It Dv IFM_1000_SX
1000BASE-SX, 1Gb/s over multi-mode fiber optic cables.
[1000baseSX, 1000SX]
.It Dv IFM_1000_LX
1000BASE-LX, 1Gb/s over single-mode fiber optic cables.
[1000baseLX, 1000LX]
.It Dv IFM_1000_CX
1000BASE-CX, 1Gb/s over shielded twisted pair.
[1000baseCX, 1000CX]
.It Dv IFM_1000_T
1000BASE-T, 1Gb/s over category 5 unshielded twisted pair, RJ45 connector.
[1000baseT, 1000T]
.El
.Pp
The following media option is defined for Ethernet:
.Bl -tag -offset indent -width IFM_ETH_MASTER
.It Dv IFM_ETH_MASTER
Configure a 1000BASE-T PHY as a MASTER PHY.
.El
.Sh MEDIA TYPES AND OPTIONS FOR TOKEN RING
The following media types are defined for Token Ring:
.Bl -tag -offset indent -width IFM_TOK_UTP16
.It Dv IFM_TOK_STP4
4Mb/s, shielded twisted pair, DB9 connector.
[DB9/4Mbit, 4STP]
.It Dv IFM_TOK_STP16
16Mb/s, shielded twisted pair, DB9 connector.
[DB9/16Mbit, 16STP]
.It Dv IFM_TOK_UTP4
4Mb/s, unshielded twisted pair, RJ45 connector.
[UTP/4Mbit, 4UTP]
.It Dv IFM_TOK_UTP16
16Mb/s, unshielded twisted pair, RJ45 connector.
[UTP/16Mbit, 16UTP]
.El
.Pp
The following media options are defined for Token Ring:
.Bl -tag -offset indent -width IFM_TOK_SRCRT
.It Dv IFM_TOK_ETR
Early token release.
[EarlyTokenRelease, ETR]
.It Dv IFM_TOK_SRCRT
Enable source routing features.
[SourceRouting, SRCRT]
.It Dv IFM_TOK_ALLR
All routes vs. single route broadcast.
[AllRoutes, ALLR]
.El
.Sh MEDIA TYPES AND OPTIONS FOR FDDI
The following media types are defined for FDDI:
.Pp
.Bl -tag -offset indent -width IFM_FDDI_SMF -compact
.It Dv IFM_FDDI_SMF
Single-mode fiber.
[Single-mode, SMF]
.It Dv IFM_FDDI_MMF
Multi-mode fiber.
[Multi-mode, MMF]
.It Dv IFM_FDDI_UTP
Unshielded twisted pair, RJ45 connector.
[UTP, CDDI]
.El
.Pp
The following media options are defined for FDDI:
.Bl -tag -offset indent -width IFM_FDDI_DA
.It Dv IFM_FDDI_DA
Dual-attached station vs. Single-attached station.
[dual-attach, das]
.El
.Sh MEDIA TYPES AND OPTIONS FOR IEEE802.11 WIRELESS LAN
The following media types are defined for IEEE802.11 Wireless LAN:
.Pp
.Bl -tag -offset indent -width IFM_IEEE80211_OFDM22 -compact
.It Dv IFM_IEEE80211_FH1
Frequency Hopping 1Mbps.
[FH1]
.It Dv IFM_IEEE80211_FH2
Frequency Hopping 2Mbps.
[FH2]
.It Dv IFM_IEEE80211_DS1
Direct Sequence 1Mbps.
[DS1]
.It Dv IFM_IEEE80211_DS2
Direct Sequence 2Mbps.
[DS2]
.It Dv IFM_IEEE80211_DS5
Direct Sequence 5.5Mbps.
[DS5]
.It Dv IFM_IEEE80211_DS11
Direct Sequence 11Mbps.
[DS11]
.It Dv IFM_IEEE80211_DS22
Direct Sequence 22Mbps.
[DS22]
.It Dv IFM_IEEE80211_OFDM6
Orthogonal Frequency Division Multiplexing (OFDM) 6Mbps.
[OFDM6]
.It Dv IFM_IEEE80211_OFDM9
OFDM 9Mbps.
[OFDM9]
.It Dv IFM_IEEE80211_OFDM12
OFDM 12Mbps.
[OFDM12]
.It Dv IFM_IEEE80211_OFDM18
OFDM 18Mbps.
[OFDM18]
.It Dv IFM_IEEE80211_OFDM24
OFDM 24Mbps.
[OFDM24]
.It Dv IFM_IEEE80211_OFDM36
OFDM 36Mbps.
[OFDM36]
.It Dv IFM_IEEE80211_OFDM48
OFDM 48Mbps.
[OFDM48]
.It Dv IFM_IEEE80211_OFDM54
OFDM 54Mbps.
[OFDM54]
.It Dv IFM_IEEE80211_OFDM72
OFDM 72Mbps.
[OFDM72]
.El
.Pp
The following media options are defined for IEEE802.11 Wireless LAN:
.Pp
.Bl -tag -offset indent -width IFM_IEEE80211_IBSSMASTER -compact
.It Dv IFM_IEEE80211_ADHOC
Ad-hoc mode.
[adhoc]
.It Dv IFM_IEEE80211_HOSTAP
Host Access Point mode.
[hostap]
.It Dv IFM_IEEE80211_IBSS
IBSS mode.
[ibss]
.It Dv IFM_IEEE80211_IBSSMASTER
IBSS master mode.
[ibssmaster]
.It Dv IFM_IEEE80211_MONITOR
Monitor mode.
[monitor]
.It Dv IFM_IEEE80211_TURBO
Turbo mode.
[turbo]
.El
.Sh SEE ALSO
.Xr netintro 4 ,
.Xr ifconfig 8
.Sh HISTORY
The
.Nm
interface first appeared in
.Bsx 3.0 .
The implementation that appeared in
.Nx 1.3
was written by Jonathan Stone and Jason R. Thorpe to be compatible with
the BSDI API.
It has since gone through several revisions which have extended the
API while maintaining backwards compatibility with the original API.
.Pp
Support for the
.Sy IEEE802.11 Wireless LAN
link type was added in
.Nx 1.5 .
.Pp
.Sy Host AP
mode was added in
.Ox 3.1 .