Способы оплаты Abuse

Как задать статический IP в Ubuntu 22.04

28.05.2025, 18:38

Иногда устройству в сети нужен постоянный IP-адрес — например, если вы настраиваете сервер, VPN или систему хранения. В этой статье разберём, как закрепить IP-адрес за устройством в Ubuntu 22.04 с помощью утилиты Netplan.

Что такое статический IP и зачем он нужен

Всякий раз, когда вы подключаетесь к сети, устройству автоматически присваивается IP — чаще всего временный, выданный сервером DHCP (например, роутером). Такой адрес может поменяться после перезагрузки или через день-два, и это нормально для ноутбуков, телефонов и других клиентских устройств.

Но если вы настраиваете сервер, которому важно быть на связи по одному и тому же адресу — без статического IP не обойтись. Представьте, что вы подняли веб-сайт, настроили доступ по домену, а IP внезапно поменялся. Сайт станет недоступен. То же самое касается SSH, файловых хранилищ или API.

Виды IP

→ Статический IP задаётся вручную. Он всегда остаётся одним и тем же. Это надёжно, но требует внимания: нельзя просто так воткнуть адрес, нужно быть уверенным, что он свободен.
→ Динамический IP выдаётся автоматически. Удобно, но нестабильно для задач, где важна постоянная связность.
→ Резервирование IP — компромиссный вариант. IP по-прежнему раздаёт DHCP, но привязывает его к MAC-адресу. Работает только если вы управляете маршрутизатором.

Настройка IP через Netplan

Netplan — это инструмент, с помощью которого Ubuntu с версии 18.04 настраивает сеть. Он использует конфигурационные файлы в формате YAML и позволяет задавать статический IP напрямую.

Шаг 1. Узнайте имя сетевого интерфейса

В терминале выполните:

ip a

Найдите активный интерфейс — он может называться enp0s3, eth0 или иначе.

Шаг 2. Откройте конфигурацию Netplan

Файлы находятся в папке /etc/netplan/. Обычно это 00-installer-config.yaml или 01-network-manager-all.yaml.

Откройте нужный файл на редактирование:

sudo nano /etc/netplan/01-network-manager-all.yaml

Вставьте пример конфига:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp0s3:
      dhcp4: no
      addresses: [192.168.1.100/24]
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]

Обратите внимание:

→ renderer: networkd — если вы работаете без графики, NetworkManager — если с ней.

→ addresses: задаём нужный IP и маску.

→ routes: указываем шлюз по умолчанию.

→ nameservers: прописываем DNS-серверы.

Важно: следите за отступами! YAML этого не прощает.

Шаг 3. Примените настройки

sudo netplan apply

Если что-то пошло не так, добавьте --debug, чтобы увидеть подробности:

sudo netplan apply --debug

Проверьте результат:

ip a show enp0s3
ping 8.8.8.8