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

«Как настроить сеть в Linux?» — вопрос из категории Linux, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В современных дистрибутивах я предпочитаю настраивать сеть через Netplan (Ubuntu) или NetworkManager (nmcli), так как это предсказуемо и легко автоматизируется. Ручное редактирование старых конфигов вроде /etc/network/interfaces оставляю для специфичных случаев.

Пример настройки статического IP на Ubuntu 22.04 с Netplan:

  1. Редактирую конфиг в /etc/netplan/00-installer-config.yaml:
    network:
      version: 2
      ethernets:
        eth0:
          addresses:
            - 192.168.1.100/24
          routes:
            - to: default
              via: 192.168.1.1
          nameservers:
              addresses: [8.8.8.8, 1.1.1.1]
  2. Применяю конфигурацию:
    sudo netplan apply

Для RHEL/CentOS/Rocky использую nmcli:

# Создаю connection со статическим IP
sudo nmcli con add type ethernet ifname eth0 con-name eth0-static ip4 192.168.1.100/24 gw4 192.168.1.1
# Добавляю DNS
sudo nmcli con mod eth0-static ipv4.dns "8.8.8.8 1.1.1.1"
# Активирую соединение
sudo nmcli con up eth0-static

Для быстрых проверок и отладки использую низкоуровневые утилиты ip:

# Показать адреса и интерфейсы
ip addr show
# Показать таблицу маршрутизации
ip route show
# Временно добавить адрес (сбросится после перезагрузки)
sudo ip addr add 192.168.1.101/24 dev eth0

Ключевое правило: постоянную конфигурацию всегда закрепляю через менеджер сети (Netplan, nmcli) или системные конфиги, а не через ip или ifconfig.