Gymterview
middle

Как настроить сеть в Ubuntu?

В Ubuntu 24.04 для настройки сети используется Netplan — декларативная система конфигурации, генерирующая конфигурацию для бэкенда (systemd-networkd на серверах или NetworkManager на десктопах).

Конфигурация Netplan

Пример /etc/netplan/01-network.yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: true
    ens34:
      addresses:
        - 192.168.1.100/24
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses:
          - 8.8.8.8
          - 8.8.4.4
        search:
          - example.com

Применение конфигурации

Пример
sudo netplan try       # Применить с откатом через 120 секунд
sudo netplan apply     # Применить конфигурацию
sudo netplan generate  # Сгенерировать (для отладки)

Файл /etc/hosts

Локальное разрешение имён (имеет приоритет над DNS):

Пример
127.0.0.1       localhost
127.0.1.1       myserver
192.168.1.10    db.local postgres.local
192.168.1.20    redis.local

DNS в Ubuntu 24.04

DNS управляется через systemd-resolved:

Пример
resolvectl status                  # Показать текущие настройки DNS
sudo resolvectl flush-caches       # Очистить DNS-кеш

Важно для Java-разработчика

JVM использует собственный DNS-резолвер и по умолчанию кеширует DNS-записи. Настраивается через свойства networkaddress.cache.ttl и networkaddress.cache.negative.ttl в файле $JAVA_HOME/conf/security/java.security или программно.

На собеседовании: тему сети спрашивают редко, но ожидают знание /etc/hosts и базовое понимание Netplan. Частая ошибка — не знать, что JVM кеширует DNS навсегда по умолчанию при установленном SecurityManager, что вызывает проблемы при смене IP-адресов в облаке.