**ip=**_<interface>_:_{dhcp|on|any|dhcp6|auto6}_[:[_<mtu>_][:_<macaddr>_]]::
This parameter can be specified multiple times.
+
+=====================
dhcp|on|any|dhcp6::: get ip from dhcp server on a specific interface
auto6::: do IPv6 autoconfiguration
-<macaddr>::: optionally set <macaddr> on the <interface>
+<macaddr>::: optionally **set** <macaddr> on the <interface>. This
+cannot be used in conjunction with the **ifname** argument for the
+same <interface>.
+=====================
+
+[IMPORTANT]
+=====================
+It is recommended to either bind <interface> to a MAC with the **ifname**
+argument. Or use biosdevname to name your interfaces, which will then have names according to their hardware location.
+
+em<port>::: for embedded NICs
+p<slot>#<port>_<virtual instance>::: for cards in PCI slots
+=====================
**ip=**_<client-IP>_:_<server-IP>_:_<gateway-IP>_:_<netmask>_:_<client_hostname>_:_<interface>_:_{none|off|dhcp|on|any|dhcp6|auto6|ibft}_[:[_<mtu>_][:_<macaddr>_]]::
explicit network configuration. If you want do define a IPv6 address, put it
in brackets (e.g. [2001:DB8::1]). This parameter can be specified multiple
times.
+
-<macaddr>::: optionally set <macaddr> on the <interface>
+=====================
+<macaddr>::: optionally **set** <macaddr> on the <interface>. This
+cannot be used in conjunction with the **ifname** argument for the
+same <interface>.
+=====================
+
+[IMPORTANT]
+=====================
+It is recommended to either bind <interface> to a MAC with the **ifname**
+argument. Or use biosdevname to name your interfaces, which will then have names according to their hardware location.
+
+em<port>::: for embedded NICs
+p<slot>#<port>_<virtual instance>::: for cards in PCI slots
+=====================
**ifname=**_<interface>_:_<MAC>_::
- Assign network device name <interface> (ie eth0) to the NIC with MAC <MAC>.
- Note: If you use this option you _must_ specify an ifname= argument for all
- interfaces used in ip= or fcoe= arguments. However, if the interface in
- ip= or fcoe= is a bridge, bonding or vlan interface, you should specify
- an ifname= for _each_ of its underlying interfaces. This parameter can be
- specified multiple times.
+ Assign network device name <interface> (ie "bootnet") to the NIC with MAC <MAC>.
++
+[IMPORTANT]
+
+Do **not** use the default kernel naming scheme for the interface name,
+as it can conflict with the kernel names. So, don't use "eth[0-9]+" for the
+interface name. Better name it "bootnet" or "bluesocket".
**bootdev=**_<interface>_::
specify network interface to use routing and netroot information from.
**fcoe=**_<edd|interface|MAC>_:_{dcb|nodcb}_::
Try to connect to a FCoE SAN through the NIC specified by _<interface>_ or
_<MAC>_ or EDD settings. For the second argument, currently only nodcb is
- supported. This parameter can be specified multiple times. Note: letters in
- the MAC-address must be lowercase!
+ supported. This parameter can be specified multiple times.
++
+[NOTE]
+letters in the MAC-address must be lowercase!
NBD
~~~
printf 'SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="%s", ATTR{type}=="1", NAME="%s"\n' "$ifname_mac" "$ifname_if"
done
- # Rename non named interfaces out of the way for named ones.
- for p in $(getargs ifname=); do
- parse_ifname_opts $p
- printf 'SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="?*", ATTR{type}=="1", NAME!="?*", KERNEL=="%s", NAME="%%k-renamed"\n' "$ifname_if"
- done
-} > /etc/udev/rules.d/50-ifname.rules
+} >> /etc/udev/rules.d/80-ifname.rules