f.zz.de
posts /

biosdevname - interface naming

Posted Thu 24 Mar 2016 05:25:51 PM CET Florian Lohoff in

Nachdem mir heute das interface naming bei Ubuntu/Trusty aufgefallen ist das seine interface so obskur wie "em1", "p5p4", "p10p1" nennt musste ich dem ganzen mal auf den Grund gehen.

Scheinbar hat SystemD einiges damit zu tun - Es gibt zumindest einen Standard um die interfaces zu benennen. Das ganze ist leider nur "halb schön" gelöst. Wer will schon ein interface namens ex01deadbeef02 weil systemd meint die MAC Adresse da reinzubasteln. Ansonsten wird es da irgendwann eine allgemein verfügbare neue enumerierung von interfaces geben.

Das ist aber nur ein hint das sich an der Ecke was ändert und ändern wird. Die namen bei Ubuntu kommen nicht aus dem SystemD sondern aus biosdevname.

Nach dem ersten "Urgs - was ist das denn" stellt sich raus das es das beste seit geschnitten Toastbrot ist.

Interfaces werden in "onboard" Ethernets unterschieden die durchnummeriert sowas wie em1 und em2 sind. Danach kommen die add-on Karten die nummeriert werden nach PCI Slot und Port. D.h. die 4 Port Karte in Slot 5 bekommt dann p5p1, p5p2, p5p3 und p5p4. Die 2 Port 10G Karte in Slot 20 ist dann p20p1, p20p2. Damit werden das mit einem mal Physisch und von Aussen Enumerierbare interfaces wie z.b. auf Cisco Switchen GigabitEthernet2/1/10.

Leider gibt es das ganze nicht als Debian paket sondern nur ein entsprechendes Ubuntu Paket. Das lässt sich zwar unter Jessie installieren, leider kommt das aber mit ein paar Defaults die unerklärt sind und das enumerieren der Onboard Karten verhindert. Nach ein bischen udev, initramfs-tools, installer, fidb, biosdevname magie kommt dann was brauchbares raus:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: em1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:25:90:81:44:94 brd ff:ff:ff:ff:ff:ff
3: em2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:25:90:81:44:95 brd ff:ff:ff:ff:ff:ff
4: p5p3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:1b:21:78:48:44 brd ff:ff:ff:ff:ff:ff
5: p5p4: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:1b:21:78:48:45 brd ff:ff:ff:ff:ff:ff
6: p5p1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:1b:21:78:48:46 brd ff:ff:ff:ff:ff:ff
7: p5p2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:1b:21:78:48:47 brd ff:ff:ff:ff:ff:ff
8: p20p1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:25:90:81:44:92 brd ff:ff:ff:ff:ff:ff
9: p20p2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:25:90:81:44:93 brd ff:ff:ff:ff:ff:ff