Почему мой сетевой интерфейс называют enp0s25 вместо eth0?

Много моих сценариев прекратило работать после установки Ubuntu 15.10, и я испытываю затруднения при запоминании этого нового имени, поскольку я привык к ethx и wlanx в течение многих лет. Существует ли причина этого изменения? Я должен привыкнуть к этому, или я могу просто переименовать его и вернуться к старому доброму 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
126
задан 6 December 2017 в 17:45

3 ответа

Это известно как Предсказуемое именование сетевого интерфейса и является частью systemd , на которую Ubuntu переходит с версии 15.04.

Основная идея заключается в том, что в отличие от предыдущей схемы именования * nix, где проверка оборудования происходит в произвольном порядке и может меняться между перезагрузками, здесь имя интерфейса зависит от физического расположения оборудования и может быть предсказано / угадано , просмотрев lspci или lshw вывод . И наоборот, мы можем угадать информацию о его физическом положении в системе pci. В вашем случае это будет шина pci 0, слот 2.Согласно статье на freedesktop.org , на самом деле существует 3 способа присвоения имени интерфейса: на основе BIOS / прошивки для встроенных карт, на основе информации PCI и на основе MAC-адреса интерфейса. Другие примеры см. Здесь .

Согласно странице freedesktop.org одной из причин перехода на предсказуемое именование является то, что классическое соглашение об именах может привести к рискам безопасности программного обеспечения в мультиинтерфейсных системах, когда устройства добавляются и удаляются при загрузке. Кроме того, согласно комментарию Сэма Хейнса : «На большом сервере с множеством портов Ethernet это бесценно: вы можете сразу определить, какой интерфейс к какому порту идет, а добавление или удаление оборудования не имеет значения. не меняем названия других портов ".

См. Как переименовать сетевой интерфейс в 15.10 на случай, если вы решите вернуться к другой версии именования.

120
ответ дан 22 November 2019 в 22:59

FWIW файл freedesktop.org PredictableNetworkInterfaceNames ссылается на комментарии исходного файла как на канонические, но этот файл был изменен для удаления комментариев - см. https://github.com/systemd/systemd/pull/ 12518 .

1
ответ дан 22 November 2019 в 22:59

Вот краткое исправление, которое я использую в системах на основе Debian и RHEL

#Правка /etc/grub/default

Шаг 1. ) Добавьте это в строку ниже "net.ifnames=0 biosdevname=0"

GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"

Шаг 2). Обновление GRUB

Это зависит от вашей операционной системы.

Ubuntu/Mint:

update-gub

Centos/RHEL

grub2-mkconfig -o /boot/grub2/grub.cfg

Source: http://realtechtalk.com/Linux_How_To_Change_NIC_Name_to_eth0_instead_of_enps33_or_enp0s25-2303-articles

1
ответ дан 5 January 2021 в 22:46

Другие вопросы по тегам:

Похожие вопросы: