[New: openFATE 311365] Include biosdevname to rename network interfaces based on chassis labels
Feature added by: Narendra K - (narendra_k) Feature #311365, revision 1 Title: Include biosdevname to rename network interfaces based on chassis labels openSUSE Distribution: Unconfirmed Priority Requester: Important Requested by: Narendra K - (narendra_k) Partner organization: openSUSE.org Description: On a Dell PowerEdge server with multiple add-in cards, the naming of the network interfaces is non-deterministic. This results in 'eth0' not mapping to "Embedded NIC 1" as labeled on the server chassis. This issue is seen on Dell PowerEdge 10G above. This feature addresses this issue by renaming network interfaces based on their location on the system motherboard. The naming policy it suggests are as follows: Embedded devices: em<port> Add-in PCI cards: pci<slot>p<port>_<virtual function instance> Please refer to "Consistent Network device naming-Name network interfaces to match chassis labels" (https://features.opensuse.org/310896). Business case (Partner benefit): openSUSE.org: This allows system administrators to refer to the network interfaces by names based on their location on the motherboard. The naming becomes deterministic and there is no state such as HWADDR embedded into the configuration files. -- openSUSE Feature: https://features.opensuse.org/311365
Feature changed by: Narendra K - (narendra_k) Feature #311365, revision 3 - Title: Include biosdevname to rename network interfaces based on - chassis labels + Title: Include 71-biosdevname.rules to rename network interfaces based + on chassis labels openSUSE Distribution: Unconfirmed Priority Requester: Important Requested by: Narendra K - (narendra_k) Partner organization: openSUSE.org Description: On a Dell PowerEdge server with multiple add-in cards, the naming of the network interfaces is non-deterministic. This results in 'eth0' not mapping to "Embedded NIC 1" as labeled on the server chassis. This issue is seen on Dell PowerEdge 10G above. This feature addresses this issue by renaming network interfaces based on their location on the system motherboard. The naming policy it suggests are as follows: Embedded devices: em<port> Add-in PCI cards: pci<slot>p<port>_<virtual function instance> Please refer to "Consistent Network device naming-Name network interfaces to match chassis labels" (https://features.opensuse.org/310896). Business case (Partner benefit): openSUSE.org: This allows system administrators to refer to the network interfaces by names based on their location on the motherboard. The naming becomes deterministic and there is no state such as HWADDR embedded into the configuration files. + Discussion: + #1: Narendra K - (narendra_k) (2011-03-01 16:28:05) + This request is for the inclusion of 71-biosdevname.rules which define + how the rename happens. 71-biosdevname.rules looks like this - + SUBSYSTEM!="net", GOTO="netdevicename_end" KERNEL!="eth*", GOTO=" + netdevicename_end" ACTION!="add", GOTO="netdevicename_end" NAME=="?*", + GOTO="netdevicename_end" + # kernel command line "biosdevname={0|1}" can turn off/on biosdevname + IMPORT{cmdline}="biosdevname" ENV{biosdevname}=="?*", ENV + {UDEV_BIOSDEVNAME}="$env{biosdevname}" # ENV{UDEV_BIOSDEVNAME} can be + used for blacklist/whitelist # but will be overwritten by the kernel + command line argument ENV{UDEV_BIOSDEVNAME}=="0", GOTO=" + netdevicename_end" ENV{UDEV_BIOSDEVNAME}=="1", GOTO=" + netdevicename_start" + # uncomment the next line for biosdevname to be off by default # GOTO=" + netdevicename_end" + LABEL="netdevicename_start" + # using NAME= instead of setting INTERFACE_NAME, so that persistent # + names aren't generated for these devices, they are "named" on each + boot. PROGRAM="/sbin/biosdevname --policy physical -i %k", NAME="%c", + OPTIONS+="string_escape=replace" + LABEL="netdevicename_end" -- openSUSE Feature: https://features.opensuse.org/311365
Feature changed by: Narendra K - (narendra_k) Feature #311365, revision 4 Title: Include 71-biosdevname.rules to rename network interfaces based on chassis labels openSUSE Distribution: Unconfirmed Priority Requester: Important Requested by: Narendra K - (narendra_k) Partner organization: openSUSE.org Description: On a Dell PowerEdge server with multiple add-in cards, the naming of the network interfaces is non-deterministic. This results in 'eth0' not mapping to "Embedded NIC 1" as labeled on the server chassis. This issue is seen on Dell PowerEdge 10G above. This feature addresses this issue by renaming network interfaces based on their location on the system motherboard. - The naming policy it suggests are as follows: - Embedded devices: em<port> - Add-in PCI cards: pci<slot>p<port>_<virtual function instance> + The naming policy it suggests are as follows - + Embedded devices: em<port> Add-in PCI cards: pci<slot>p<port>_<virtual + function instance> Please refer to "Consistent Network device naming-Name network interfaces to match chassis labels" (https://features.opensuse.org/310896). Business case (Partner benefit): openSUSE.org: This allows system administrators to refer to the network interfaces by names based on their location on the motherboard. The naming becomes deterministic and there is no state such as HWADDR embedded into the configuration files. Discussion: #1: Narendra K - (narendra_k) (2011-03-01 16:28:05) This request is for the inclusion of 71-biosdevname.rules which define how the rename happens. 71-biosdevname.rules looks like this - SUBSYSTEM!="net", GOTO="netdevicename_end" KERNEL!="eth*", GOTO=" netdevicename_end" ACTION!="add", GOTO="netdevicename_end" NAME=="?*", GOTO="netdevicename_end" # kernel command line "biosdevname={0|1}" can turn off/on biosdevname IMPORT{cmdline}="biosdevname" ENV{biosdevname}=="?*", ENV {UDEV_BIOSDEVNAME}="$env{biosdevname}" # ENV{UDEV_BIOSDEVNAME} can be used for blacklist/whitelist # but will be overwritten by the kernel command line argument ENV{UDEV_BIOSDEVNAME}=="0", GOTO=" netdevicename_end" ENV{UDEV_BIOSDEVNAME}=="1", GOTO=" netdevicename_start" # uncomment the next line for biosdevname to be off by default # GOTO=" netdevicename_end" LABEL="netdevicename_start" # using NAME= instead of setting INTERFACE_NAME, so that persistent # names aren't generated for these devices, they are "named" on each boot. PROGRAM="/sbin/biosdevname --policy physical -i %k", NAME="%c", OPTIONS+="string_escape=replace" LABEL="netdevicename_end" -- openSUSE Feature: https://features.opensuse.org/311365
Feature changed by: Narendra K - (narendra_k) Feature #311365, revision 5 Title: Include 71-biosdevname.rules to rename network interfaces based on chassis labels openSUSE Distribution: Unconfirmed Priority Requester: Important Requested by: Narendra K - (narendra_k) + Developer: jordan hargrave (jhargrave) Partner organization: openSUSE.org Description: On a Dell PowerEdge server with multiple add-in cards, the naming of the network interfaces is non-deterministic. This results in 'eth0' not mapping to "Embedded NIC 1" as labeled on the server chassis. This issue is seen on Dell PowerEdge 10G above. This feature addresses this issue by renaming network interfaces based on their location on the system motherboard. The naming policy it suggests are as follows - Embedded devices: em<port> Add-in PCI cards: pci<slot>p<port>_<virtual function instance> Please refer to "Consistent Network device naming-Name network interfaces to match chassis labels" (https://features.opensuse.org/310896). Business case (Partner benefit): openSUSE.org: This allows system administrators to refer to the network interfaces by names based on their location on the motherboard. The naming becomes deterministic and there is no state such as HWADDR embedded into the configuration files. Discussion: #1: Narendra K - (narendra_k) (2011-03-01 16:28:05) This request is for the inclusion of 71-biosdevname.rules which define how the rename happens. 71-biosdevname.rules looks like this - SUBSYSTEM!="net", GOTO="netdevicename_end" KERNEL!="eth*", GOTO=" netdevicename_end" ACTION!="add", GOTO="netdevicename_end" NAME=="?*", GOTO="netdevicename_end" # kernel command line "biosdevname={0|1}" can turn off/on biosdevname IMPORT{cmdline}="biosdevname" ENV{biosdevname}=="?*", ENV {UDEV_BIOSDEVNAME}="$env{biosdevname}" # ENV{UDEV_BIOSDEVNAME} can be used for blacklist/whitelist # but will be overwritten by the kernel command line argument ENV{UDEV_BIOSDEVNAME}=="0", GOTO=" netdevicename_end" ENV{UDEV_BIOSDEVNAME}=="1", GOTO=" netdevicename_start" # uncomment the next line for biosdevname to be off by default # GOTO=" netdevicename_end" LABEL="netdevicename_start" # using NAME= instead of setting INTERFACE_NAME, so that persistent # names aren't generated for these devices, they are "named" on each boot. PROGRAM="/sbin/biosdevname --policy physical -i %k", NAME="%c", OPTIONS+="string_escape=replace" LABEL="netdevicename_end" -- openSUSE Feature: https://features.opensuse.org/311365
Feature changed by: Mark Cowley (mcowley) Feature #311365, revision 6 Title: Include 71-biosdevname.rules to rename network interfaces based on chassis labels openSUSE Distribution: Unconfirmed Priority Requester: Important Requested by: Narendra K - (narendra_k) Developer: jordan hargrave (jhargrave) Partner organization: openSUSE.org Description: On a Dell PowerEdge server with multiple add-in cards, the naming of the network interfaces is non-deterministic. This results in 'eth0' not mapping to "Embedded NIC 1" as labeled on the server chassis. This issue is seen on Dell PowerEdge 10G above. This feature addresses this issue by renaming network interfaces based on their location on the system motherboard. The naming policy it suggests are as follows - Embedded devices: em<port> Add-in PCI cards: pci<slot>p<port>_<virtual function instance> Please refer to "Consistent Network device naming-Name network interfaces to match chassis labels" (https://features.opensuse.org/310896). Business case (Partner benefit): openSUSE.org: This allows system administrators to refer to the network interfaces by names based on their location on the motherboard. The naming becomes deterministic and there is no state such as HWADDR embedded into the configuration files. Discussion: #1: Narendra K - (narendra_k) (2011-03-01 16:28:05) This request is for the inclusion of 71-biosdevname.rules which define how the rename happens. 71-biosdevname.rules looks like this - SUBSYSTEM!="net", GOTO="netdevicename_end" KERNEL!="eth*", GOTO=" netdevicename_end" ACTION!="add", GOTO="netdevicename_end" NAME=="?*", GOTO="netdevicename_end" # kernel command line "biosdevname={0|1}" can turn off/on biosdevname IMPORT{cmdline}="biosdevname" ENV{biosdevname}=="?*", ENV {UDEV_BIOSDEVNAME}="$env{biosdevname}" # ENV{UDEV_BIOSDEVNAME} can be used for blacklist/whitelist # but will be overwritten by the kernel command line argument ENV{UDEV_BIOSDEVNAME}=="0", GOTO=" netdevicename_end" ENV{UDEV_BIOSDEVNAME}=="1", GOTO=" netdevicename_start" # uncomment the next line for biosdevname to be off by default # GOTO=" netdevicename_end" LABEL="netdevicename_start" # using NAME= instead of setting INTERFACE_NAME, so that persistent # names aren't generated for these devices, they are "named" on each boot. PROGRAM="/sbin/biosdevname --policy physical -i %k", NAME="%c", OPTIONS+="string_escape=replace" LABEL="netdevicename_end" + #2: Mark Cowley (mcowley) (2011-03-01 10:47:48) (reply to #1) + Yikes, that is pretty jumbled together and hard to read. Could you + please resubmit it formatted? HTML tags can be used, and consider just + using "pre" for your already formatted text. Or if that doesn't work, + you can email a formatted document to me and I will copy it over here. -- openSUSE Feature: https://features.opensuse.org/311365
Feature changed by: Narendra K - (narendra_k) Feature #311365, revision 7 Title: Include 71-biosdevname.rules to rename network interfaces based on chassis labels openSUSE Distribution: Unconfirmed Priority Requester: Important Requested by: Narendra K - (narendra_k) Developer: jordan hargrave (jhargrave) Partner organization: openSUSE.org Description: On a Dell PowerEdge server with multiple add-in cards, the naming of the network interfaces is non-deterministic. This results in 'eth0' not mapping to "Embedded NIC 1" as labeled on the server chassis. This issue is seen on Dell PowerEdge 10G above. This feature addresses this issue by renaming network interfaces based on their location on the system motherboard. The naming policy it suggests are as follows - Embedded devices: em<port> Add-in PCI cards: pci<slot>p<port>_<virtual function instance> Please refer to "Consistent Network device naming-Name network interfaces to match chassis labels" (https://features.opensuse.org/310896). Business case (Partner benefit): openSUSE.org: This allows system administrators to refer to the network interfaces by names based on their location on the motherboard. The naming becomes deterministic and there is no state such as HWADDR embedded into the configuration files. Discussion: #1: Narendra K - (narendra_k) (2011-03-01 16:28:05) This request is for the inclusion of 71-biosdevname.rules which define how the rename happens. 71-biosdevname.rules looks like this - SUBSYSTEM!="net", GOTO="netdevicename_end" KERNEL!="eth*", GOTO=" netdevicename_end" ACTION!="add", GOTO="netdevicename_end" NAME=="?*", GOTO="netdevicename_end" # kernel command line "biosdevname={0|1}" can turn off/on biosdevname IMPORT{cmdline}="biosdevname" ENV{biosdevname}=="?*", ENV {UDEV_BIOSDEVNAME}="$env{biosdevname}" # ENV{UDEV_BIOSDEVNAME} can be used for blacklist/whitelist # but will be overwritten by the kernel command line argument ENV{UDEV_BIOSDEVNAME}=="0", GOTO=" netdevicename_end" ENV{UDEV_BIOSDEVNAME}=="1", GOTO=" netdevicename_start" # uncomment the next line for biosdevname to be off by default # GOTO=" netdevicename_end" LABEL="netdevicename_start" # using NAME= instead of setting INTERFACE_NAME, so that persistent # names aren't generated for these devices, they are "named" on each boot. PROGRAM="/sbin/biosdevname --policy physical -i %k", NAME="%c", OPTIONS+="string_escape=replace" LABEL="netdevicename_end" #2: Mark Cowley (mcowley) (2011-03-01 10:47:48) (reply to #1) Yikes, that is pretty jumbled together and hard to read. Could you please resubmit it formatted? HTML tags can be used, and consider just using "pre" for your already formatted text. Or if that doesn't work, you can email a formatted document to me and I will copy it over here. + #3: Narendra K - (narendra_k) (2011-03-03 08:13:33) + I got biosdevname working on openSUSE 11.4 RC2 installed on PowerEdge + R710. These are the observations - + 1) Remove 70-persistent-net.rules in /etc/udev/rules.d/ + 2) make sure that the ifcfg-ethN file in /etc/sysconfig/network is + renamed to ifcfg-emN. Also, i observed that the ifcfg-ethN file did not + have any state such as MAC address embedded. + 3) Install latest version of biosdevname utility biosdevname-0.3.7 + 4) reboot the system and observe that the biosdevname suggested names + are in place and the configured ifcfg-emN is up. + Here is how the naming looks with the above changes - + linux-bt6c:/etc/sysconfig/network # cat /etc/issue + Welcome to openSUSE 11.4 "Celadon" - Kernel \r (\l). linux-bt6c: + /etc/sysconfig/network # ifconfig + em1 Link encap:Ethernet HWaddr 00:24:E8:2E:DE:FF inet addr:172.16.65.55 + Bcast:172.16.127.255 Mask:255.255.192.0 inet6 addr: fe80::224:e8ff:fe2e: + deff/64 Scope:Link inet6 addr: fc07:1::1:bb/64 Scope:Global UP + BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:207460 errors: + 0 dropped:0 overruns:0 frame:0 TX packets:2417 errors:0 dropped:0 + overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:14024994 + (13.3 Mb) TX bytes:253854 (247.9 Kb) Interrupt:36 Memory:d6000000- + d6012800 + lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 + addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX + packets:92 errors:0 dropped:0 overruns:0 frame:0 TX packets:92 errors:0 + dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:9602 + (9.3 Kb) TX bytes:9602 (9.3 Kb) + The system has 4 BCM5709 Lan-On-Motherboard ports, 1 single port + 82572EI adapter on PCI slot 4, 1 dual port Intel 82576 adapter on PCI + slot 3. The naming looks like this - + linux-bt6c:/etc/sysconfig/network # ls /sys/class/net/ + em1 em2 em3 em4 lo pci3p1 pci3p2 pci4p1 -- openSUSE Feature: https://features.opensuse.org/311365
Feature changed by: Narendra K - (narendra_k) Feature #311365, revision 8 Title: Include 71-biosdevname.rules to rename network interfaces based on chassis labels openSUSE Distribution: Unconfirmed Priority Requester: Important Requested by: Narendra K - (narendra_k) Developer: jordan hargrave (jhargrave) Partner organization: openSUSE.org Description: On a Dell PowerEdge server with multiple add-in cards, the naming of the network interfaces is non-deterministic. This results in 'eth0' not mapping to "Embedded NIC 1" as labeled on the server chassis. This issue is seen on Dell PowerEdge 10G above. This feature addresses this issue by renaming network interfaces based on their location on the system motherboard. The naming policy it suggests are as follows - Embedded devices: em<port> Add-in PCI cards: pci<slot>p<port>_<virtual function instance> Please refer to "Consistent Network device naming-Name network interfaces to match chassis labels" (https://features.opensuse.org/310896). Business case (Partner benefit): openSUSE.org: This allows system administrators to refer to the network interfaces by names based on their location on the motherboard. The naming becomes deterministic and there is no state such as HWADDR embedded into the configuration files. Discussion: #1: Narendra K - (narendra_k) (2011-03-01 16:28:05) This request is for the inclusion of 71-biosdevname.rules which define how the rename happens. 71-biosdevname.rules looks like this - SUBSYSTEM!="net", GOTO="netdevicename_end" KERNEL!="eth*", GOTO=" netdevicename_end" ACTION!="add", GOTO="netdevicename_end" NAME=="?*", GOTO="netdevicename_end" # kernel command line "biosdevname={0|1}" can turn off/on biosdevname IMPORT{cmdline}="biosdevname" ENV{biosdevname}=="?*", ENV {UDEV_BIOSDEVNAME}="$env{biosdevname}" # ENV{UDEV_BIOSDEVNAME} can be used for blacklist/whitelist # but will be overwritten by the kernel command line argument ENV{UDEV_BIOSDEVNAME}=="0", GOTO=" netdevicename_end" ENV{UDEV_BIOSDEVNAME}=="1", GOTO=" netdevicename_start" # uncomment the next line for biosdevname to be off by default # GOTO=" netdevicename_end" LABEL="netdevicename_start" # using NAME= instead of setting INTERFACE_NAME, so that persistent # names aren't generated for these devices, they are "named" on each boot. PROGRAM="/sbin/biosdevname --policy physical -i %k", NAME="%c", OPTIONS+="string_escape=replace" LABEL="netdevicename_end" #2: Mark Cowley (mcowley) (2011-03-01 10:47:48) (reply to #1) Yikes, that is pretty jumbled together and hard to read. Could you please resubmit it formatted? HTML tags can be used, and consider just using "pre" for your already formatted text. Or if that doesn't work, you can email a formatted document to me and I will copy it over here. #3: Narendra K - (narendra_k) (2011-03-03 08:13:33) I got biosdevname working on openSUSE 11.4 RC2 installed on PowerEdge R710. These are the observations - 1) Remove 70-persistent-net.rules in /etc/udev/rules.d/ 2) make sure that the ifcfg-ethN file in /etc/sysconfig/network is renamed to ifcfg-emN. Also, i observed that the ifcfg-ethN file did not have any state such as MAC address embedded. 3) Install latest version of biosdevname utility biosdevname-0.3.7 4) reboot the system and observe that the biosdevname suggested names are in place and the configured ifcfg-emN is up. Here is how the naming looks with the above changes - linux-bt6c:/etc/sysconfig/network # cat /etc/issue Welcome to openSUSE 11.4 "Celadon" - Kernel \r (\l). linux-bt6c: /etc/sysconfig/network # ifconfig em1 Link encap:Ethernet HWaddr 00:24:E8:2E:DE:FF inet addr:172.16.65.55 Bcast:172.16.127.255 Mask:255.255.192.0 inet6 addr: fe80::224:e8ff:fe2e: deff/64 Scope:Link inet6 addr: fc07:1::1:bb/64 Scope:Global UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:207460 errors: 0 dropped:0 overruns:0 frame:0 TX packets:2417 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:14024994 (13.3 Mb) TX bytes:253854 (247.9 Kb) Interrupt:36 Memory:d6000000- d6012800 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:92 errors:0 dropped:0 overruns:0 frame:0 TX packets:92 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:9602 (9.3 Kb) TX bytes:9602 (9.3 Kb) The system has 4 BCM5709 Lan-On-Motherboard ports, 1 single port 82572EI adapter on PCI slot 4, 1 dual port Intel 82576 adapter on PCI slot 3. The naming looks like this - linux-bt6c:/etc/sysconfig/network # ls /sys/class/net/ em1 em2 em3 em4 lo pci3p1 pci3p2 pci4p1 + #4: Narendra K - (narendra_k) (2011-03-03 08:18:31) + Onboard device names - + em1 - ethernet-on-motherboard 1 + em2 - ethernet-on-motherboard 2 + PCI Add-in interface names - + pci3p1 - pci<slot 3>p<port 1> + pci3p2 - pci<slot 3>p<port 2> + pci4p1 - pci<slot 4>p<port 1> -- openSUSE Feature: https://features.opensuse.org/311365
Feature changed by: Andreas Jaeger (a_jaeger) Feature #311365, revision 9 Title: Include 71-biosdevname.rules to rename network interfaces based on chassis labels - openSUSE Distribution: Unconfirmed + openSUSE Distribution: New Priority Requester: Important Requested by: Narendra K - (narendra_k) Developer: jordan hargrave (jhargrave) Partner organization: openSUSE.org Description: On a Dell PowerEdge server with multiple add-in cards, the naming of the network interfaces is non-deterministic. This results in 'eth0' not mapping to "Embedded NIC 1" as labeled on the server chassis. This issue is seen on Dell PowerEdge 10G above. This feature addresses this issue by renaming network interfaces based on their location on the system motherboard. The naming policy it suggests are as follows - Embedded devices: em<port> Add-in PCI cards: pci<slot>p<port>_<virtual function instance> Please refer to "Consistent Network device naming-Name network interfaces to match chassis labels" (https://features.opensuse.org/310896). Business case (Partner benefit): openSUSE.org: This allows system administrators to refer to the network interfaces by names based on their location on the motherboard. The naming becomes deterministic and there is no state such as HWADDR embedded into the configuration files. Discussion: #1: Narendra K - (narendra_k) (2011-03-01 16:28:05) This request is for the inclusion of 71-biosdevname.rules which define how the rename happens. 71-biosdevname.rules looks like this - SUBSYSTEM!="net", GOTO="netdevicename_end" KERNEL!="eth*", GOTO=" netdevicename_end" ACTION!="add", GOTO="netdevicename_end" NAME=="?*", GOTO="netdevicename_end" # kernel command line "biosdevname={0|1}" can turn off/on biosdevname IMPORT{cmdline}="biosdevname" ENV{biosdevname}=="?*", ENV {UDEV_BIOSDEVNAME}="$env{biosdevname}" # ENV{UDEV_BIOSDEVNAME} can be used for blacklist/whitelist # but will be overwritten by the kernel command line argument ENV{UDEV_BIOSDEVNAME}=="0", GOTO=" netdevicename_end" ENV{UDEV_BIOSDEVNAME}=="1", GOTO=" netdevicename_start" # uncomment the next line for biosdevname to be off by default # GOTO=" netdevicename_end" LABEL="netdevicename_start" # using NAME= instead of setting INTERFACE_NAME, so that persistent # names aren't generated for these devices, they are "named" on each boot. PROGRAM="/sbin/biosdevname --policy physical -i %k", NAME="%c", OPTIONS+="string_escape=replace" LABEL="netdevicename_end" #2: Mark Cowley (mcowley) (2011-03-01 10:47:48) (reply to #1) Yikes, that is pretty jumbled together and hard to read. Could you please resubmit it formatted? HTML tags can be used, and consider just using "pre" for your already formatted text. Or if that doesn't work, you can email a formatted document to me and I will copy it over here. #3: Narendra K - (narendra_k) (2011-03-03 08:13:33) I got biosdevname working on openSUSE 11.4 RC2 installed on PowerEdge R710. These are the observations - 1) Remove 70-persistent-net.rules in /etc/udev/rules.d/ 2) make sure that the ifcfg-ethN file in /etc/sysconfig/network is renamed to ifcfg-emN. Also, i observed that the ifcfg-ethN file did not have any state such as MAC address embedded. 3) Install latest version of biosdevname utility biosdevname-0.3.7 4) reboot the system and observe that the biosdevname suggested names are in place and the configured ifcfg-emN is up. Here is how the naming looks with the above changes - linux-bt6c:/etc/sysconfig/network # cat /etc/issue Welcome to openSUSE 11.4 "Celadon" - Kernel \r (\l). linux-bt6c: /etc/sysconfig/network # ifconfig em1 Link encap:Ethernet HWaddr 00:24:E8:2E:DE:FF inet addr:172.16.65.55 Bcast:172.16.127.255 Mask:255.255.192.0 inet6 addr: fe80::224:e8ff:fe2e: deff/64 Scope:Link inet6 addr: fc07:1::1:bb/64 Scope:Global UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:207460 errors: 0 dropped:0 overruns:0 frame:0 TX packets:2417 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:14024994 (13.3 Mb) TX bytes:253854 (247.9 Kb) Interrupt:36 Memory:d6000000- d6012800 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:92 errors:0 dropped:0 overruns:0 frame:0 TX packets:92 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:9602 (9.3 Kb) TX bytes:9602 (9.3 Kb) The system has 4 BCM5709 Lan-On-Motherboard ports, 1 single port 82572EI adapter on PCI slot 4, 1 dual port Intel 82576 adapter on PCI slot 3. The naming looks like this - linux-bt6c:/etc/sysconfig/network # ls /sys/class/net/ em1 em2 em3 em4 lo pci3p1 pci3p2 pci4p1 #4: Narendra K - (narendra_k) (2011-03-03 08:18:31) Onboard device names - em1 - ethernet-on-motherboard 1 em2 - ethernet-on-motherboard 2 PCI Add-in interface names - pci3p1 - pci<slot 3>p<port 1> pci3p2 - pci<slot 3>p<port 2> pci4p1 - pci<slot 4>p<port 1> -- openSUSE Feature: https://features.opensuse.org/311365
Feature changed by: Tomáš Chvátal (scarabeus_iv) Feature #311365, revision 10 Title: Include 71-biosdevname.rules to rename network interfaces based on chassis labels - openSUSE Distribution: New + openSUSE Distribution: Rejected by Tomáš Chvátal (scarabeus_iv) + reject reason: Mostly done by the code remembering proper reproducable + network device naming in SLE12 and newer. Priority Requester: Important Requested by: Narendra K - (narendra_k) Developer: jordan hargrave (jhargrave) Partner organization: openSUSE.org Description: On a Dell PowerEdge server with multiple add-in cards, the naming of the network interfaces is non-deterministic. This results in 'eth0' not mapping to "Embedded NIC 1" as labeled on the server chassis. This issue is seen on Dell PowerEdge 10G above. This feature addresses this issue by renaming network interfaces based on their location on the system motherboard. The naming policy it suggests are as follows - Embedded devices: em<port> Add-in PCI cards: pci<slot>p<port>_<virtual function instance> Please refer to "Consistent Network device naming-Name network interfaces to match chassis labels" (https://features.opensuse.org/310896). Business case (Partner benefit): openSUSE.org: This allows system administrators to refer to the network interfaces by names based on their location on the motherboard. The naming becomes deterministic and there is no state such as HWADDR embedded into the configuration files. Discussion: #1: Narendra K - (narendra_k) (2011-03-01 16:28:05) This request is for the inclusion of 71-biosdevname.rules which define how the rename happens. 71-biosdevname.rules looks like this - SUBSYSTEM!="net", GOTO="netdevicename_end" KERNEL!="eth*", GOTO=" netdevicename_end" ACTION!="add", GOTO="netdevicename_end" NAME=="?*", GOTO="netdevicename_end" # kernel command line "biosdevname={0|1}" can turn off/on biosdevname IMPORT{cmdline}="biosdevname" ENV{biosdevname}=="?*", ENV {UDEV_BIOSDEVNAME}="$env{biosdevname}" # ENV{UDEV_BIOSDEVNAME} can be used for blacklist/whitelist # but will be overwritten by the kernel command line argument ENV{UDEV_BIOSDEVNAME}=="0", GOTO=" netdevicename_end" ENV{UDEV_BIOSDEVNAME}=="1", GOTO=" netdevicename_start" # uncomment the next line for biosdevname to be off by default # GOTO=" netdevicename_end" LABEL="netdevicename_start" # using NAME= instead of setting INTERFACE_NAME, so that persistent # names aren't generated for these devices, they are "named" on each boot. PROGRAM="/sbin/biosdevname --policy physical -i %k", NAME="%c", OPTIONS+="string_escape=replace" LABEL="netdevicename_end" #2: Mark Cowley (mcowley) (2011-03-01 10:47:48) (reply to #1) Yikes, that is pretty jumbled together and hard to read. Could you please resubmit it formatted? HTML tags can be used, and consider just using "pre" for your already formatted text. Or if that doesn't work, you can email a formatted document to me and I will copy it over here. #3: Narendra K - (narendra_k) (2011-03-03 08:13:33) I got biosdevname working on openSUSE 11.4 RC2 installed on PowerEdge R710. These are the observations - 1) Remove 70-persistent-net.rules in /etc/udev/rules.d/ 2) make sure that the ifcfg-ethN file in /etc/sysconfig/network is renamed to ifcfg-emN. Also, i observed that the ifcfg-ethN file did not have any state such as MAC address embedded. 3) Install latest version of biosdevname utility biosdevname-0.3.7 4) reboot the system and observe that the biosdevname suggested names are in place and the configured ifcfg-emN is up. Here is how the naming looks with the above changes - linux-bt6c:/etc/sysconfig/network # cat /etc/issue Welcome to openSUSE 11.4 "Celadon" - Kernel \r (\l). linux-bt6c: /etc/sysconfig/network # ifconfig em1 Link encap:Ethernet HWaddr 00:24:E8:2E:DE:FF inet addr:172.16.65.55 Bcast:172.16.127.255 Mask:255.255.192.0 inet6 addr: fe80::224:e8ff:fe2e: deff/64 Scope:Link inet6 addr: fc07:1::1:bb/64 Scope:Global UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:207460 errors: 0 dropped:0 overruns:0 frame:0 TX packets:2417 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:14024994 (13.3 Mb) TX bytes:253854 (247.9 Kb) Interrupt:36 Memory:d6000000- d6012800 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:92 errors:0 dropped:0 overruns:0 frame:0 TX packets:92 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:9602 (9.3 Kb) TX bytes:9602 (9.3 Kb) The system has 4 BCM5709 Lan-On-Motherboard ports, 1 single port 82572EI adapter on PCI slot 4, 1 dual port Intel 82576 adapter on PCI slot 3. The naming looks like this - linux-bt6c:/etc/sysconfig/network # ls /sys/class/net/ em1 em2 em3 em4 lo pci3p1 pci3p2 pci4p1 #4: Narendra K - (narendra_k) (2011-03-03 08:18:31) Onboard device names - em1 - ethernet-on-motherboard 1 em2 - ethernet-on-motherboard 2 PCI Add-in interface names - pci3p1 - pci<slot 3>p<port 1> pci3p2 - pci<slot 3>p<port 2> pci4p1 - pci<slot 4>p<port 1> -- openSUSE Feature: https://features.opensuse.org/311365
participants (1)
-
fate_noreply@suse.de