nm-settings-ifcfg-rh (5) - Linux Manuals
nm-settings-ifcfg-rh: Description of ifcfg-rh settings plugin
NAME
nm-settings-ifcfg-rh - Description of ifcfg-rh settings plugin
DESCRIPTION
NetworkManager is based on the concept of connection profiles that contain network configuration (see nm-settings(5) for details). The profiles can be stored in various formats. NetworkManager uses plugins for reading and writing the data. The plugins can be configured in NetworkManager.conf(5).
The ifcfg-rh plugin is used on the Fedora and Red Hat Enterprise Linux distributions to read/write configuration from/to the traditional /etc/sysconfig/network-scripts/ifcfg-* files. Each NetworkManager connection maps to one ifcfg-* file, with possible usage of keys-* for passwords, route-* for static IPv4 routes and route6-* for static IPv6 routes. The plugin currently supports reading and writing Ethernet, Wi-Fi, InfiniBand, VLAN, Bond, Bridge, and Team connections. Unsupported connection types (such as WWAN, PPPoE, VPN, or ADSL) are handled by keyfile plugin (nm-settings-keyfile(5)). The main reason for using ifcfg-rh plugin is the compatibility with legacy configurations for ifup and ifdown (initscripts).
FILE FORMAT
The ifcfg-rh config format is a simple text file containing VARIABLE="value" lines. The format is described in sysconfig.txt of initscripts package. Note that the configuration files may be sourced by initscripts, so they must be valid shell scripts. That means, for instance, that # character can be used for comments, strings with spaces must be quoted, special characters must be escaped, etc.
Users can create or modify the ifcfg-rh connection files manually, even if that is not the recommended way of managing the profiles. However, if they choose to do that, they must inform NetworkManager about their changes (see monitor-connection-file in nm-settings(5), and nmcli con (re)load).
Some ifcfg-rh configuration examples:.
-
Simple DHCP ethernet configuration: NAME=ethernet UUID=1c4ddf70-01bf-46d6-b04f-47e842bd98da TYPE=Ethernet BOOTPROTO=dhcp DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no ONBOOT=yes
-
Simple ethernet configuration with static IP: TYPE=Ethernet BOOTPROTO=none IPADDR=10.1.0.25 PREFIX=24 GATEWAY=10.1.0.1 DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no NAME=ethernet-em2 UUID=51bb3904-c0fc-4dfe-83b2-0a71e7928c13 DEVICE=em2 ONBOOT=yes
-
WPA2 Enterprise WLAN (TTLS with inner MSCHAPV2 authentication): ESSID="CompanyWLAN" MODE=Managed KEY_MGMT=WPA-EAP TYPE=Wireless IEEE_8021X_EAP_METHODS=TTLS IEEE_8021X_IDENTITY=joe IEEE_8021X_PASSWORD_FLAGS=ask IEEE_8021X_INNER_AUTH_METHODS=MSCHAPV2 IEEE_8021X_CA_CERT=/home/joe/.cert/company.crt BOOTPROTO=dhcp DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no IPV6INIT=no NAME=MyCompany UUID=f79848ff-11a6-4810-9e1a-99039dea84c4 ONBOOT=yes
-
Bridge and bridge port configuration: ifcfg-bridge: ifcfg-bridge-port: NAME=bridge NAME=bridge007-port-eth0 UUID=4be99ce0-c5b2-4764-8b77-ec226e440125 UUID=3ad56c4a-47e1-419b-b0d4-8ad86eb967a3 DEVICE=bridge007 DEVICE=eth0 STP=yes ONBOOT=yes TYPE=Bridge TYPE=Ethernet BRIDGING_OPTS=priority=32768 BRIDGE=bridge007 ONBOOT=yes BOOTPROTO=dhcp
-
Bonding configuration: ifcfg-BOND: ifcfg-BOND-slave: NAME=BOND NAME=BOND-slave UUID=b41888aa-924c-450c-b0f8-85a4f0a51b4a UUID=9bb048e4-286a-4cc3-b104-007dbd20decb DEVICE=bond100 DEVICE=eth0 BONDING_OPTS="mode=balance-rr miimon=100" ONBOOT=yes TYPE=Bond TYPE=Ethernet BONDING_MASTER=yes MASTER=bond100 ONBOOT=yes SLAVE=yes BOOTPROTO=dhcp
-
Team and team port configuration: ifcfg-my_team0: DEVICE=team0 TEAM_CONFIG="{ \"device\": \"team0\", \"runner\": {\"name\": \"roundrobin\"}, \"ports\": {\"eth1\": {}, \"eth2\": {}} }" DEVICETYPE=Team BOOTPROTO=dhcp NAME=team0-profile UUID=1d3460a0-7b37-457f-a300-fe8d92da4807 ONBOOT=yes ifcfg-my_team0_slave1: NAME=team0-slave1 UUID=d5aed298-c567-4cc1-b808-6d38ecef9e64 DEVICE=eth1 ONBOOT=yes TEAM_MASTER=team0 DEVICETYPE=TeamPort ifcfg-my_team0_slave2: NAME=team0-slave2 UUID=94e75f4e-e5ad-401c-8962-31e0ae5d2215 DEVICE=eth2 ONBOOT=yes TEAM_MASTER=team0 DEVICETYPE=TeamPort
The UUID values in the config files must be unique. You can use uuidgen command line tool to generate such values. Alternatively, you can leave out UUID entirely. In that case NetworkManager will generate a UUID based on the file name.
DIFFERENCES AGAINST INITSCRIPTS
The main differences of NetworkManager ifcfg-rh plugin and traditional initscripts are:
NM_CONTROLLED=yes|no
- NM_CONTROLLED is NetworkManager-specific variable used by NetworkManager for determining whether the device of the ifcfg file should be managed. NM_CONTROLLED=yes is supposed if the variable is not present in the file. Note that if you have more ifcfg files for a single device, NM_CONTROLLED=no in one of the files will cause the device not to be managed. The profile may not even be the active one.
New variables
- NetworkManager has introduced some new variable, not present in initscripts, to be able to store data for its new features. The variables are marked as extensions in the tables below.
Semantic change of variables
-
NetworkManager had to slightly change the semantic for a few variables.
- • PEERDNS - initscripts interpret PEERDNS=no to mean "never touch resolv.conf". NetworkManager interprets it to say "never add automatic (DHCP, PPP, VPN, etc.) nameservers to resolv.conf".
- • ONBOOT - initscripts use ONBOOT=yes to mark the devices that are to be activated during boot. NetworkManager extents this to also mean that this profile can be used for auto-connecting at any time.
- • BOOTPROTO - NetworkManager supports traditional values none (static), dhcp. But it also allows additional values to enable new addressing methods. They are autoip for IPv4 link-local addressing using Avahi daemon and shared for connection sharing. When shared is used, NetworkManager assigns the interface 10.42.0.1, or it uses the first static address, if configured.
- • HWADDR - initscripts compare the currently set hardware address of a device, while NetworkManager considers the permanent one.
See the next section for detailed mapping of NetworkManager properties and ifcfg-rh variables. Variable names, format and usage differences in NetworkManager and initscripts are documented in the tables below.
DETAILS
ifcfg-rh plugin variables marked with (+) are NetworkManager specific extensions not understood by traditional initscripts.
Table 1. 802-1x setting
Property | Ifcfg-rh Variable | Default |
Description
|
eap | IEEE_8021X_EAP_METHODS(+) |
|
EAP method for 802.1X authentication.
Example: IEEE_8021X_EAP_METHODS=PEAP
Allowed values: "LEAP", "PWD", "TLS", "PEAP", "TTLS", "FAST"
|
identity | IEEE_8021X_IDENTITY(+) |
|
Identity for EAP authentication methods.
Example: IEEE_8021X_IDENTITY=itsme
|
anonymous-identity | IEEE_8021X_ANON_IDENTITY(+) |
|
Anonymous identity for EAP authentication methods.
|
pac-file | IEEE_8021X_PAC_FILE(+) |
|
File with PAC (Protected Access Credential) for EAP-FAST.
Example: IEEE_8021X_PAC_FILE=/home/joe/my-fast.pac
|
ca-cert | IEEE_8021X_CA_CERT(+) |
|
CA certificate for EAP.
Example: IEEE_8021X_CA_CERT=/home/joe/cacert.crt
|
ca-path | (none) |
|
The property is not handled by ifcfg-rh plugin.
|
subject-match | IEEE_8021X_SUBJECT_MATCH(+) |
|
Substring to match subject of server certificate against.
Example: IEEE_8021X_SUBJECT_MATCH="Red Hat"
|
altsubject-matches | IEEE_8021X_ALTSUBJECT_MATCHES(+) |
|
List of strings to be matched against the altSubjectName.
Example: IEEE_8021X_ALTSUBJECT_MATCHES="s1.domain.cc"
|
domain-suffix-match | IEEE_8021X_DOMAIN_SUFFIX_MATCH(+) |
|
Suffix to match domain of server certificate against.
|
client-cert | IEEE_8021X_CLIENT_CERT(+) |
|
Client certificate for EAP.
Example: IEEE_8021X_CLIENT_CERT=/home/joe/mycert.crt
|
phase1-peapver | IEEE_8021X_PEAP_VERSION(+) |
|
Use to force a specific PEAP version.
Allowed values: 0, 1
|
phase1-peaplabel | IEEE_8021X_PEAP_FORCE_NEW_LABEL(+) | no |
Use to force the new PEAP label during key derivation.
Allowed values: yes, no
|
phase1-fast-provisioning | IEEE_8021X_FAST_PROVISIONING(+) |
|
Enable in-line provisioning of EAP-FAST credentials.
Example: IEEE_8021X_FAST_PROVISIONING="allow-auth allow-unauth"
Allowed values: space-separated list of these values [allow-auth, allow-unauth]
|
phase1-auth-flags | IEEE_8021X_PHASE1_AUTH_FLAGS(+) |
|
Authentication flags for the supplicant
Example: IEEE_8021X_PHASE1_AUTH_FLAGS="tls-1-0-disable tls-1-1-disable"
Allowed values: space-separated list of authentication flags names
|
phase2-auth | IEEE_8021X_INNER_AUTH_METHODS(+) |
|
Inner non-EAP authentication methods. IEEE_8021X_INNER_AUTH_METHODS can contain values both for 'phase2-auth' and 'phase2-autheap' properties.
Example: IEEE_8021X_INNER_AUTH_METHODS=PAP
Allowed values: "PAP", "CHAP", "MSCHAP", "MSCHAPV2", "GTC", "OTP", "MD5" and "TLS"
|
phase2-autheap | IEEE_8021X_INNER_AUTH_METHODS(+) |
|
Inner EAP-based authentication methods. Note that IEEE_8021X_INNER_AUTH_METHODS is also used for 'phase2-auth' values.
Example: IEEE_8021X_INNER_AUTH_METHODS="MSCHAPV2 EAP-TLS"
Allowed values: "EAP-MD5", "EAP-MSCHAPV2", "EAP-GTC", "EAP-OTP" and "EAP-TLS"
|
phase2-subject-match | IEEE_8021X_PHASE2_SUBJECT_MATCH(+) |
|
Substring to match subject of server certificate against.
Example: IEEE_8021X_PHASE2_SUBJECT_MATCH="Red Hat"
|
phase2-altsubject-matches | IEEE_8021X_PHASE2_ALTSUBJECT_MATCHES(+) |
|
|
phase2-domain-suffix-match | IEEE_8021X_PHASE2_DOMAIN_SUFFIX_MATCH(+) |
|
Suffix to match domain of server certificate for phase 2 against.
|
phase2-client-cert | IEEE_8021X_INNER_CLIENT_CERT(+) |
|
Client certificate for inner EAP method.
Example: IEEE_8021X_INNER_CLIENT_CERT=/home/joe/mycert.crt
|
password | IEEE_8021X_PASSWORD(+) |
|
UTF-8 encoded password used for EAP. It can also go to "key-" lookaside file, or it can be owned by a secret agent.
|
password-flags | IEEE_8021X_PASSWORD_FLAGS(+) |
|
Password flags for IEEE_8021X_PASSWORD password. (see the section called "Secret flags" for _FLAGS values)
|
password-raw | (none) |
|
The property is not handled by ifcfg-rh plugin.
|
password-raw-flags | (none) |
|
The property is not handled by ifcfg-rh plugin.
|
private-key | IEEE_8021X_PRIVATE_KEY(+) |
|
Private key for EAP-TLS.
Example: IEEE_8021X_PRIVATE_KEY=/home/joe/mykey.p12
|
private-key-password | IEEE_8021X_PRIVATE_KEY_PASSWORD(+) |
|
Password for IEEE_8021X_PRIVATE_KEY. It can also go to "key-" lookaside file, or it can be owned by a secret agent.
|
private-key-password-flags | IEEE_8021X_PRIVATE_KEY_PASSWORD_FLAGS(+) |
|
Password flags for IEEE_8021X_PRIVATE_KEY_PASSWORD password. (see the section called "Secret flags" for _FLAGS values)
|
phase2-private-key | IEEE_8021X_INNER_PRIVATE_KEY(+) |
|
Private key for inner authentication method for EAP-TLS.
|
phase2-private-key-password | IEEE_8021X_INNER_PRIVATE_KEY_PASSWORD(+) |
|
Password for IEEE_8021X_INNER_PRIVATE_KEY. It can also go to "key-" lookaside file, or it can be owned by a secret agent.
|
phase2-private-key-password-flags | IEEE_8021X_INNER_PRIVATE_KEY_PASSWORD_FLAGS(+) |
|
Password flags for IEEE_8021X_INNER_PRIVATE_KEY_PASSWORD password. (see the section called "Secret flags" for _FLAGS values)
|
pin | (none) |
|
The property is not handled by ifcfg-rh plugin.
|
pin-flags | (none) |
|
The property is not handled by ifcfg-rh plugin.
|
system-ca-certs | (none) |
|
The property is not handled by ifcfg-rh plugin.
|
auth-timeout | IEEE_8021X_AUTH_TIMEOUT(+) | 0 |
Timeout in seconds for the 802.1X authentication. Zero means the global default or 25.
|
Table 2. bond setting
Property | Ifcfg-rh Variable | Default |
Description
|
options | BONDING_OPTS |
|
Bonding options.
Example: BONDING_OPTS="miimon=100 mode=broadcast"
|
Table 3. bridge-port setting
Property | Ifcfg-rh Variable | Default |
Description
|
priority | BRIDGING_OPTS: priority= | 32 |
STP priority.
Allowed values: 0 - 63
|
path-cost | BRIDGING_OPTS: path_cost= | 100 |
STP cost.
Allowed values: 1 - 65535
|
hairpin-mode | BRIDGING_OPTS: hairpin_mode= | yes |
Hairpin mode of the bridge port.
|
Table 4. bridge setting
Property | Ifcfg-rh Variable | Default |
Description
|
mac-address | MACADDR(+) |
|
MAC address of the bridge. Note that this requires a recent kernel support, originally introduced in 3.15 upstream kernel) MACADDR for bridges is an NM extension.
|
stp | STP | no |
Span tree protocol participation.
|
priority | BRIDGING_OPTS: priority= | 32768 |
STP priority.
Allowed values: 0 - 32768
|
forward-delay | DELAY | 15 |
STP forwarding delay.
Allowed values: 2 - 30
|
hello-time | BRIDGING_OPTS: hello_time= | 2 |
STP hello time.
Allowed values: 1 - 10
|
max-age | BRIDGING_OPTS: max_age= | 20 |
STP maximum message age.
Allowed values: 6 - 40
|
ageing-time | BRIDGING_OPTS: ageing_time= | 300 |
Ethernet MAC ageing time.
Allowed values: 0 - 1000000
|
multicast-snooping | BRIDGING_OPTS: multicast_snooping= | 1 |
IGMP snooping support.
Allowed values: 0 or 1
|
Table 5. connection setting
Property | Ifcfg-rh Variable | Default |
Description
|
id | NAME(+) |
|
User friendly name for the connection profile.
|
uuid | UUID(+) |
|
UUID for the connection profile. When missing, NetworkManager creates the UUID itself (by hashing the filename).
|
stable-id | STABLE_ID(+) |
|
Token to generate stable IDs.
|
interface-name | DEVICE |
|
Interface name of the device this profile is bound to. The variable can be left out when the profile should apply for more devices. Note that DEVICE can be required for some connection types.
|
type | TYPE (DEVICETYPE, DEVICE) |
|
Base type of the connection. DEVICETYPE is used for teaming connections.
Example: TYPE=Ethernet; TYPE=Bond; TYPE=Bridge; DEVICETYPE=TeamPort
Allowed values: Ethernet, Wireless, InfiniBand, Bridge, Bond, Vlan, Team, TeamPort
|
permissions | USERS(+) |
|
USERS restrict the access for this conenction to certain users only.
Example: USERS="joe bob"
|
autoconnect | ONBOOT | yes |
Whether the connection should be autoconnected (not only while booting).
|
autoconnect-priority | AUTOCONNECT_PRIORITY(+) | 0 |
Connection priority for automatic activation. Connections with higher numbers are preferred when selecting profiles for automatic activation.
Example: AUTOCONNECT_PRIORITY=20
Allowed values: -999 to 999
|
autoconnect-retries | AUTOCONNECT_RETRIES(+) |
|
The number of times a connection should be autoactivated before giving up and switching to the next one.
Example: AUTOCONNECT_RETRIES=1
Allowed values: -1 (use global default), 0 (forever) or a positive value
|
zone | ZONE(+) |
|
Trust level of this connection. The string is usually used for a firewall.
Example: ZONE=Work
|
master | MASTER, MASTER_UUID, TEAM_MASTER, TEAM_MASTER_UUID, BRIDGE, BRIDGE_UUID |
|
Reference to master connection. The variable used depends on the connection type and the value. In general, if the *_UUID variant is present, the variant without *_UUID is ignored. NetworkManager attempts to write both for compatibility with legacy tooling.
|
slave-type | MASTER, MASTER_UUID, TEAM_MASTER, TEAM_MASTER_UUID, DEVICETYPE, BRIDGE, BRIDGE_UUID |
|
Slave type doesn't map directly to a variable, but it is recognized using different variables. MASTER and MASTER_UUID for bonding, TEAM_MASTER, TEAM_MASTER_UUID and DEVICETYPE for teaming, BRIDGE and BRIDGE_UUID for bridging.
|
autoconnect-slaves | AUTOCONNECT-SLAVES(+) | missing variable means global default |
Whether slaves of this connection should be auto-connected when this connection is activated.
|
secondaries | SECONDARY_UUIDS(+) |
|
UUID of VPN connections that should be activated together with this connection.
|
gateway-ping-timeout | GATEWAY_PING_TIMEOUT(+) | 0 |
If greater than zero, the IP connectivity will be checked by pinging the gateway and waiting for the specified timeout (in seconds).
Example: GATEWAY_PING_TIMEOUT=5
|
metered | CONNECTION_METERED(+) |
|
Whether the device is metered
Example: CONNECTION_METERED=yes
Allowed values: yes,no,unknown
|
lldp | LLDP(+) | missing variable means global default |
whether LLDP is enabled for the connection
Example: LLDP=no
Allowed values: boolean value or 'rx'
|
Table 6. dcb setting
Property | Ifcfg-rh Variable | Default |
Description
|
app-fcoe-flags | DCB_APP_FCOE_ENABLE, DCB_APP_FCOE_ADVERTISE, DCB_APP_FCOE_WILLING | no |
FCOE flags.
Example: DCB_APP_FCOE_ENABLE=yes DCB_APP_FCOE_ADVERTISE=yes
|
app-fcoe-priority | DCB_APP_FCOE_PRIORITY |
|
Priority of FCoE frames.
Allowed values: 0 - 7
|
app-fcoe-mode | DCB_APP_FCOE_MODE | fabric |
FCoE controller mode.
Allowed values: fabric, vn2vn
|
app-iscsi-flags | DCB_APP_ISCSI_ENABLE, DCB_APP_ISCSI_ADVERTISE, DCB_APP_ISCSI_WILLING | no |
iSCSI flags.
|
app-iscsi-priority | DCB_APP_ISCSI_PRIORITY |
|
Priority of iSCSI frames.
Allowed values: 0 - 7
|
app-fip-flags | DCB_APP_FIP_ENABLE, DCB_APP_FIP_ADVERTISE, DCB_APP_FIP_WILLING | no |
FIP flags.
|
app-fip-priority | DCB_APP_FIP_PRIORITY |
|
Priority of FIP frames.
Allowed values: 0 - 7
|
priority-flow-control-flags | DCB_PFC_ENABLE, DCB_PFC_ADVERTISE, DCB_PFC_WILLING | no |
Priority flow control flags.
|
priority-flow-control | DCB_PFC_UP |
|
Priority flow control values. String of 8 "0" and "1", where "0". means "do not transmit priority pause", "1" means "transmit pause".
Example: DCB_PFC_UP=01101110
|
priority-group-flags | DCB_PG_ENABLE, DCB_PG_ADVERTISE, DCB_PG_WILLING | no |
Priority groups flags.
|
priority-group-id | DCB_PG_ID |
|
Priority groups values. String of eight priorities (0 - 7) or "f" (unrestricted).
Example: DCB_PG_ID=1205f173
|
priority-group-bandwidth | DCB_PG_PCT |
|
Priority groups values. Eight bandwidths (in percent), separated with commas.
Example: DCB_PG_PCT=10,5,10,15,10,10,10,30
|
priority-bandwidth | DCB_PG_UPPCT |
|
Priority values. Eight bandwidths (in percent), separated with commas. The sum of the numbers must be 100.
Example: DCB_PG_UPPCT=7,13,10,10,15,15,10,20
|
priority-strict-bandwidth | DCB_PG_STRICT |
|
Priority values. String of eight "0" or "1", where "0" means "may not utilize all bandwidth", "1" means "may utilize all bandwidth".
Example: DCB_PG_STRICT=01101110
|
priority-traffic-class | DCB_PG_UP2TC |
|
Priority values. String of eight trafic class values (0 - 7).
Example: DCB_PG_UP2TC=01623701
|
All DCB related configuration is a NetworkManager extension. DCB=yes must be used explicitly to enable DCB so that the rest of the DCB_* variables can apply.
Table 7. dummy setting
Property | Ifcfg-rh Variable | Default |
Description
|
Table 8. infiniband setting
Property | Ifcfg-rh Variable | Default |
Description
|
mac-address | HWADDR |
|
IBoIP 20-byte hardware address of the device (in traditional hex-digits-and-colons notation). Note that for initscripts this is the current MAC address of the device as found during ifup. For NetworkManager this is the permanent MAC address. Or in case no permanent MAC address exists, the MAC address initially configured on the device.
Example: HWADDR=01:02:03:04:05:06:07:08:09:0A:01:02:03:04:05:06:07:08:09:11
|
mtu | MTU |
|
MTU of the interface.
|
transport-mode | CONNECTED_MODE | CONNECTED_MODE=no |
CONNECTED_MODE=yes for "connected" mode, CONNECTED_MODE=no for "datagram" mode
|
p-key | PKEY_ID (and PKEY=yes) | PKEY=no |
InfiniBand P_Key. The value can be a hex number prefixed with "0x" or a decimal number. When PKEY_ID is specified, PHYSDEV and DEVICE also must be specified.
Example: PKEY=yes PKEY_ID=2 PHYSDEV=mlx4_ib0 DEVICE=mlx4_ib0.8002
|
parent | PHYSDEV (PKEY=yes) | PKEY=no |
InfiniBand parent device.
Example: PHYSDEV=ib0
|
Table 9. ipv4 setting
Property | Ifcfg-rh Variable | Default |
Description
|
method | BOOTPROTO | none |
Method used for IPv4 protocol configuration.
Allowed values: none, dhcp (bootp), static, ibft, autoip, shared
|
dns | DNS1, DNS2, ... |
|
List of DNS servers. Even if NetworkManager supports many DNS servers, initscripts and resolver only care about the first three, usually.
Example: DNS1=1.2.3.4 DNS2=10.0.0.254 DNS3=8.8.8.8
|
dns-search | DOMAIN |
|
List of DNS search domains.
|
addresses | IPADDR, PREFIX, IPADDR1, PREFIX1, ... |
|
List of static IP addresses.
Example: IPADDR=10.5.5.23 PREFIX=24 IPADDR1=1.1.1.2 PREFIX1=16
|
gateway | GATEWAY |
|
Gateway IP address.
Example: GATEWAY=10.5.5.1
|
routes | ADDRESS1, NETMASK1, GATEWAY1, METRIC1, OPTIONS1, ... |
|
List of static routes. They are not stored in ifcfg-* file, but in route-* file instead.
|
ignore-auto-routes | PEERROUTES(+) | yes |
PEERROUTES has the opposite meaning as 'ignore-auto-routes' property.
|
ignore-auto-dns | PEERDNS | yes |
PEERDNS has the opposite meaning as 'ignore-auto-dns' property.
|
dhcp-send-hostname | DHCP_SEND_HOSTNAME(+) | yes |
Whether DHCP_HOSTNAME should be sent to the DHCP server.
|
dhcp-hostname | DHCP_HOSTNAME |
|
Hostname to send to the DHCP server. When both DHCP_HOSTNAME and DHCP_FQDN are specified only the latter is used.
|
never-default | DEFROUTE (GATEWAYDEV in /etc/sysconfig/network) | yes |
DEFROUTE=no tells NetworkManager that this connection should not be assigned the default route. DEFROUTE has the opposite meaning as 'never-default' property.
|
may-fail | IPV4_FAILURE_FATAL(+) | no |
IPV4_FAILURE_FATAL has the opposite meaning as 'may-fail' property.
|
route-metric | IPV4_ROUTE_METRIC(+) | -1 |
IPV4_ROUTE_METRIC is the default IPv4 metric for routes on this connection. If set to -1, a default metric based on the device type is used.
|
dns-priority | IPV4_DNS_PRIORITY(+) | 0 |
The priority for DNS servers of this connection. Lower values have higher priority. If zero, the default value will be used (50 for VPNs, 100 for other connections). A negative value prevents DNS from other connections with greater values to be used.
Example: IPV4_DNS_PRIORITY=20
|
dhcp-client-id | DHCP_CLIENT_ID(+) |
|
A string sent to the DHCP server to identify the local machine.
Example: DHCP_CLIENT_ID=ax-srv-1
|
dad-timeout | ARPING_WAIT | missing variable means global default (config override or 3) |
Timeout (in seconds) for performing DAD before configuring IPv4 addresses. 0 turns off the DAD completely, -1 means default value.
Example: ARPING_WAIT=2
|
dhcp-timeout | IPV4_DHCP_TIMEOUT(+) |
|
A timeout after which the DHCP transaction fails in case of no response.
Example: IPV4_DHCP_TIMEOUT=10
|
dhcp-fqdn | DHCP_FQDN |
|
FQDN to send to the DHCP server. When both DHCP_HOSTNAME and DHCP_FQDN are specified only the latter is used.
Example: DHCP_FQDN=foo.bar.com
|
Table 10. ipv6 setting
Property | Ifcfg-rh Variable | Default |
Description
|
method | IPV6INIT, IPV6FORWARDING, IPV6_AUTOCONF, DHCPV6C | IPV6INIT=yes; IPV6FORWARDING=no; IPV6_AUTOCONF=!IPV6FORWARDING, DHCPV6=no |
Method used for IPv6 protocol configuration. ignore ~ IPV6INIT=no; auto ~ IPV6_AUTOCONF=yes; dhcp ~ IPV6_AUTOCONF=no and DHCPV6C=yes
|
dns | DNS1, DNS2, ... |
|
List of DNS servers. NetworkManager uses the variables both for IPv4 and IPv6.
|
dns-search | DOMAIN |
|
List of DNS search domains.
|
addresses | IPV6ADDR, IPV6ADDR_SECONDARIES |
|
List of static IP addresses.
Example: IPV6ADDR=ab12:9876::1 IPV6ADDR_SECONDARIES="ab12:9876::2 ab12:9876::3"
|
gateway | IPV6_DEFAULTGW |
|
Gateway IP address.
Example: IPV6_DEFAULTGW=abbe::1
|
routes | (none) |
|
List of static routes. They are not stored in ifcfg-* file, but in route6-* file instead in the form of command line for 'ip route add'.
|
ignore-auto-routes | IPV6_PEERROUTES(+) | yes |
IPV6_PEERROUTES has the opposite meaning as 'ignore-auto-routes' property.
|
ignore-auto-dns | IPV6_PEERDNS(+) | yes |
IPV6_PEERDNS has the opposite meaning as 'ignore-auto-dns' property.
|
dhcp-hostname | DHCP_HOSTNAME |
|
Hostname to send the DHCP server.
|
never-default | IPV6_DEFROUTE(+), (and IPV6_DEFAULTGW, IPV6_DEFAULTDEV in /etc/sysconfig/network) | IPV6_DEFROUTE=yes (when no variable specified) |
IPV6_DEFROUTE=no tells NetworkManager that this connection should not be assigned the default IPv6 route. IPV6_DEFROUTE has the opposite meaning as 'never-default' property.
|
may-fail | IPV6_FAILURE_FATAL(+) | no |
IPV6_FAILURE_FATAL has the opposite meaning as 'may-fail' property.
|
route-metric | IPV6_ROUTE_METRIC(+) | -1 |
IPV6_ROUTE_METRIC is the default IPv6 metric for routes on this connection. If set to -1, a default metric based on the device type is used.
|
dns-priority | IPV6_DNS_PRIORITY(+) | 0 |
The priority for DNS servers of this connection. Lower values have higher priority. If zero, the default value will be used (50 for VPNs, 100 for other connections). A negative value prevents DNS from other connections with greater values to be used.
Example: IPV6_DNS_PRIORITY=20
|
ip6-privacy | IPV6_PRIVACY, IPV6_PRIVACY_PREFER_PUBLIC_IP(+) | no |
Configure IPv6 Privacy Extensions for SLAAC (RFC4941).
Example: IPV6_PRIVACY=rfc3041 IPV6_PRIVACY_PREFER_PUBLIC_IP=yes
Allowed values: IPV6_PRIVACY: no, yes (rfc3041 or rfc4941); IPV6_PRIVACY_PREFER_PUBLIC_IP: yes, no
|
addr-gen-mode | IPV6_ADDR_GEN_MODE | eui64 |
Configure IPv6 Stable Privacy addressing for SLAAC (RFC7217).
Example: IPV6_ADDR_GEN_MODE=stable-privacy
Allowed values: IPV6_ADDR_GEN_MODE: eui64, stable-privacy
|
token | IPV6_TOKEN |
|
The IPv6 tokenized interface identifier token
Example: IPV6_TOKEN=::53
|
Table 11. macsec setting
Property | Ifcfg-rh Variable | Default |
Description
|
Table 12. proxy setting
Property | Ifcfg-rh Variable | Default |
Description
|
method | PROXY_METHOD(+) | none |
Method for proxy configuration. For "auto", WPAD is used for proxy configuration, or set the PAC file via PAC_URL or PAC_SCRIPT.
Allowed values: none, auto
|
browser-only | BROWSER_ONLY(+) | no |
Whether the proxy configuration is for browser only.
|
pac-url | PAC_URL(+) |
|
URL for PAC file.
Example: PAC_URL=http://wpad.mycompany.com/wpad.dat
|
pac-script | PAC_SCRIPT(+) |
|
Path of the PAC script.
Example: PAC_SCRIPT=/home/joe/proxy.pac
|
Table 13. team-port setting
Property | Ifcfg-rh Variable | Default |
Description
|
config | TEAM_PORT_CONFIG |
|
Team port configuration in JSON. See man teamd.conf for details.
|
Table 14. team setting
Property | Ifcfg-rh Variable | Default |
Description
|
config | TEAM_CONFIG |
|
Team configuration in JSON. See man teamd.conf for details.
|
Table 15. user setting
Property | Ifcfg-rh Variable | Default |
Description
|
Table 16. 802-3-ethernet setting
Property | Ifcfg-rh Variable | Default |
Description
|
port | (none) |
|
The property is not saved by the plugin.
|
speed | ETHTOOL_OPTS |
|
Fixed speed for the ethernet link. It is added as "speed" parameter in the ETHTOOL_OPTS variable.
|
duplex | ETHTOOL_OPTS |
|
Fixed duplex mode for the ethernet link. It is added as "duplex" parameter in the ETHOOL_OPTS variable.
|
auto-negotiate | ETHTOOL_OPTS |
|
Whether link speed and duplex autonegotiation is enabled. It is not saved only if disabled and no values are provided for the "speed" and "duplex" parameters (skips link configuration).
|
mac-address | HWADDR |
|
Hardware address of the device in traditional hex-digits-and-colons notation (e.g. 00:22:68:14:5A:05). Note that for initscripts this is the current MAC address of the device as found during ifup. For NetworkManager this is the permanent MAC address. Or in case no permanent MAC address exists, the MAC address initially configured on the device.
|
cloned-mac-address | MACADDR |
|
Cloned (spoofed) MAC address in traditional hex-digits-and-colons notation (e.g. 00:22:68:14:5A:99).
|
generate-mac-address-mask | GENERATE_MAC_ADDRESS_MASK(+) |
|
the MAC address mask for generating randomized and stable cloned-mac-address.
|
mac-address-blacklist | HWADDR_BLACKLIST(+) |
|
It denies usage of the connection for any device whose address is listed.
Example: HWADDR_BLACKLIST="00:22:68:11:69:08 00:11:22:11:44:55"
|
mtu | MTU |
|
MTU of the interface.
|
s390-subchannels | SUBCHANNELS |
|
Subchannels for IBM S390 hosts.
Example: SUBCHANNELS=0.0.b00a,0.0.b00b,0.0.b00c
|
s390-nettype | NETTYPE |
|
Network type of the S390 host.
Example: NETTYPE=qeth
Allowed values: "qeth", "lcs" or "ctc"
|
s390-options | OPTIONS and PORTNAME, CTCPROTO, |
|
S390 device options. All options go to OPTIONS, except for "portname" and "ctcprot" that have their own variables.
|
Table 17. 802-11-wireless-security setting
Property | Ifcfg-rh Variable | Default |
Description
|
key-mgmt | KEY_MGMT(+) |
|
Key management menthod.
Allowed values: IEEE8021X, WPA-PSK, WPA-EAP
|
wep-tx-keyidx | DEFAULTKEY | 1 |
Index of active WEP key.
Allowed values: 1, 2, 3, 4
|
auth-alg | SECURITYMODE(+) |
|
Authentication algorithm for WEP.
Allowed values: restricted, open, leap
|
proto | WPA_ALLOW_WPA(+), WPA_ALLOW_WPA2(+) | no |
Allowed WPA protocols, WPA and WPA2 (RSN).
Allowed values: yes, no
|
pairwise | CIPHER_PAIRWISE(+) |
|
Restrict pairwise encryption algorithms, specified as a space separated list.
Allowed values: CCMP, TKIP
|
group | CIPHER_GROUP(+) |
|
Restrict group/broadcast encryption algorithms, specified as a space separated list.
Allowed values: CCMP, TKIP, WEP40, WEP104
|
leap-username | IEEE_8021X_IDENTITY(+) |
|
Login name for LEAP.
|
wep-key0 | KEY1, KEY_PASSPHRASE1(+) |
|
The first WEP key (used in most networks). See also DEFAULTKEY for key index.
|
wep-key1 | KEY2, KEY_PASSPHRASE2(+) |
|
WEP key with index 1. See also DEFAULTKEY for key index.
|
wep-key2 | KEY3, KEY_PASSPHRASE3(+) |
|
WEP key with index 2. See also DEFAULTKEY for key index.
|
wep-key3 | KEY4, KEY_PASSPHRASE4(+) |
|
WEP key with index 3. See also DEFAULTKEY for key index.
|
wep-key-flags | WEP_KEY_FLAGS(+) |
|
Password flags for KEY<i>, KEY_PASSPHRASE<i> password. (see the section called "Secret flags" for _FLAGS values)
|
psk | WPA_PSK |
|
Pre-Shared-Key for WPA networks.
|
psk-flags | WPA_PSK_FLAGS(+) |
|
Password flags for WPA_PSK_FLAGS. (see the section called "Secret flags" for _FLAGS values)
Example: WPA_PSK_FLAGS=user
|
leap-password | IEEE_8021X_PASSWORD(+) |
|
Password for LEAP. It can also go to "key-" lookaside file, or it can be owned by a secret agent.
|
leap-password-flags | IEEE_8021X_PASSWORD_FLAGS(+) |
|
Password flags for IEEE_8021X_PASSWORD_FLAGS. (see the section called "Secret flags" for _FLAGS values)
|
wep-key-type | KEY<i> or KEY_PASSPHRASE<i>(+) |
|
KEY is used for "key" type (10 or 26 hexadecimal characters, or 5 or 13 character string prefixed with "s:"). KEY_PASSPHRASE is used for WEP passphrases.
Example: KEY1=s:ahoj, KEY1=0a1c45bc02, KEY_PASSPHRASE1=mysupersecretkey
|
Table 18. 802-11-wireless setting
Property | Ifcfg-rh Variable | Default |
Description
|
ssid | ESSID |
|
SSID of Wi-Fi network.
Example: ESSID="Quick Net"
|
mode | MODE |
|
Wi-Fi network mode.
Allowed values: Ad-Hoc, Managed (Auto) [case insensitive]
|
band | BAND(+) |
|
BAND alone is honored, but CHANNEL overrides BAND since it implies a band.
Example: BAND=bg
Allowed values: a, bg
|
channel | CHANNEL |
|
Channel used for the Wi-Fi communication. Channels greater than 14 mean "a" band, otherwise the band is "bg".
Example: CHANNEL=6
|
bssid | BSSID(+) |
|
Restricts association only to a single AP.
Example: BSSID=00:1E:BD:64:83:21
|
rate | (none) |
|
This property is not handled by ifcfg-rh plugin.
|
tx-power | (none) |
|
This property is not handled by ifcfg-rh plugin.
|
mac-address | HWADDR |
|
Hardware address of the device in traditional hex-digits-and-colons notation (e.g. 00:22:68:14:5A:05). Note that for initscripts this is the current MAC address of the device as found during ifup. For NetworkManager this is the permanent MAC address. Or in case no permanent MAC address exists, the MAC address initially configured on the device.
|
cloned-mac-address | MACADDR |
|
Cloned (spoofed) MAC address in traditional hex-digits-and-colons notation (e.g. 00:22:68:14:5A:99).
|
generate-mac-address-mask | GENERATE_MAC_ADDRESS_MASK(+) |
|
the MAC address mask for generating randomized and stable cloned-mac-address.
|
mac-address-blacklist | HWADDR_BLACKLIST(+) |
|
It denies usage of the connection for any device whose address is listed.
|
seen-bssids | (none) |
|
This property is not handled by ifcfg-rh plugin.
|
mtu | MTU |
|
MTU of the wireless interface.
|
hidden | SSID_HIDDEN(+) |
|
Whether the network hides the SSID.
|
powersave | POWERSAVE(+) |
|
Enables or disables Wi-Fi power saving.
Example: POWERSAVE=enable
Allowed values: default, ignore, enable, disable
|
mac-address-randomization | MAC_ADDRESS_RANDOMIZATION(+) |
|
Enables or disables Wi-Fi MAC address randomization.
Example: MAC_ADDRESS_RANDOMIZATION=always
Allowed values: default, never, always
|
security | (none) |
|
This property is deprecated and not handled by ifcfg-rh-plugin.
|
The following settings are not supported by ifcfg-rh plugin:
adsl, bluetooth, ppp, pppoe, serial, generic, gsm, cdma, 802-11-olpc-mesh, wimax, vpn, macvlan, vxlan, tun, ip-tunnel
Secret flags
Each secret property in a NetworkManager setting has an associated flags property that describes how to handle that secret. In the fcfg-rh plugin variables for secret flags have a _FLAGS suffix. The variables contain one or more of the following values (space separated). Missing (or empty) *_FLAGS variable means that the password is owned by NetworkManager.
- • user - a user-session secret agent is responsible for providing and storing this secret; when it is required, agents will be asked to provide it.
- • ask - the associated password is not saved but it will be requested from the user each time it is required.
- • unused - in some situations it cannot be automatically determined that a secret is required or not. This flag hints that the secret is not required and should not be requested from the user.
FILES
/etc/sysconfig/network-scripts/ifcfg-*
/etc/sysconfig/network-scripts/keys-*
/etc/sysconfig/network-scripts/route-*
/etc/sysconfig/network-scripts/route6-*
/usr/share/doc/initscripts/sysconfig.txt
SEE ALSO
nm-settings(5), nm-settings-keyfile(5), NetworkManager(8), NetworkManager.conf(5), nmcli(1), nmcli-examples(7)