Как настроить сетевые параметры в Debian

0
4334
Обложка статьи: Как настроить сетевые параметры в Debian

Нужно задать адрес, шлюз и DNS на Debian. На Debian 12+ чаще NetworkManager или systemd-networkd. Файл /etc/network/interfaces жив, если стоит ifupdown — не копируйте его вслепую на систему, которой управляет NM.

1. Понять, кто управляет сетью

ip -4 addr
ip route
systemctl is-active NetworkManager systemd-networkd networking
ls /etc/netplan 2>/dev/null
cat /etc/os-release

Если NetworkManager active — правьте через nmcli. Если networking active и есть interfaces — ifupdown. Не держите два менеджера на одном интерфейсе.

2. NetworkManager (Debian 12+ типичный путь)

nmcli device status
nmcli connection show
sudo nmcli connection modify "Wired connection 1" \
  ipv4.method manual \
  ipv4.addresses 192.0.2.10/24 \
  ipv4.gateway 192.0.2.1 \
  ipv4.dns "1.1.1.1 9.9.9.9"
sudo nmcli connection up "Wired connection 1"
ip -4 addr show
ip route

Подставьте имя соединения из nmcli connection show. Ожидание: адрес и default via шлюз. Имена 1.1.1.1 / 9.9.9.9 — пример публичных резолверов, не требование.

3. ifupdown, если он реально главный

sudo cp /etc/network/interfaces /etc/network/interfaces.bak
sudo nano /etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
    address 192.0.2.10/24
    gateway 192.0.2.1
    dns-nameservers 1.1.1.1 9.9.9.9

Имя интерфейса возьмите из ip link, не копируйте eth0 вслепую. Применить:

sudo ifdown eth0 && sudo ifup eth0

Делайте это с консоли или из второй сессии: ошибка в шлюзе отрежет SSH. VLAN — eth0.10 и пакет vlan, либо NM ipv4 на vlan-соединении.

Ubuntu: netplan

В Ubuntu Server сетью управляет netplan, а не ifupdown. Файл /etc/netplan/00-installer-config.yaml:

network:
  version: 2
  ethernets:
    ens18:
      addresses: [192.0.2.10/24]
      routes:
        - to: default
          via: 192.0.2.1
      nameservers:
        addresses: [1.1.1.1, 9.9.9.9]
sudo netplan try      # применяет с откатом через 120 секунд, если не подтвердить
sudo netplan apply

Команда netplan try безопаснее apply: при ошибке в шлюзе связь вернётся сама. Имя интерфейса возьмите из ip link. Файл с отступами чувствителен к пробелам: используйте пробелы, не табуляцию.

systemd-networkd без NetworkManager

Для серверов без графики подходит systemd-networkd. Файл /etc/systemd/network/10-lan.network:

[Match]
Name=ens18

[Network]
Address=192.0.2.10/24
Gateway=192.0.2.1
DNS=1.1.1.1
sudo systemctl enable --now systemd-networkd
sudo networkctl status

DNS и имя хоста

resolvectl status
cat /etc/resolv.conf
sudo hostnamectl set-hostname srv-01.example.internal

Если /etc/resolv.conf ссылается на 127.0.0.53, DNS обслуживает systemd-resolved: правьте адреса через настройки сети, а не файл напрямую.

Диагностика

  • Не пингуется шлюз: неверный адрес, маска или VLAN.
  • После перезагрузки настройки пропали: правка сделана командой ip addr, а не в конфигурации.
  • Два менеджера на одном интерфейсе дают случайные адреса: оставьте один.

После настройки сети закройте лишние порты: hardening Debian.

Как проверить

ip -4 addr
ip route
getent hosts deb.debian.org
ping -c 2 192.0.2.1

Адрес на месте, default route есть, имя пакета резолвится. Документация: Debian Reference, Network setup.

Источники

Комментарии закрыты.