Ifcfg files details
From Nuclear Physics Group Documentation Pages
Jump to navigationJump to search/etc/sysconfig/network-scripts/ifcfg-<interface-name> and /etc/sysconfig/network-scripts/ifcfg-<interface-name>:<alias-name>: The first defines an interface, and the second contains only the parts of the definition that are different in a "alias" (or alternative) interface. For example, the network numbers might be different, but everything else might be the same, so only the network numbers would be in the alias file, but all the device information would be in the base ifcfg file. The items that can be defined in an ifcfg file depend on the interface type. The really obvious ones I'm not going to bother to define; you can figure out what "IPADDR" is, I think... :-) Base items: NAME=<friendly name for users to see> Most important for PPP. Only used in front ends. DEVICE=<name of physical device (except dynamically-allocated PPP devices where it is the "logical name")> IPADDR= NETMASK= GATEWAY= ONBOOT=yes|no ONHOTPLUG=yes|no USERCTL=yes|no BOOTPROTO=none|bootp|dhcp MTU= Default MTU for this device WINDOW= Default window for routes from this device PEERDNS=yes|no modify /etc/resolv.conf if peer uses msdns extension (PPP only) or DNS{1,2} are set, or if using dhclient. default to "yes". DNS{1,2}=<ipaddress> provide DNS addresses that are dropped into the resolv.conf file if PEERDNS is not set to "no". SRCADDR= use the specified source address for outgoing packets HWADDR= ethernet hardware address for this device MACADDR= Set the hardware address for this device to this. Use of this in conjunction with HWADDR= may cause unintended behavior. NOZZEROCONF= Set this to not set a route for dyamic link-local addreses over this device. PERSISTENT_DHCLIENT=yes|no|1|0 Without this option, or if it is 'no'/'0', and BOOTPROTO=dhcp, dhclient is run for the interface in "one-shot" mode; if the dhcp server does not respond for a configurable timeout, then dhclient exits and the interface is not brought up - the '-1' option is given to dhclient. If PERSISTENT_DHCLIENT=yes, then dhclient will keep on trying to contact the dhcp server when it does not respond - no '-1' option is given to dhclient. DHCPRELEASE=yes|no|1|0 With this option set to 'yes' (1), when a dhcp configured interface is brought down with 'ifdown', the lease will be released. Otherwise, leases are not released. DHCLIENT_IGNORE_GATEWAY=yes|no|1|0 If set to 'yes', it will cause dhclient-script to ignore any $GATEWAY setting that may be in the ifcfg file for this interface. Otherwise, the dhclient session which obtains an ip-address on the same subnet as $GATEWAY will set the default route to be via $GATEWAY, and no other dhclient session will set the default route. If BOOTPROTO is not "none", then the only other item that must be set is the DEVICE item; all the rest will be determined by the boot protocol. No "dummy" entries need to be created. Base items being deprecated: NETWORK=<will be calculated automatically with ifcalc> BROADCAST=<will be calculated automatically with ifcalc> Alias specific items: ONPARENT=yes|no Whether to bring up the device when the parent device is brought up. Default: yes IPv6-only items for real interfaces: IPV6INIT=yes|no Enable or disable IPv6 configuration for this interface Default: no IPV6FORWARDING=yes|no Enable or disable global forwarding of incoming IPv6 packets Note: Obsolete in interface specification! Default: no IPV6ADDR=<IPv6 address>[/<prefix length>] Specify a primary static IPv6 address here Optional, if normal host and a router advertisement daemon is on local link Required, if node is a router and interface should route packets Note: if prefix length is omitted, 64 is assumed Example: IPV6ADDR="3ffe:ffff:0:5::1" IPV6ADDR="3ffe:ffff:0:1::1/128" IPV6ADDR_SECONDARIES="<IPv6 address>[/<prefix length>] ..." (optional) A list of secondary IPv6 addresses (e.g. useful for virtual hosting) Example: IPV6ADDR_SECONDARIES="3ffe:ffff:0:1::10 3ffe:ffff:0:2::11/128" IPV6_MTU=<MTU of link> (optional) Optional, dedicated MTU of this link Note: Must be greater or equal to 1280. Example: IPV6_MTU="1280" Special configuration options for multi-homed hosts etc. IPV6_ROUTER=yes|no: Controls IPv6 autoconfiguration IPV6_AUTOCONF=yes|no: Controls IPv6 autoconfiguration Defaults: Global IPV6FORWARDING=yes: IPV6_AUTOCONF=no, IPV6_ROUTER=yes Global IPV6FORWARDING=no: IPV6_AUTOCONF=yes Optional settings for a 6to4 tunnel IPV6TO4INIT=yes|no Enable or disable 6to4 tunneling setup Default: no IPV6TO4_RELAY=<IPv4 address> (optional) IPv4 address of the remote 6to4 relay Note: if this is omitted, ::192.88.99.1 (the anycast relay address) is chosen IPV6TO4_IPV4ADDR=<IPv6 address>[/<prefix length>] (optional) Overwrite local IPv4 address which is accessable from the Internet (optional, in case of static IPv4-NAT behind a router or other special scenarios) IPV6TO4_MTU=<MTU for IPv6> (optional) Controls IPv6 MTU for the 6to4 tunnel Note: Must be greater or equal to 1280 Example: IPV6TO4_MTU="1280" Default: MTU of master device - 20 IPV6TO4_ROUTING="<device>-<suffix>/<prefix length> ..." (optional) A list of routing tokens to setup proper IPv6 routes on the LAN Example: IPV6TO4_ROUTING="eth0-:0004::0/64 eth1-:0005::0/64" Will create one route per eth0 and eth1, taking given SLA Optional settings for a 6to4 tunnel or a ppp link IPV6_CONTROL_RADVD=yes|no (optional) Enable signalling radvd that the 6to4 prefix has been changed or a preconfigured dynamic device is up or down Default: no IPv6-only items for static tunnel interface: Interface name: sitX (X => 1) IPV6INIT=yes|no Enable or disable IPv6 configuration for this interface Default: no IPV6TUNNELIPV4=<IPv4 address> Specify IPv4 address of a foreign IPv6-in-IPv4 tunnel endpoint Example: IPV6TUNNELIPV4="1.2.3.4" IPV6TUNNELIPV4LOCAL=<IPv4 address> Specify local IPv4 address of tunnel, useful on interfaces with multiple IPv4 addresses IPV6ADDR=<IPv6 address>[/<prefix length>] (optional) local IPv6 address of a numbered tunnel IPV6ADDR_SECONDARIES="<IPv6 address>[/<prefix length>] ..." (optional) A list of secondary IPv6 addresses (example see above) IPV6_MTU=<MTU of tunnel> (optional) Optional, dedicated MTU of this tunnel Note: Must be greater or equal to 1280 Example: IPV6_MTU="1280" IPv6-only option to enable DHCPv6 client: DHCPV6C=yes|no This will enable the DHCPv6 client, dhcp6c, to be run for the interface. See man dhcp6c(8) and dhcp6c.conf(5). Ethernet-only items: {IPXNETNUM,IPXPRIMARY,IPXACTIVE}_{802_2,802_3,ETHERII,SNAP} configuration matrix for IPX. Only used if IPX is active. Managed from /etc/sysconfig/network-scripts/ifup-ipx ARP=yes|no (adds 'arp' flag to ifconfig, for use with the ethertap device) ETHTOOL_OPTS=... Any device-specific options supported by ethtool. For example, if you wanted to force 100Mb full duplex: ETHTOOL_OPTS="speed 100 duplex full autoneg off" Note that changing speed or duplex settings almost always requires disabling autonegotiation with 'autoneg off'. No longer supported: PROMISC=yes|no (enable or disable promiscuous mode) ALLMULTI=yes|no (enable or disable all-multicast mode) To properly set these, use the packet socket interface. Ethernet 802.1q VLAN items: DEVICE=eth0.42 Initscripts use DEV_PLUS_VID_NO_PAD naming mode for VLAN devices. Example: eth0.42 for vlan 42 on device eth0. Valid VLAN ID range is 0-4095. Most ethernet switches reserve VLAN ID 1 to be used as management VLAN; starting from VLAN ID 2 is recommended. REORDER_HDR=yes|no When enabled the VLAN device will move the ethernet header around to make it look exactly like a real ethernet device. This may help programs such as ISC dhcpd which read the raw ethernet packet and make assumptions about the location of bytes. If you don't need it turn it off because there is a small performance penalty. Default is on. PPP/SLIP items: PERSIST=yes|no MODEMPORT=<device, say /dev/modem> LINESPEED=<speed, say 115200> DEFABORT=yes|no (tells netcfg whether or not to put default abort strings in when creating/editing the chat script and/or dip script for this interface) (meaningless with WVDIALSECT) PPP-specific items WVDIALSECT=<list of sections from wvdial.conf to use> If this variable is set, then the chat script (if it exists) is ignored, and wvdial is used to open the PPP connection. DEFROUTE=yes|no (set this interface as default route? yes is default) DEBUG=yes|no (defaults to yes) turns on/off pppd and chat (if used) debugging. ESCAPECHARS=yes|no (simplified interface here doesn't let people specify which characters to escape; almost everyone can use asyncmap 00000000 anyway, and they can set PPPOPTIONS to asyncmap foobar if they want to set options perfectly) HARDFLOWCTL=yes|no (yes imples "modem crtscts" options) PPPOPTIONS=<arbitrary option string; is placed last on the command line, so it can override other options like asyncmap that were specified differently> PAPNAME=<"name $PAPNAME" on pppd command line> (note that the "remotename" option is always specified as the logical ppp device name, like "ppp0" (which might perhaps be the physical device ppp1 if some other ppp device was brought up earlier...), which makes it easy to manage pap/chap files -- name/password pairs are associated with the logical ppp device name so that they can be managed together. REMIP=<remote ip address, normally unspecified> MTU= MRU= DISCONNECTTIMEOUT=<number of seconds, default currently 5> (time to wait before re-establishing the connection after a successfully-connected session terminates before attempting to establish a new connection.) RETRYTIMEOUT=<number of seconds, default currently 60> (time to wait before re-attempting to establish a connection after a previous attempt fails.) RETRYCONNECT=yes|no (defaults to yes) If this is yes, then we will re-run pppd if it exits with a "connect script failed" status. Otherwise, only one attempt is made to bring up the connection. Note that some connect scripts (for example, wvdial) might do their own retries (such as BUSY or NO DIALTONE conditions). MAXFAIL=<number> If this is set, this will cause ppp-watch to exit after the specified number of attempts. DEMAND=yes|no Switches on demand-dialing mode using pppd's "demand" option. IDLETIMEOUT=600 The amount of time the link needs to be inactive before pppd will bring it down automatically. BOOTTIMEOUT=30 The amount of time to wait at boot before giving up on the connection. IPPP-specific items (ISDN) PROVIDER=<ProviderName> USER=<Login> PASSWORD=<Password> ENCAP=[syncppp|] DIALMODE=[manual|auto] SECURE=off|on MSN=<> PHONE_IN=<Callback.Number> AREACODE=<> REGIONCODE=<> PHONE_OUT=<PhoneNumber> BUNDLING=off|on HUPTIMEOUT=<number> DNS1=<PrimaryDNS> DNS2=<SecondaryDNS> DOMAIN="" LAYER=[HDLC|] CALLBACK=off|on CHARGEHUP=<number> CHARGEINT=<number> CBHUP=<number> CBDELAY=<number> DIALMAX=<number> AUTH=[+pap] [-chap] IHUP=<> DELDEFAULTROUTE=[enabled|disabled] CBCP=off|on VJ=off|on VJCCOMP=off|on AC=off|on PC=off|on BSDCOMP=off|on CCP=off|on SLAVE_DEVICE=ippp[0-9] ippp0 items being deprecated: BOOT=[on|off] will be converted to ONBOOT=[yes|no] by netconf LOCAL_IP= will be converted to IPADDR by netconf REMOTE_IP= will be converted to GATEWAY by netconf IPSEC specific items SRC=source address. Not required. DST=destination address TYPE=IPSEC SRCNET=source net (for tunneling) DSTNET=destination network (for tunneling) Manual keying: AH_PROTO{_IN,_OUT}=protocol to use for AH (defaults to HMAC-SHA1) ESP_PROTO{_IN,_OUT}=protocol to use for ESP (defaults to 3DES) KEY_AH{_IN,_OUT}=AH key KEY_ESP{_IN,_OUT}=ESP key SPI_{ESP,AH_{IN,OUT}}=SPIs to use _IN and _OUT specifiers are for using different keys or protocols for inccoming and outgoing packets. If neither _IN or _OUT variants are set for protocols or keys, the same will be used for both. Automatic keying: IKE_METHOD=PSK|X509|GSSAPI PSK=preshared keys (shared secret) X509=X.509 certificates GSSAPI=GSSAPI authentication IKE_PSK=preshared key for this connection IKE_CERTFILE=our certificate file name for X509 IKE IKE_PEER_CERTFILE=peer public cert filename for X509 IKE IKE_DNSSEC=retrieve peer public certs from DNS (otherwise uses certificate information sent over IKE) Bonding-specific items SLAVE=yes Specifies device as a slave MASTER=bondXX Specifies master device to bind to