Vraag Waarom heet mijn netwerkinterface enp0s25 in plaats van eth0?


Veel van mijn scripts zijn gestopt met werken na het installeren van Ubuntu 15.10 en ik heb problemen met het onthouden van deze nieuwe naam zoals ik jarenlang gewend was aan ethx en wlanx. Is er een reden voor deze verandering? Moet ik hier aan wennen of kan ik het gewoon hernoemen en teruggaan naar de goede oude eth0?

$ ifconfig

enp0s25   Link encap:Ethernet  HWaddr 77:5a:5e:a6:86:d5  
      inet addr:192.168.31.239  Bcast:192.168.31.255  Mask:255.255.255.0
      inet6 addr: fe80::725a:b6ff:fea6:86d7/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:4833 errors:1332 dropped:0 overruns:0 frame:666
      TX packets:5589 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:3266446 (3.2 MB)  TX bytes:1046654 (1.0 MB)
      Interrupt:20 Memory:d3500000-d3520000

84
2017-11-30 19:13


oorsprong


zien deze die heeft ook een verdere link naar meer details. - Doug Smythies
Ooooooooooooooor je scripts voor eens en altijd repareren en de referentie verwijderen (en wijzigen voor een commando om de naam van het apparaat te bepalen) ;-) (hier zijn enkele aanwijzingen: askubuntu.com/questions/396837/... ) - Rinzwind
@Rinzwind Dat is geweldig idee. - Mike
@Mike mijn baas (= lead-coder) is het daar altijd mee eens, maar dan gebruikt hij altijd hard gecodeerde paden en apparaten ... en ik scheld hem keer op keer;) - Rinzwind


antwoorden:


Dit staat bekend als Voorspelbare netwerkinterface-naamgeving en maakt deel uit van systemd, waarnaar Ubuntu vanaf versie 15.04 is overgestapt.

Basisidee is dat in tegenstelling tot het vorige * nix naamgevingsschema waarbij het zoeken naar hardware in willekeurige volgorde plaatsvindt en kan veranderen tussen opnieuw opstarten, de interfacenaam hier afhankelijk is van de fysieke locatie van de hardware en kan worden voorspeld / geraden door te kijken naar lspci of lshw uitgang. Omgekeerd kunnen we informatie over zijn fysieke positie in het pci-systeem raden. In jouw geval zou dat pci bus 0, slot 2 zijn. Volgens het artikel freedesktop.org, er zijn eigenlijk 3 manieren waarop de interfacenaam is toegewezen: op basis van BIOS / Firmware voor kaarten aan boord, op basis van PCI-informatie en op basis van het MAC-adres van de interface. Raadpleeg hier voor andere voorbeelden.

Volgens de freedesktop.org pagina een van de redenen om over te schakelen op voorspelbare naamgeving is dat klassieke naamgevingsconventie kan leiden tot softwarebeveiligingsrisico's in multi-interface systemen wanneer apparaten worden toegevoegd en verwijderd tijdens het opstarten. Ook volgens de reactie door Sam Hanes, "Op een grote server met veel Ethernet-poorten is het van onschatbare waarde: je kunt meteen zien welke interface naar welke poort gaat en het toevoegen of verwijderen van hardware verandert niets aan de namen van andere poorten."

Zien Hoe de netwerkinterface in 15.10 te hernoemen in het geval u besluit terug te gaan naar de andere naamgeving.


80
2017-11-30 19:29



Ik zie weinig ironie in woord "voorspelbaar" :), bedankt voor de aanwijzers. - Mike
"voorspelbaar", ja, natuurlijk. Ik heb ethernet-verbindingen na de upgrade naar 15.10 (schone installatie, oud / thuis). Waarom API's en conventies breken? Nu moet ik uitvinden wat er faalt. Ik ben erg boos op dit :( - gorlok
falen is voorspelbaar, denk ik;) - Anwar
eh, vertel dat aan de systemd ontwikkelaars, jongens. - Sergiy Kolodyazhnyy
Voorspelbaar benoemen is niet erg handig op desktopsystemen met slechts één interface, en in dat geval is het een beetje onaangenaam. Op een grote server met veel Ethernet-poorten is het van onschatbare waarde: je kunt meteen zien welke interface naar welke poort gaat en het toevoegen of verwijderen van hardware verandert de namen van andere poorten niet. Dat is het geval waar het voor is ontworpen. - Sam Hanes