IFCONFIG(8) BSD System Manager's Manual IFCONFIG(8)
NAME
ifconfig - configure network interface parameters
SYNOPSIS
ifconfig interface [address_family] [address [dest_address]] [parameters]
ifconfig -A | -Am | -a | -am [address_family]
ifconfig -C
ifconfig -l
ifconfig -m interface [address_family]
ifconfig interface create
ifconfig interface destroy
ifconfig carp-interface vhid host-id
ifconfig pfsync-interface syncif iface
ifconfig pppoe-interface [pppoedev parent-interface] [pppoesvc service]
[pppoeac access-concentrator]
ifconfig tunnel-interface tunnel src_address dest_address
ifconfig tunnel-interface deletetunnel
ifconfig vlan-interface vlan vlan-tag vlandev parent-interface
DESCRIPTION
The ifconfig utility is used to assign an address to a network interface
and/or configure network interface parameters. ifconfig must be used at
boot-time to define the network address of each interface present on a
machine; it may also be used at a later time to redefine an interface's
address or other operating parameters. To configure a bridge interface,
use the brconfig(8) program instead.
ifconfig displays the current configuration for a network interface when
no optional parameters are supplied. If a protocol family is specified,
ifconfig will report only the details specific to that protocol family.
Only the superuser may modify the configuration of a network interface.
The options are as follows:
-A Causes full interface alias information for each interface to be
displayed.
-Am The same as the -A option, but additionally prints interface
media information for all interfaces.
-a Causes ifconfig to print information on all interfaces. The pro-
tocol family may be specified as well.
-am The same as the -a option, but additionally prints interface
media information for all interfaces.
-C Print the names of all network pseudo-devices that can be created
dynamically at runtime using ifconfig create.
-l Print the names of all network interfaces, except some virtual
interfaces like pflog, pfsync, enc, irip, separated by spaces.
-m interface
Print media information for a given interface.
address
For the DARPA Internet family, the address is either a host name
present in the host name database, hosts(5), or a DARPA Internet
address expressed in the Internet standard "dot notation".
Internet version 6 addresses are either a host name present in
the host name database, hosts(5), or an Internet version 6 ad-
dress in standard colon separated form, as described in the
inet(3) manual page.
For the Xerox Network Systems(tm) and Internetwork Packet Ex-
change families, addresses are of the form "net:a.b.c.d.e.f",
where "net" is the assigned network number (in decimal), and each
of the six bytes of the host number, "a" through "f", are speci-
fied in hexadecimal. The host number may be omitted on Ethernet
interfaces, which use the hardware physical address, and on in-
terfaces other than the first. AppleTalk (LLAP) addresses are
specified as "nn.na" ("Network Number.Node Address"). Node ad-
dresses are divided into two classes: User Node IDs and Server
Node IDs. 1-127($01-$7F) are for User Node IDs while 128-
254($80-$FE) are used for Server Node IDs. Node 0($00) is not al-
lowed (unknown) while Node 255($FF) is reserved for the AppleTalk
broadcast hardware address (broadcast ID).
IPX addresses are specified as listed in the ipx(3) manual page.
address_family
Specifies the address family which affects interpretation of the
remaining parameters. Since an interface can receive transmis-
sions in differing protocols with different naming schemes,
specifying the address family is recommended. The address or pro-
tocol families currently supported are "inet", "inet6", "atalk"
and "ipx".
interface
The interface parameter is a string of the form "name unit", for
example, "en0". If no optional parameters are supplied, this
string can instead be just "name". In this case, all interfaces
of that type will be displayed. For example, "carp" will display
the current configuration of all carp(4) interfaces.
The following parameters may be set with ifconfig:
802.2 802.2tr 802.3 snap EtherII
Set the ipx(3) frame type to be either 802.2, 802.2tr,
802.3, snap, or Ethernet II.
advbase n If the driver is a carp(4) pseudo-device, set the base
advertisement interval to n seconds. This is an 8-bit
number; the default value is 1 second.
advskew n If the driver is a carp(4) pseudo-device, skew the adver-
tisement interval by n. This is an 8-bit number; the de-
fault value is 0.
Taken together the advbase and advskew indicate how fre-
quently, in seconds, the host will advertise the fact
that it considers itself master of the virtual host. The
formula is advbase + (advskew / 255 ). If the master does
not advertise within three times this interval, this host
will begin advertising as master.
alias Establish an additional network address for this inter-
face. This is sometimes useful when changing network
numbers, and one wishes to accept packets addressed to
the old interface.
-alias Remove the specified network address alias.
anycast (inet6 only) Set the IPv6 anycast address bit.
-anycast (inet6 only) Clear the IPv6 anycast address bit.
arp Enable the use of the Address Resolution Protocol
(``ARP''; see arp(4)) in mapping between network level
addresses and link level addresses (default). This is
currently implemented for mapping between DARPA Internet
addresses and Ethernet addresses.
-arp Disable the use of ARP.
broadcast addr (inet only) Specify the address to use to represent
broadcasts to the network. The default broadcast address
is the address with a host part of all 1's.
create Create the specified network pseudo-device. At least the
following devices can be created on demand:
bridge(4), carp(4), gif(4), gre(4), lo(4), ppp(4),
pppoe(4), sl(4), tun(4), vlan(4)
debug Enable driver-dependent debugging code; usually, this
turns on extra console error logging.
-debug Disable driver-dependent debugging code.
delete Remove the network address specified. This would be used
if you incorrectly specified an alias, or it was no
longer needed.
deletetunnel Removes the source and destination tunnel addresses, con-
figured onto a tunnel interface.
dest_address Specify the address of the correspondent on the other end
of a point-to-point link.
destroy Destroy the specified network pseudo-device.
down Mark an interface "down". When an interface is marked
"down", the system will not attempt to transmit messages
through that interface. If possible, the interface will
be reset to disable reception as well. This action au-
tomatically disables routes using the interface.
eui64 (inet6 only) Fill the interface index (the lowermost 64th
bit of an IPv6 address) automatically.
instance minst Set the media instance to minst. This is useful for dev-
ices which have multiple physical layer interfaces
(PHYs). Setting the instance on such devices may not be
strictly required by the network interface driver as the
driver may take care of this automatically; see the
driver's manual page for more information.
link[0-2] Enable special processing of the link level of the inter-
face. These three options are interface specific in actu-
al effect; however, they are in general used to select
special modes of operation. An example of this is to en-
able SLIP compression, or to select the connector type
for some Ethernet cards. Refer to the man page for the
specific driver for more information.
-link[0-2] Disable special processing at the link level with the
specified interface.
maxupd n If the driver is a pfsync(4) pseudo-device, indicate the
maximum number of updates for a single state which can be
collapsed into one. This is an 8-bit number; the default
value is 128.
media type Set the media type of the interface to type. Some inter-
faces support the mutually exclusive use of one of
several different physical media connectors. For example,
a 10Mb/s Ethernet interface might support the use of ei-
ther AUI or twisted pair connectors. Setting the media
type to "10base5" or "AUI" would change the currently ac-
tive connector to the AUI port. Setting it to "10baseT"
or "UTP" would activate twisted pair. Refer to the
interface's driver-specific man page for a complete list
of the available types, or use
$ ifconfig -m interface
for a listing of choices.
mediaopt opts Set the specified media options on the interface. opts is
a comma delimited list of options to apply to the inter-
face. Refer to the interface's driver-specific man page
for a complete list of available options, or use
$ ifconfig -m interface
for a listing of choices.
-mediaopt opts Disable the specified media options on the interface.
metric nhops Set the routing metric of the interface to nhops, default
0. The routing metric is used by the routing protocol
(see routed(8)). Higher metrics have the effect of making
a route less favorable; metrics are counted as addition
hops to the destination network or host.
mtu value Set the MTU for this device to the given value. Cloned
routes will inherit this value as a default. Currently,
not all devices support setting the MTU.
netmask mask (inet, inet6) Specify how much of the address to reserve
for subdividing networks into subnetworks. The mask in-
cludes the network part of the local address and the sub-
net part, which is taken from the host field of the ad-
dress. The mask can be specified as a single hexadecimal
number with a leading 0x, with a dot-notation Internet
address, or with a pseudo-network name listed in the net-
work table networks(5). The mask contains 1's for the bit
positions in the 32-bit address which are to be used for
the network and subnet parts, and 0's for the host part.
The mask should contain at least the standard network
portion, and the subnet field should be contiguous with
the network portion.
nwkey key (IEEE 802.11 devices only) Enable WEP encryption for IEEE
802.11-based wireless network interfaces using the speci-
fied key. The key can either be a string, a series of
hexadecimal digits (preceded by '0x'), or a set of keys
of the form "n:k1,k2,k3,k4" where 'n' specifies which of
the keys will be used for transmitted packets, and the
four keys, "k1" through "k4", are configured as WEP keys.
If a set of keys is specified, a comma (',') within the
key must be escaped with a backslash. Note that if multi-
ple keys are used, their order must be the same within
the network. For IEEE 802.11 wireless networks, the
length of each key is restricted to 40 bits, i.e. a 5-
character string or 10 hexadecimal digits. WaveLAN/IEEE
Gold and newer Prism cards will also accept a 104-bit
(13-character) key.
-nwkey (IEEE 802.11 devices only) Disable WEP encryption for
IEEE 802.11-based wireless network interfaces.
nwkey persist (IEEE 802.11 devices only) Enable WEP encryption for IEEE
802.11-based wireless network interfaces with the per-
sistent key stored in the network card.
nwkey persist:key
(IEEE 802.11 devices only) Write key to the persistent
memory of the network card, and enable WEP encryption for
IEEE 802.11-based wireless network interfaces using that
key.
pass passphrase
If the driver is a carp(4) pseudo-device, set the authen-
tication key to passphrase. There is no passphrase by de-
fault.
phase n The argument n specifies the version (phase) of the Ap-
pleTalk network attached to the interface. Values of 1 or
2 are permitted.
pltime n (inet6 only) Set preferred lifetime for the address.
powersave (IEEE 802.11 devices only) Enable 802.11 power saving
mode.
-powersave (IEEE 802.11 devices only) Disable 802.11 power saving
mode.
powersavesleep duration
(IEEE 802.11 devices only) Set the receiver sleep dura-
tion (in milliseconds) for 802.11 power saving mode.
pppoeac access-concentrator
Set the name of the access-concentrator for the pppoe(4)
interface.
-pppoeac Clear a previously set access-concentrator name.
pppoedev parent-interface
Set the name of the interface through which pppoe(4)
packets will be transmitted and received.
pppoesvc service
Set the service name of the pppoe(4) interface.
-pppoesvc Clear a previously set service name.
prefixlen n (inet and inet6 only) Effect is similar to netmask, but
you can specify prefix length by digits.
range netrange Under AppleTalk, set the interface to respond to a
netrange of the form "startnet-endnet". AppleTalk uses
this scheme instead of netmasks though OpenBSD implements
it internally as a set of netmasks.
state state Explicitly force the carp(4) pseudo-device to enter this
state. Valid states are init, backup, and master.
syncif iface If the driver is a pfsync(4) pseudo-device, use the
specified interface to send and receive pfsync state syn-
chronisation messages.
-syncif If the driver is a pfsync(4) pseudo-device, stop sending
pfsync state synchronisation messages over the network.
tentative (inet6 only) Set the IPv6 tentative address bit.
-tentative (inet6 only) Clear the IPv6 tentative address bit.
trailers Request the use of a "trailer" link level encapsulation
when sending (default). If a network interface supports
trailers, the system will, when possible, encapsulate
outgoing messages in a manner which minimizes the number
of memory to memory copy operations performed by the re-
ceiver. On networks that support ARP (currently, only
Ethernet), this flag indicates that the system should re-
quest that other systems use trailers when sending to
this host. Similarly, trailer encapsulations will be sent
to other hosts that have made such requests. Currently
used by Internet protocols only.
-trailers Disable the use of a "trailer" link level encapsulation.
tunnel src_address dest_address
Set the source and destination tunnel addresses on a tun-
nel interface, including gif(4). Packets routed to this
interface will be encapsulated in IPv4 or IPv6, depending
on the source and destination address families. Both ad-
dresses must be of the same family.
up Mark an interface "up". This may be used to enable an in-
terface after an ifconfig down. It happens automatically
when setting the first address on an interface. If the
interface was reset when previously marked down, the
hardware will be re-initialized.
vhid n If the driver is a carp(4) pseudo-device, set the virtual
host ID to n. Acceptable values are 1 to 255.
vlan vlan_tag If the interface is a vlan(4) pseudo-interface, set the
vlan tag value to vlan_tag. This value is a 12-bit number
which is used to create an 802.1Q vlan header for packets
sent from the vlan interface. Note that vlan and vlandev
must both be set at the same time.
vlandev iface If the interface is a vlan(4) pseudo-device, associate
physical interface iface with it. Packets transmitted
through the vlan interface will be diverted to the speci-
fied physical interface iface with 802.1Q vlan encapsula-
tion. Packets with 802.1Q encapsulation received by the
parent interface with the correct vlan tag will be
diverted to the associated vlan pseudo-interface. The
vlan interface is assigned a copy of the parent
interface's flags and the parent's Ethernet address.
vlandev and vlan must both be set at the same time. If
the vlan interface already has a physical interface asso-
ciated with it, this command will fail. To change the as-
sociation to another physical interface, the existing as-
sociation must be cleared first.
Note: if the link0 flag is set on the vlan interface, the
vlan pseudo-interface's behavior changes; link0 tells the
vlan interface that the parent interface supports inser-
tion and extraction of vlan tags on its own (usually in
firmware) and that it should pass packets to and from the
parent unaltered.
-vlandev If the driver is a vlan(4) pseudo-device, disassociate
the physical interface from it. This breaks the link
between the vlan interface and its parent, clears its
vlan tag, flags, and link address, and shuts the inter-
face down.
vltime n (inet6 only) Set valid lifetime for the address.
EXAMPLES
Assign the inet(3) address of 192.168.1.10 with a network mask of
255.255.255.0 to interface fxp0:
# ifconfig fxp0 inet 192.168.1.10 netmask 255.255.255.0
Assign the ipx(3) address of 12625920 specified in decimal to interface
fxp0:
# ifconfig fxp0 ipx 12625920
Assign the AppleTalk network 39108 and server node 128 with a network
range of 39107-39109 to interface fxp0 on a phase 2 AppleTalk network:
# ifconfig fxp0 atalk 39108.128 range 39107-39109 phase 2
Configure the xl0 interface to use 10baseT:
# ifconfig xl0 media 10baseT
Configure the xl0 interface to use 100baseTX, full duplex:
# ifconfig xl0 media 100baseTX mediaopt full-duplex
Configure the vlan0 interface for IP address 192.168.254.1, vlan tag 4,
and vlan parent device fxp0:
# ifconfig vlan0 192.168.254.1 vlan 4 vlandev fxp0
Configure the carp0 interface for IP address 192.168.10.1, virtual host
ID 1:
# ifconfig carp0 vhid 1 192.168.10.1
Create the gif1 network interface:
# ifconfig gif1 create
Destroy the gif1 network interface:
# ifconfig gif1 destroy
DIAGNOSTICS
Messages indicating the specified interface does not exist, the requested
address is unknown, or the user is not privileged and tried to alter an
interface's configuration.
SEE ALSO
netstat(1), inet(3), ipx(3), arp(4), bridge(4), carp(4), gif(4), gre(4),
ifmedia(4), inet(4), lo(4), netintro(4), pfsync(4), ppp(4), pppoe(4),
sl(4), tun(4), vlan(4), hostname.if(5), hosts(5), networks(5),
brconfig(8), rc(8), routed(8)
HISTORY
The ifconfig command appeared in 4.2BSD.
MirBSD #10-current September 3, 1998 6