Когда я запускаю ifconfig -a
, я получаю только интерфейсы lo и enp0s10 , а не классический eth0
Что значит enp0s10 ? Почему нет eth0 ?
Когда я запускаю ifconfig -a
, я получаю только интерфейсы lo и enp0s10 , а не классический eth0
Что значит enp0s10 ? Почему нет eth0 ?
Ответы:
Это изменение в том, как теперь udevd присваивает имена устройствам Ethernet. Теперь ваши устройства используют «Предсказуемые имена интерфейсов», которые основаны на ( и цитируют источники ):
- Имена, включающие индексные номера встроенного ПО / BIOS для встроенных устройств (пример: eno1)
- Имена, включающие встроенное ПО / BIOS, снабженные индексными номерами слотов горячего подключения PCI Express (пример: ens1)
- Имена, включающие физическое / географическое расположение соединителя оборудования (пример: enp2s0)
- Имена, включающие MAC-адрес интерфейсов (пример: enx78e7d1ea46da)
- Классическое, непредсказуемое именование ядра ethX для ядра (пример: eth0)
Почему это изменилось, описано на странице systemd freedesktop.org , вместе с методом, позволяющим отключить это:
ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules
или если вы используете более старые версии:
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...
Ответ на вопрос "Что означает enp0s10?" вопрос:
enp0s10:
| | |
v | |
en| | --> ethernet
v |
p0| --> bus number (0)
v
s10 --> slot number (10)
Источник: udev-builtin-net_id.c на GitHub
...fN
в конце имени сетевой карты нет части, мы можем сделать вывод, что номер функции равен 0. После перевода чисел в шестнадцатеричное (10 = «a» в шестнадцатеричном формате) мы знаем, что это enp0s10
означает идентификатор устройства PCI 00:0a.0
.
ifconfig
не рекомендуется. Подумайте о переходе наip
от вiproute2
ближайшее время .