На серверах Hetzner адреса и шлюз выдаются в Robot или Cloud Console, а на самом сервере сеть настраивается средствами ОС. В Debian исторически используется ifupdown (файл /etc/network/interfaces), в Ubuntu — netplan, а современные Debian-образы нередко работают через systemd-networkd (отдельная инструкция). Ниже — типовые конфигурации. В примерах используются адреса из документационных диапазонов; свои значения возьмите из Robot или консоли.
Перед началом
- Узнайте имя интерфейса:
ip -br link(например,enp0s31f6,eth0,ens3). - Выпишите основной IP, маску (или длину префикса) и шлюз; значения для выделенных серверов зависят от подсети сервера.
- Убедитесь, что есть запасной доступ: KVM-консоль или Rescue System (инструкция). Ошибка в настройке сети отрезает SSH.
Debian: /etc/network/interfaces
auto lo
iface lo inet loopback
auto enp0s31f6
iface enp0s31f6 inet static
address 203.0.113.10/26
gateway 203.0.113.1
iface enp0s31f6 inet6 static
address 2001:db8:1234::2/64
gateway fe80::1
Для IPv6 на серверах Hetzner шлюзом служит link-local адрес fe80::1, префикс выдаётся вместе с сервером. Применить настройки: systemctl restart networking или ifdown enp0s31f6 && ifup enp0s31f6 — выполняйте их в сессии, которая не зависит от этого интерфейса (консоль), иначе можно потерять соединение.
Дополнительный IP-адрес
Добавьте адрес на тот же интерфейс. Для одиночного дополнительного адреса используется маска /32:
iface enp0s31f6 inet static
address 203.0.113.10/26
gateway 203.0.113.1
up ip addr add 203.0.113.55/32 dev enp0s31f6
Подробно о дополнительных адресах и их маршрутизации — в справках Дополнительные IP-адреса и Конфигурация статического IP.
Ubuntu: netplan
Файл лежит в /etc/netplan/ (например, 50-cloud-init.yaml или 01-netcfg.yaml). Отступы пробелами, табуляция не допускается.
network:
version: 2
renderer: networkd
ethernets:
enp0s31f6:
addresses:
- 203.0.113.10/26
- 2001:db8:1234::2/64
routes:
- to: default
via: 203.0.113.1
- to: "::/0"
via: fe80::1
nameservers:
addresses: [185.12.64.1, 185.12.64.2]
Проверка и применение с откатом:
sudo netplan generate
sudo netplan try # применит и вернёт старые настройки через 120 с, если не подтвердить
Если сервер создан в облаке и использует cloud-init, учтите, что он может перезаписывать сетевую конфигурацию. Чтобы отключить это, создайте файл /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg со строкой network: {config: disabled}. Для облака в большинстве случаев достаточно DHCP — оставьте как есть. DNS-серверы подставьте актуальные из документации Hetzner или используйте свои.
Проверка
ip -br addr
ip route
ip -6 route
ping -c3 1.1.1.1
ping -6 -c3 2606:4700:4700::1111
resolvectl status
Типичные ошибки
- Неверная маска: адрес поднимается, но шлюз недоступен. Берите маску из Robot.
- Опечатка в YAML:
netplan tryсообщит об ошибке до применения. - Два менеджера сети одновременно (ifupdown и netplan или NetworkManager) — оставьте один.
- Забыт IPv6-шлюз
fe80::1: IPv6 адрес есть, а исходящих соединений нет.
Частые вопросы
Как узнать, какой менеджер сети используется?
Проверьте systemctl is-active NetworkManager systemd-networkd networking и наличие файлов в /etc/netplan. Активным должен быть один.
Как настроить VLAN или vSwitch?
Создайте VLAN-интерфейс с нужным ID и MTU 1400, как в справке про vSwitch (там — Windows) и в разделе системных сетевых настроек Настройки сети — FAQ.
Что делать, если сеть пропала после правки?
Зайдите через KVM-консоль или Rescue System, смонтируйте корневой раздел и исправьте файл конфигурации.