Ubuntu Ubuntu Linux

Ubuntu Linux: сетевая карта меняет имя после обновления системы

  • Обновлено
  • Чтение ≈ 3 минуты
  • Нужны права администратора

Краткий ответ

После обновления Ubuntu сетевой интерфейс может поменять имя: например, enp3s0 превратился в enp4s0. Это возможно при изменении схемы именования, топологии PCI или настроек udev; особенно опасно для удалённого сервера, где старое имя записано в Netplan.

В этой статье
  1. Что означает проблема и кому подходит инструкция
  2. Возможные причины и отличительные признаки
  3. Диагностика и пошаговое устранение
  4. Как убедиться, что неисправность устранена
  5. Если результат не получен

#Что означает проблема и кому подходит инструкция

После обновления Ubuntu сетевой интерфейс может поменять имя: например, enp3s0 превратился в enp4s0. Это возможно при изменении схемы именования, топологии PCI или настроек udev; особенно опасно для удалённого сервера, где старое имя записано в Netplan.

#Возможные причины и отличительные признаки

Возможная причинаКак узнатьЧто делать
Изменилась привязка PCIПредсказуемое имя интерфейса связано с расположением устройства.MAC тот же, а имя другое.Проверить настройки соединения и сетевого описания.
Файл Netplan всё ещё использует прежний идентификаторКонфигурация не назначает адрес новому устройству.ip link показывает новое имя, а /etc/netplan/*.yaml — старое.Исправить точное соответствие после резервной копии.
Имя закреплено через udevСтарое пользовательское правило больше не совпадает.Есть собственные файлы .link или правила udev.Проверить правило и условия его применения.

#Диагностика и пошаговое устранение

  1. 1. Обеспечьте запасную консольНе меняйте сеть удалённо без доступа через панель провайдера, IPMI, монитор или консоль ВМ. Сначала запишите внешний IP и настройки маршрута. Во время netplan apply SSH-соединение может разорваться; Ubuntu Server позволяет проверить часть изменений через netplan try с автоматическим возвратом по тайм-ауту, однако это не заменяет резервный доступ.
  2. Команды диагностические; новые имена интерфейсов смотрите в первом столбце
    Linux · Терминал (Bash)Команда
    Команды диагностические; новые имена интерфейсов смотрите в первом столбце.
    ip -br link
    ip -br addr
    ip route
  1. 2. Установите соответствие устройства по MACПосмотрите ip -br link и данные из /sys/class/net/ИМЯ/address. MAC-адрес помогает отличить тот же физический адаптер от другого. Не переписывайте конфигурацию под адаптер docker0, veth или loopback.
  2. Используйте текущее имя интерфейса, определённое по выводу
    Linux · Терминал (Bash)Команда
    Используйте текущее имя интерфейса, определённое по выводу.
    ip -br link
    ls -l /sys/class/net/
  1. 3. Узнайте, кто управляет интерфейсомВ Ubuntu может использоваться Netplan с backend systemd-networkd или NetworkManager. Прочитайте конфигурацию и networkctl list/nmcli device status при наличии. Если облачная ВМ генерирует YAML через cloud-init, ручная правка может быть переписана.
    Linux · Терминал (Bash)КомандаНужен sudo
    Вторые две команды могут быть недоступны при другом сетевом менеджере.
    sudo netplan get
    networkctl list
    nmcli device status
  1. 4. Найдите ссылку на старое имяПрочитайте файлы /etc/netplan/*.yaml и любые собственные правила .link. Не переименовывайте сети через грубую подстановку строки по всей системе; адрес, маршрут и VLAN должны остаться привязаны к правильной карте. Снимите копию только тех файлов, которые собираетесь редактировать.
  2. Слово старое_имя замените реальным; в выводе могут быть чувствительные сетевые параметры
    Linux · Терминал (Bash)КомандаНужен sudo
    Слово старое_имя замените реальным; в выводе могут быть чувствительные сетевые параметры.
    sudo grep -R -n "старое_имя" /etc/netplan /etc/systemd/network 2>/dev/null
    sudo ls -l /etc/netplan/
  1. 5. Проверьте синтаксис, не применяя сеть сразуПосле адресной правки YAML сначала выполните sudo netplan generate; он проверяет создание конфигураций, но сам по себе не гарантирует связь. При возможности используйте sudo netplan try, подтвердив работоспособность в лимит времени, затем сохраняйте настройку. На сервере без консоли не запускайте проверку, которая может отрезать сеть.
    Linux · Терминал (Bash)С осторожностьюНужен sudo
    Генерирует конфигурацию, но не применяет её к интерфейсу.
    sudo netplan generate

    Команда может изменить состояние системы или её настройки. Проверьте параметры и последствия перед запуском.

  1. 6. Проверьте реальную сеть после загрузкиКогда безопасно проверить, сравните активный интерфейс, присвоенный IP, маршрут и разрешение имён, затем повторите после перезагрузки. Если имя вновь сменилось, проверьте PCI/BIOS/виртуальные устройства и созданные правила udev; ручное закрепление по MAC требует отдельного проекта, особенно при смене сетевых карт.
  2. Проверка адреса, маршрута и DNS; без автоматического переименования
    Linux · Терминал (Bash)Команда
    Проверка адреса, маршрута и DNS; без автоматического переименования.
    ip -br addr
    ip route
    getent ahostsv4 example.com

#Как убедиться, что неисправность устранена

Работа завершена, если на новом имени устойчиво поднимается правильный интерфейс, адрес и маршрут, а после перезагрузки восстановлен внешний доступ. Одного отображения link UP недостаточно.

#Если результат не получен

Не повторяйте опасные действия наугад. Сохраните точную формулировку ошибки, вывод диагностики без секретов, версию Ubuntu и данные о затронутом компоненте. Верните лишь собственные изменения из резервной копии; если затронута загрузка, диски или рабочий сервер, воспользуйтесь консолью восстановления либо помощью администратора.

Так эту ошибку тоже называют

Источники и обновления

Последнее обновление статьи: 2 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.