Как настроить systemd-networkd в Linux для проводного Ethernet-соединения

systemd-networkd — это встроенный в systemd сетевой менеджер для настройки Ethernet-соединений, адресов, маршрутов, мостов, VLAN и других сетевых устройств. Для базового проводного подключения настройка проста: определите интерфейс, создайте файл .network, убедитесь, что другой менеджер не использует тот же интерфейс, запустите systemd-networkdи проверьте результат.

В этом руководстве используется DHCP на проводном интерфейсе Ethernet. Если вы подключены к машине через SSH, используйте локальную консоль или внеполосное управление, прежде чем переключаться между сетевыми менеджерами, поскольку переключение может временно разорвать соединение.

1. Проверьте свой Ethernet-интерфейс и текущий сетевой менеджер.

Для начала перечислите ссылки, о которых знает systemd:

networkctl list

Найдите проводной интерфейс, обычно он называется, например enp3s0, , eno1, или eth0. Вы также можете запустить ip link. Не копируйте пример имени интерфейса вслепую.

В терминале Linux отображается вывод команды networkctl list с выделенным интерфейсом Ethernet enp3s0.

Далее проверьте, активен ли NetworkManager:

systemctl status NetworkManager

NetworkManager и systemd-networkd могут сосуществовать, если они управляют разными интерфейсами, но не следует позволять им обоим управлять одним и тем же Ethernet-соединением. В текущей документации systemd.network объясняется, как .networkфайлы сопоставляют интерфейсы и как networkd определяет права собственности.

Проверка работы NetworkManager в терминале Linux и отображение команды для его отключения перед передачей интерфейса systemd-networkd.

2. Создайте сетевой профиль DHCP.

