Kiedy uruchamiam ifconfig -a
, dostaję tylko interfejsy lo i enp0s10 , a nie klasyczny eth0
Co oznacza enp0s10 ? Dlaczego nie ma eth0 ?
Kiedy uruchamiam ifconfig -a
, dostaję tylko interfejsy lo i enp0s10 , a nie klasyczny eth0
Co oznacza enp0s10 ? Dlaczego nie ma eth0 ?
Odpowiedzi:
To zmiana w sposobie, w jaki teraz udevd przypisuje nazwy do urządzeń Ethernet. Teraz twoje urządzenia używają „przewidywalnych nazw interfejsów”, które są oparte na ( i cytują źródła ):
- Nazwy zawierające numery indeksowe dostarczone przez Firmware / BIOS dla urządzeń pokładowych (przykład: eno1)
- Nazwy zawierające numery indeksów gniazd hotplug PCI Express dostarczone przez Firmware / BIOS (przykład: ens1)
- Nazwy zawierające fizyczne / geograficzne położenie złącza sprzętu (przykład: enp2s0)
- Nazwy zawierające adres MAC interfejsów (przykład: enx78e7d1ea46da)
- Klasyczne, nieprzewidywalne nazewnictwo ethX dla jądra (przykład: eth0)
Dlaczego ta zmiana została udokumentowana na stronie systemd freedesktop.org , wraz z metodą jej wyłączenia:
ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules
lub jeśli korzystasz ze starszych wersji:
ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules
The classic naming scheme for network interfaces applied by the kernel is to simply assign names beginning with "eth" to all interfaces as they are probed by the drivers. As the driver probing is generally not predictable for modern technology this means that as soon as multiple network interfaces are available the assignment of the names is generally not fixed anymore and it might very well happen that "eth0" on one boot ends up being "eth1" on the next. This can have serious security implications...
Odpowiedz na „Co oznacza enp0s10?” pytanie:
enp0s10:
| | |
v | |
en| | --> ethernet
v |
p0| --> bus number (0)
v
s10 --> slot number (10)
Źródło: udev-builtin-net_id.c na GitHub
...fN
na końcu nazwy karty sieciowej nie ma części, możemy wywnioskować, że liczba funkcji wynosi 0. Po przetłumaczeniu liczb na wartości szesnastkowe (10 = „a” w postaci szesnastkowej), wiemy, że enp0s10
oznacza to identyfikator urządzenia PCI 00:0a.0
.
ifconfig
jest przestarzałe. Myśleć o przeprowadzce doip
odiproute2
zaraz.