Сеть в НАЙС.ОС CLOUD: systemd-networkd и systemd-resolved¶
Для кого: администратор серверов НАЙС.ОС CLOUD, включая виртуальные машины.
Применимость: стандартный серверный профиль; перед изменениями проверьте фактические службы.
Уровень: от первого знакомства до эксплуатации.
В НАЙС.ОС CLOUD штатное управление сетевыми интерфейсами организовано средствами systemd-networkd, а разрешение имён — systemd-resolved. В поставке нет необходимости применять NetworkManager, netplan, ifupdown и другие сетевые конфигураторы. Межсетевой экран настраивается отдельным компонентом — iptables.
Изменение сети через SSH
Перенастройка интерфейса, маршрута по умолчанию или DNS может оборвать соединение. Для первого применения статического адреса и маршрутов рекомендуется консоль гипервизора, IPMI/KVM или облачная серийная консоль. Сохраните исходные файлы и проверьте возможность возврата до изменения сети.
Как взаимодействуют компоненты¶
| Компонент | За что отвечает | Где искать настройки |
|---|---|---|
| Ядро Linux | сетевые устройства, адреса, маршруты | ip addr, ip route, ip link |
| systemd-udevd | обнаружение устройств и назначение имён | udevadm, /usr/lib/systemd/network/*.link |
| systemd-networkd | DHCP, статические адреса, маршруты, виртуальные интерфейсы | /etc/systemd/network/*.network, *.netdev |
| systemd-resolved | DNS, домены поиска, DNS-серверы интерфейсов | resolvectl, /etc/systemd/resolved.conf |
| iptables | фильтрация трафика и NAT | iptables, ip6tables |
| cloud-init (если установлен) | первоначальная конфигурация облачного экземпляра | /etc/cloud, /var/log/cloud-init.log |
Настройки в /etc/systemd/network/ следует рассматривать как административную конфигурацию. Дистрибутивные профили также могут располагаться в /usr/lib/systemd/network/. Служба выбирает первый подходящий .network-файл по правилам сопоставления и лексикографического порядка имён. Следовательно, недостаточно просто создать файл — нужно выяснить, какой файл реально применён к интерфейсу.
Первый осмотр системы¶
cat /etc/os-release
ip -br link
ip -br address
ip -4 route
ip -6 route
networkctl list
systemctl is-active systemd-networkd
systemctl is-active systemd-resolved
Увидеть, какой конфигурационный файл применился:
В выводе networkctl status ens3 ищите поле Network File (либо соответствующую строку локализованного вывода). В реальной машине интерфейс может называться enp1s0, ens3, eth0 или иначе — не копируйте имя из примера вслепую.
Проверьте используемые сетевые профили:
find /etc/systemd/network /run/systemd/network /usr/lib/systemd/network \
-maxdepth 1 -type f \( -name '*.network' -o -name '*.netdev' \) -print 2>/dev/null
Особенность НАЙС.ОС
По сборочному рецепту systemd в поставке предусмотрен файл 99-dhcp-en.network. Его реальное содержимое зависит от Source-файла, который не входит в переданный архив SPEC. Поэтому нельзя без проверки утверждать, какие именно устройства или профили он охватывает.
Порядок проверки работоспособности¶
- Устройство существует:
ip -br linkпоказывает интерфейс. - Интерфейс управляется networkd:
networkctl status ens3содержит состояние и применённый конфигурационный файл. - Адрес назначен:
ip -br addr show dev ens3. - Маршрут есть:
ip -4 route get 1.1.1.1(не отправляет пакет). - Связь по IP проверена:
ping -c 3 1.1.1.1, если ICMP разрешён политиками. - DNS работает:
resolvectl query niceos.ruилиgetent ahostsv4 niceos.ru. - Прикладной протокол доступен:
curl -I --connect-timeout 5 https://niceos.ru/, если исходящий HTTPS разрешён iptables.
Отсутствие ответа на ping не всегда означает потерю связи: ICMP могут блокировать промежуточные фильтры, включая штатную политику OUTPUT DROP.
Практические руководства¶
- DHCP и обновление адреса
- Статический IPv4-адрес
- DNS и systemd-resolved
- Маршруты и несколько интерфейсов
- Cloud-init и сетевые профили
- Восстановление доступа к сети
- Диагностическая таблица команд
Логи и журналы¶
journalctl -u systemd-networkd -b --no-pager -n 100
journalctl -u systemd-resolved -b --no-pager -n 100
journalctl -b -p err --no-pager
journalctl -b ограничивает сообщения текущей загрузкой. Для сообщения об ошибке фиксируйте время, интерфейс, конфигурационный файл и последствия изменения.
Связанный раздел: iptables и управление доступом. Даже верно настроенные маршруты не гарантируют передачу пакетов, если правила фильтрации запрещают трафик.