Профили локальных администраторов должны находиться в /etc/systemd/network/каталоге `/etc/admin 20-wired.network...

sudo mkdir -p /etc/systemd/network
sudo nano /etc/systemd/network/20-wired.network

Для обычного Ethernet-соединения, получающего адрес от маршрутизатора или DHCP-сервера, используйте:

[Match]
Name=enp3s0

[Network]
DHCP=yes

Замените enp3s0на ваш фактический интерфейс. Файлы должны заканчиваться на .network. Когда несколько файлов соответствуют ссылке, systemd-networkd использует первый соответствующий файл в алфавитно-цифровом порядке, поэтому конкретное имя, например, 20-wired.networkпроще для понимания, чем общее универсальное имя.

Редактор Nano отображает профиль Ethernet systemd-networkd с параметром Match Name enp3s0 и включенным DHCP.

Дополнительно: используйте статический IPv4-адрес.

Если устройству требуется фиксированный адрес, замените его DHCP=yesзначениями, подходящими для вашей сети:

[Match]
Name=enp3s0

[Network]
Address=192.168.1.50/24
Gateway=192.168.1.1
DNS=1.1.1.1
DNS=9.9.9.9

Не используйте повторно эти примеры адресов, если они не соответствуют вашей подсети. См. официальные справочные документы systemd.networkDHCP= , Address=а также более подробные параметры маршрутизации.Gateway=DNS=

3. Включите systemd-networkd

После того, как профиль будет готов, включите networkd и запустите его немедленно:

sudo systemctl enable --now systemd-networkd

Если другой службой в данный момент управляет тем же интерфейсом Ethernet, выполните переключение с локальной консоли. Для хоста, полностью переключающегося с NetworkManager, вы можете остановить и отключить его с помощью:

sudo systemctl disable --now NetworkManager

Не отключайте NetworkManager, если он вам все еще нужен для Wi-Fi или других интерфейсов. systemd-networkdОн настраивает IP-сети, но для аутентификации по Wi-Fi обычно требуется отдельный компонент, такой как iwd или wpa_supplicant.

Включение systemd-networkd в терминале Linux с помощью команды systemctl enable --now

4. При необходимости настройте DNS с помощью systemd-resolved.

systemd-resolvedЭто не является обязательным требованием для самого networkd, но он хорошо интегрируется с networkd и может использовать DNS-серверы, полученные через DHCP. Если ваш дистрибутив еще не использует другой резолвер, включите его:

sudo systemctl enable --now systemd-resolved

В документации systemd-resolved рекомендуется создавать ссылку /etc/resolv.confна его файл-заглушку, если resolved является системным резолвером. Проверьте это в первую очередь:

readlink -f /etc/resolv.conf

Если вы намеренно хотите, чтобы systemd-resolved предоставлял resolv.conf, используйте:

sudo ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf

Не заменяйте, /etc/resolv.confесли ваш дистрибутив или другой инструмент DNS намеренно управляет этим.

В терминале Linux включается systemd-resolved, выполняется связывание resolv.conf с заглушкой резолвера и проверяется статус resolvectl.

5. Перезагрузите конфигурацию и перенастройте интерфейс.

После редактирования .networkфайла перезагрузите конфигурацию networkd. Затем вы сможете явно перенастроить целевое соединение:

sudo networkctl reload
sudo networkctl reconfigure enp3s0

Замените enp3s0на имя вашего интерфейса. В официальном руководстве по networkctl описаны обе команды. Полная systemctl restart systemd-networkdперезагрузка также приводит к обновлению службы, но networkctlобычно является более целенаправленным вариантом.

В терминале Linux отображается профиль systemd-networkd, за которым следуют команды networkctl reload и reconfigure.

6. Убедитесь, что systemd-networkd работает.

Проверьте состояние интерфейса:

networkctl status enp3s0

Для корректного DHCP-соединения вы должны увидеть, что канал настроен с IP-адресом, шлюзом по умолчанию и, как правило, информацией DNS.

Вывод команды networkctl status показывает, что enp3s0 настроен, доступен для маршрутизации и ему назначен IPv4-адрес, шлюз и DNS-сервер.

Затем подтвердите маршрутизацию и подключение:

ip route
ping -c 3 1.1.1.1

Если пинг по IP-адресу работает, но веб-сайты или имена хостов не разрешаются, проверьте DNS с resolvectl query example.comпомощью systemd-resolved. Если интерфейс остается пустым unmanaged, перепроверьте [Match]имя и убедитесь, что другой сетевой менеджер не претендует на то же устройство.

Проверка systemd-networkd в терминале Linux с помощью networkctl status, ip route и результатов успешного выполнения команды ping.

Для сложных настроек, таких как мосты, объединения каналов, VLAN, туннели или виртуальные устройства, см. официальную документацию по службе systemd-networkd и соответствующие systemd.netdevсправочные systemd.linkматериалы.

Оставить комментарий

Как сканировать QR-коды на настольном компьютере с Linux

Как сканировать QR-коды на настольном компьютере с Linux

Сканируйте QR-коды в Linux с помощью CoBang, используя веб-камеру или файл изображения. См. варианты установки, шаги настройки и решения проблем с доступом к камере Flatpak.

Как изменить настройки веб-камеры в Linux с помощью Cameractrls

Как изменить настройки веб-камеры в Linux с помощью Cameractrls

Изменяйте настройки веб-камеры в Linux с помощью Cameractrls: настраивайте экспозицию, цвет, подавление мерцания и другие поддерживаемые параметры, а затем проверяйте совместимые видеорежимы.

Как установить PhpStorm на Linux: Toolbox, Tar.gz, Snap и AUR

Как установить PhpStorm на Linux: Toolbox, Tar.gz, Snap и AUR

Установите PhpStorm на Linux с помощью JetBrains Toolbox или автономного архива tar.gz, а также через Snap и Arch AUR. Java уже включена в комплект.

Как создать резервную копию CD-ROM в формате ISO в Linux

Как создать резервную копию CD-ROM в формате ISO в Linux

Создайте образ CD-ROM ISO в Linux с помощью GNOME Disks или dd. Определите оптический привод, отслеживайте процесс копирования, проверяйте образ и узнавайте, когда поврежденный диск или аудиодиск требует использования другого инструмента.

Как вырезать изображение в Linux с помощью GIMP

Как вырезать изображение в Linux с помощью GIMP

Удаление фона фотографии в Linux с помощью GIMP: обведите контур объекта, удалите выделенный фон, сохранив прозрачность, и экспортируйте многоразовый PNG-файл.

Как установить Cisco Packet Tracer на Linux

Как установить Cisco Packet Tracer на Linux

Загрузите Cisco Packet Tracer 9.0.1 для Ubuntu 64-бит, установите DEB-пакет с помощью APT, примите лицензионное соглашение в Терминале и войдите в систему, чтобы начать лабораторную работу.

Скачайте FlightGear бесплатно: официальное руководство по установке

Скачайте FlightGear бесплатно: официальное руководство по установке

Скачайте FlightGear бесплатно с официального сайта. Сравните пакеты для Windows, macOS и Linux, установите файлы данных и совершите свой первый полет.

Настольное приложение Google Tasks: как им пользоваться на компьютере

Настольное приложение Google Tasks: как им пользоваться на компьютере

Откройте Google Задачи в браузере, добавьте ярлык Chrome или запустите приложение, и управляйте задачами с указанием даты через Календарь и Gmail.

OKSampler: Бесплатный и простой музыкальный сэмплер для клавишных ритмов.

OKSampler: Бесплатный и простой музыкальный сэмплер для клавишных ритмов.

OKSampler сопоставляет MP3-клипы с клавишами клавиатуры и может зацикливать аудио. Узнайте, что делает эта старая бесплатная программа, на чем заканчиваются ее старые функции и что нужно проверить перед загрузкой.

Как установить Linux Mint Debian Edition 5 «Elsie» с USB-накопителя

Как установить Linux Mint Debian Edition 5 «Elsie» с USB-накопителя

Загрузите и проверьте архивный ISO-образ LMDE 5, создайте загрузочный USB-накопитель и выберите безопасные параметры установки. Поддержка Elsie прекращена; ознакомьтесь с текущей версией LMDE.