Вопрос или проблема
24.04 сервер с несколькими сетевыми интерфейсами. networkctl показывает:
user@servername:~$ sudo networkctl list
IDX LINK TYPE OPERATIONAL SETUP
1 lo loopback carrier unmanaged
2 enp3s0 ether degraded unmanaged
3 enp5s0 ether routable configured
4 enp0s31f6 ether off unmanaged
4 links listed.
Как мне заставить enp3s0 быть “managed” или “configured”, чтобы я мог что-то с ним сделать?
добавлен файл /etc/systemd.network/enp3s0.network, который содержит:
[Match]
Name=enp3s0
[Network]
DHCP=ipv4
LinkLocalAddressing=no
затем выполнено
sudo systemctl restart systemd-networkd
и enp3s0 работает!
Новый подход к сетям очень запутанный. ifconfig, ip, networkctl, nmcli, почему так много разных способов решения одной задачи?
Ответ или решение
Для решения проблемы с сетевым интерфейсом, отображающимся как "неуправляемый" (unmanaged) на сервере Ubuntu 24.04, следуйте данному руководству.
Шаг 1: Понимание текущей конфигурации
На сервере имеется несколько сетевых интерфейсов. Команда networkctl list
выдает такие результаты:
lo
(loopback) иenp0s31f6
находятся в состоянии "unmanaged".enp3s0
в состоянии "degraded", тоже "unmanaged".enp5s0
в состоянии "routable" и "configured".
Цель состоит в том, чтобы перевести интерфейс enp3s0
в управляемое состояние, чтобы с ним можно было выполнять различные сетевые операции.
Шаг 2: Конфигурация интерфейса
Вы уже добавили файл конфигурации /etc/systemd/network/enp3s0.network
со следующим содержимым:
[Match]
Name=enp3s0
[Network]
DHCP=ipv4
LinkLocalAddressing=no
Этот файл указывает системе настроить интерфейс enp3s0
с использованием DHCP для получения IPv4-адреса и отключает ссылочный адрес.
Шаг 3: Перезапуск службы
После редактирования конфигурационного файла, необходимо применить изменения:
sudo systemctl restart systemd-networkd
После этого, интерфейс enp3s0
должен перейти в управляемое состояние и начать нормально функционировать.
Объяснение разнообразия сетевых инструментов
Ранее существовал ряд инструментов, таких как ifconfig
, для управления сетями. С обновлениями в Linux они были частично заменены более современными утилитами — ip
и networkctl
с systemd-networkd
.
ifconfig
— устаревший инструмент, заменен наip
.ip
— более мощный инструмент для управления сетевыми интерфейсами.networkctl
— частьsystemd
, который предоставляет информацию о состоянии сетевых ссылок.nmcli
— командная оболочка для NetworkManager, более применим к десктопам.
Каждый инструмент имеет свои особенности и применим в разных сценариях. Современные инструменты лучше справляются с управляемыми сетями, предоставляя больше функционала и гибкости.
Вывод
Для успешного управления сетевыми интерфейсами на современных системах Ubuntu, нужно использовать актуальные инструменты и подходы, такие как systemd-networkd
. Следуя приведенным шагам, вы смогли настроить enp3s0
и обеспечить его работоспособность. Важно регулярно обновлять свои знания о современных инструментах и методах управления сетью, чтобы эффективно решать возникающие задачи.