/etc/network/interfaces - interface configuration database
The /etc/network/interfaces file is used to specify how network
interfaces are configured. The file is processed by ifquery(8),
ifup(8) and ifdown(8) to introspect and change system state.
The interface configuration database is composed of a series of stanzas. Hash
symbols designate comments, which are ignored by the system.
A stanza is a collection of triples, where a triple is a key and
value combination that is related to an object. Triples which are not
associated with an object are considered to be part of the root of
the configuration tree.
The following is a simple example of a stanza:
auto eth0
iface eth0
address 203.0.113.2/24
gateway 203.0.113.1
This stanza defines an interface named eth0 which is
configured with an address of 203.0.113.2 and gateway of
203.0.113.1.
auto object
Designates that object should be automatically
configured by the system when appropriate.
iface object
Begins a new declaration for object. Any child
keyword associated with the declaration will be stored inside
object.
Any keyword may be used inside an interface declaration block, but the system
will only respond to certain keywords by default:
address address
Associates an IPv4 or IPv6 address in CIDR notation with
the parent interface.
gateway address
Associates an IPv4 or IPv6 address with the parent
interface for use as a default route (gateway).
netmask netmask
Associates a fallback netmask with the parent interface
for addresses which do not have a CIDR length set. This option is for
backwards compatibility and should not be used in new deployments.
requires interfaces...
Designates one or more required interfaces that must be
brought up before configuration of the parent interface. Interfaces associated
with the parent are taken down at the same time as the parent.
use option
Designates that an option should be used. See
OPTIONS section for more information on options.
pre-down command
Runs command before taking the interface
down.
down command
Runs command when the interface is taken
down.
post-down command
Runs command after taking the interface
down.
pre-up command
Runs command before bringing the interface
up.
up command
Runs command when the interface is brought
up.
post-up command
Runs command after bringing the interface
up.
Additional packages such as bonding, bridge,
tunnel and vrf add additional keywords to this vocabulary.
The use keyword designates that an option should be used. This
system is extendable by additional packages, but the most common options are:
bond
The interface is a bonded interface. Configuration of
bonded interfaces requires the bonding package to be installed.
bridge
The interface is an ethernet bridge. Configuration of
ethernet bridges requires the bridge package to be installed.
dhcp
Use a DHCP client to learn the IPv4 address of an
interface.
loopback
Designates the interface as a loopback device.
tunnel
The interface is a tunnel. Configuration of tunnels
requires the tunnel package to be installed.
vrf
The interface is a VRF. Configuration of VRFs requires
the vrf package to be installed.
Configure a bridge interface br0 with bond0 attached to it, which
is a failover between eth0 and eth1. This requires the
bonding and bridge packages to be installed:
auto br0
iface br0
use bridge
requires bond0
address 203.0.113.2/24
gateway 203.0.113.1
iface bond0
use bond
requires eth0 eth1
bond-mode 802.3ad
bond-xmit-hash-policy layer2+3
Configure a network interface to use DHCP to learn its IPv4
address:
auto eth0
iface eth0
use dhcp
Ariadne Conill <ariadne@dereferenced.org>