Обзор
systemd-networkd является ключевым компонентом systemd для настройки и управления сетевыми интерфейсами. Он работает на основе конфигурационных файлов и помогает управлять сложными сетевыми средами последовательным и предсказуемым образом.
Основные возможности
- Декларативная конфигурация: определение сетевых настроек через файлы `.network`
- Поддержка различных интерфейсов: Ethernet, Wi-Fi, мосты, агрегация каналов (bonding), VLAN и т.д.
- Встроенные функции клиента/сервера DHCP
- Поддержка статических IP-адресов и настроек маршрутизации
- Тесная интеграция со службами systemd
Основные опции
systemd-networkd в основном управляется как служба через systemctl, но имеет несколько опций, которые можно использовать при прямом запуске.
Общие опции
Сгенерированная команда:
Комбинируйте команды.
Описание:
`systemd-networkd` Запускает команду.
Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.
Примеры использования
systemd-networkd в основном управляется как служба с помощью команды systemctl. Ниже приведены типичные примеры использования.
Включение и запуск службы systemd-networkd
sudo systemctl enable systemd-networkd.service
sudo systemctl start systemd-networkd.service
Включает автоматический запуск службы при загрузке системы и немедленно запускает ее.
Проверка состояния службы systemd-networkd
sudo systemctl status systemd-networkd.service
Проверяет текущее состояние службы systemd-networkd.
Перезагрузка настроек сети после изменений
sudo systemctl reload systemd-networkd.service
После изменения файлов `.network` перезагружает настройки без перезапуска службы.
Проверка состояния сети с помощью networkctl
networkctl status
networkctl — это утилита, отображающая состояние сетевых интерфейсов, управляемых systemd-networkd.
Проверка корректности конфигурационных файлов
sudo systemd-networkd --test
Проверяет синтаксические ошибки и другие проблемы перед применением новых файлов `.network`.
Советы и предостережения
Советы и моменты, на которые следует обратить внимание для эффективного использования systemd-networkd.
Пути к конфигурационным файлам
systemd-networkd считывает файлы `.network` из следующих каталогов. Файлы в каталогах с меньшим числовым индексом имеют более высокий приоритет.
- /etc/systemd/network/: Пользовательские настройки (самый высокий приоритет)
- /run/systemd/network/: Настройки, созданные во время выполнения (например, клиент DHCP)
- /usr/lib/systemd/network/: Настройки по умолчанию дистрибутива (самый низкий приоритет)
Конфликты с другими сетевыми менеджерами
Одновременная активация systemd-networkd с другими сетевыми менеджерами, такими как NetworkManager или netplan, может привести к конфликтам. Как правило, рекомендуется активировать только один сетевой менеджер в системе.
- Не использовать одновременно с NetworkManager
- При необходимости отключить другие сетевые менеджеры (например, `sudo systemctl disable NetworkManager.service`)
Отладка и проверка журналов
При возникновении проблем важно проверять журналы systemd-networkd с помощью `journalctl`.
- Проверка журналов службы: `journalctl -u systemd-networkd.service`
- Проверка журналов в реальном времени: `journalctl -u systemd-networkd.service -f`
- Для подробных журналов используйте опцию `--debug` или установите `LogLevel=debug` в `/etc/systemd/systemd-networkd.conf`