Логического имени для любого сетевого адаптера нет 16.04

Вопрос или проблема

Сегодня утром у меня нет сетевого подключения (вчера проблем не было) на настольном компьютере с версией 16.04. Я не могу напрямую вставить выводы команд по очевидным причинам, но постараюсь описать проблему.

lshw -C network отображает как беспроводную, так и ethernet-карты, но нет ни физического идентификатора, ни логического имени для любой из них.

Я попытался вручную добавить eth0 в /etc/network/interfaces следующим образом, думая/надеясь, что ifup назначит ей что-нибудь?!

auto eth0

iface eth0 inet dhcp

Когда я запускаю

$ifup eth0

Я получаю следующие ошибки:

"Невозможно найти устройство "eth0" Ошибка получения аппаратного адреса для eth0"

Как я могу присвоить логическое имя моим сетевым адаптерам?

Эта ошибка характерна для Ubuntu. Чтобы иметь возможность конфигурировать интерфейсы, используя команды ifup и ifdown или ifconfig up и ifconfig down, вам нужно добавить эти интерфейсы в файл:

/etc/network/interfaces

Откройте этот файл, используя

$nano /etc/network/interfaces

Вы увидите, что первая строка гласит:

interfaces(5) файл, используемый ifup(8) и ifdown(8)

так что добавьте нужный интерфейс в этот файл, затем перезапустите сетевую службу, и вы сможете запустить команду.

1 – Откройте файл для редактирования

2 – добавьте строку (с новой строки)

auto (имя_интерфейса_без_скобок)

3 – сохраните файл и выйдите

4 – $sudo service networking restart

5 – Попробуйте команды ifup или ifdown

Ответ или решение

Проблема с отсутствием логического имени для сетевого адаптера в Ubuntu 16.04 является распространенной и может быть вызвана несколькими факторами, такими как изменения в настройках сети или системные обновления. Рассмотрим, как можно решить эту проблему и восстановить сетевую функциональность.

Формулирование проблемы

Пользователь обнаружил утром отсутствие сетевого соединения, хотя накануне всё работало без сбоев. При выполнении команды lshw -C network сетевые карты обнаруживаются, но ни одна из них не имеет физического идентификатора или логического имени. Попытка вручную добавить интерфейс eth0 в файл конфигурации /etc/network/interfaces не решает проблему, и команда ifup eth0 выдает ошибку о невозможности найти устройство.

Исследование причин

  1. Изменения в номенклатуре сетевых интерфейсов: Ubuntu 16.04 может использовать новую схему именования сетевых интерфейсов, основанную на предсказуемых именах устройств (Predictable Network Interface Names). Например, вместо традиционного eth0 интерфейсы могут называться enp3s0 или аналогично в зависимости от оборудования.

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

Решение проблемы

  1. Проверка текущих имен интерфейсов:

    • Запустите команду ip link или ifconfig -a, чтобы отобразить список всех сетевых интерфейсов и их текущие имена. Это поможет определить новое логическое имя вашего интерфейса.
  2. Обновление файла конфигурации:

    • Откройте файл /etc/network/interfaces с помощью текстового редактора, например:
      sudo nano /etc/network/interfaces
    • Обновите конфигурацию, используя обнаруженное имя интерфейса, например:
      auto enp3s0
      iface enp3s0 inet dhcp
  3. Перезапуск сетевых служб:

    • Выполните команду для перезапуска сетевой службы:
      sudo service networking restart
  4. Дополнительные действия в случае неудачи:

    • Проверьте, загружены ли соответствующие модули драйверов с помощью lsmod.
    • Ознакомьтесь с системными логами через dmesg или journalctl -xe для обнаружения ошибок.

Заключение

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

Оцените материал
Добавить комментарий

Капча загружается...