Остаётся ли каждый дополнительный IPv4 на интерфейсе после перезагрузки?

Каждый дополнительный адрес — отдельная строка консоли. Добавьте её на интерфейс, где уже есть первый адрес, с маской одного узла, и запишите в файл, который читается при загрузке. Адрес, добавленный только на текущий сеанс, после перезагрузки исчезает.

Каждая строка консоли — один адрес

Когда машина оплачена и к ней можно подключиться, консоль разделяет адреса, убирает повторы и кладёт их в прокручиваемый список. Первая строка показана отдельно. SSH и RDP используют только её. Каждая следующая строка — тоже полный IPv4. Нет адреса сети, широковещательного адреса и свободных узлов, которые надо высчитывать.

В заказе уже есть 1 IPv4. Дальше адреса добавляются по одному, по $1.6 в месяц, не больше 255 дополнительных, а вместе с включённым — не больше 256. Число строк должно совпасть с этой суммой. Четыре дополнительных адреса — это пять строк, а не префикс /29.

Адреса ниже — документационные примеры. При настройке подставьте строки из списка. Если первая строка 203.0.113.10, а две другие 203.0.113.21 и 203.0.113.34, три строки не идут подряд. Номера между ними этой машине не принадлежат.

Перед правкой интерфейса скопируйте весь список. Число и каждую строку сверяйте с этой копией, а не выводите из маски. Адреса, которого нет в списке, на интерфейсе быть не должно.

Адреса выдаются по одному и настраиваются по строкам. Купленное число не превращается в /29, /28 или другой префикс.

Префикс первой строки сохраняется, дополнительные — отдельные узлы

После установки первый адрес уже на интерфейсе, вместе с тогдашней длиной префикса и шлюзом по умолчанию. Эти три значения не меняйте. Префикс может быть /24 или другой длины. Берите его из системы, а не маску, собранную из числа купленных адресов.

/29 всегда занимает восемь адресов: один адрес сети, шесть узлов и один широковещательный. Поштучная покупка эти восемь позиций не выдаёт и не обещает, что строки будут соседними. Маска 255.255.255.248 заставляет узел считать соседние номера локальными соседями. Эти соседи в заказ не входят.

Каждая дополнительная строка использует 255.255.255.255, то есть /32. Интерфейс знает только этот адрес узла и не заявляет номера рядом. Шлюз по умолчанию остаётся прежним. Второй маршрут по умолчанию для нового адреса не добавляйте.

ОткудаКак записать на интерфейс
Первая строка, уже настроенаОставить исходный адрес, префикс и шлюз
Каждая остальная строкаДобавить этот адрес с маской 255.255.255.255 (/32)
/29 или /28, собранные из числаНе записывать. Адрес сети и broadcast, которых нет в списке, тоже не записывать

Даже если строки случайно идут подряд, добавляйте их по одной и с /32. Подряд стоящие номера не означают, что машина получила подсеть.

Добавлять на интерфейс, где уже есть первый адрес

К дополнительным адресам вторая сетевая карта не прилагается. Найдите интерфейс, на котором уже стоит первый адрес, и добавляйте новые строки туда.

ip -4 addr show
ip route show default

В первом выводе интерфейс с первой строкой списка — тот, который нужно править. В примерах он назван eno1. На деле это может быть eno1, eth0 или vmbr0. Во втором выводе адрес после via — текущий шлюз, устройство после dev — тот же интерфейс. Оба значения копируйте отсюда, не выводите их из нового адреса.

В Proxmox VE 8 или 9 первый адрес часто стоит на мосту vmbr0, а физический порт только входит в мост. Место добавления следует за первым адресом. Если он уже на мосту, а новый адрес добавлен на физический порт, новый адрес обычно не отвечает.

Если сайт работает внутри виртуальной машины, строка должна быть на той виртуальной карте, которая на неё отвечает. Хост не должен занимать ту же строку. Если она есть и на мосту, и в госте, ответит тот, кто ответит первым. Внутри гостя правило то же: исходный адрес и шлюз не трогать, новая строка — /32.

Сначала добавьте адрес временно, убедитесь, что строка видна, и только потом пишите конфигурацию загрузки. Временное добавление после перезагрузки пропадает. Оно нужно лишь чтобы проверить интерфейс.

ip addr add 203.0.113.21/32 dev eno1
ip -4 addr show dev eno1

В выводе вместе видны исходная первая строка и новая. Префикс первой строки не изменился, маршрут по умолчанию по-прежнему указывает на исходный шлюз. Так же проверьте 203.0.113.34 и затем запишите файл.

Записать файл, который читается при загрузке

Меняйте только файл, где первый адрес уже записан. Не оставляйте второй файл, который описывает тот же интерфейс только новыми адресами. Если действуют оба, прочитанный позже может убрать первую строку. SSH останется на дополнительном адресе и перестанет совпадать с командой в консоли.

Ubuntu Server 22.04, 24.04 и 26.04 используют netplan. Откройте yaml, где уже есть первая строка. Оставьте её в addresses и допишите /32. Маршрут по умолчанию и nameserver не меняйте.

network:
  version: 2
  ethernets:
    eno1:
      addresses:
        - 203.0.113.10/24
        - 203.0.113.21/32
        - 203.0.113.34/32
      routes:
        - to: default
          via: 203.0.113.1

/24 и 203.0.113.1 в примере значат «оставить исходные значения». Если на машине другой префикс или шлюз, скопируйте их из вывода ip. Если в файле уже есть другие ключи, дописывайте только строки адресов. Не заменяйте весь файл этим фрагментом.

После сохранения выполните netplan try. Он применяет конфигурацию и откатывает её по таймеру. В это окно откройте второй сеанс SSH на первый адрес и убедитесь, что он открывается. netplan apply запускайте только после успешного try. Apply из единственного открытого сеанса не оставляет входа проверить откат, если сеанс оборвётся.

Если после apply SSH на первый адрес не открывается, верните файл через графический сеанс в консоли. Этот сеанс остаётся внутри консоли. Публичный доступ — это SSH или RDP.

Debian, Proxmox и NetworkManager

В Debian 11, 12 или 13, если адрес лежит в /etc/network/interfaces, правьте этот файл. Добавляйте через post-up и снимайте через pre-down, когда интерфейс опускается. address и gateway первой строки оставьте как после установки.

auto eno1
iface eno1 inet static
    address 203.0.113.10/24
    gateway 203.0.113.1
    post-up ip addr add 203.0.113.21/32 dev eno1
    post-up ip addr add 203.0.113.34/32 dev eno1
    pre-down ip addr del 203.0.113.21/32 dev eno1
    pre-down ip addr del 203.0.113.34/32 dev eno1

Мост Proxmox лежит в том же файле. Если первая строка на vmbr0, используйте это имя. Строку моста физического порта не превращайте в строку адреса.

AlmaLinux 8, 9 и 10, а также CentOS Stream 9 и 10 обычно ведёт NetworkManager. Имя соединения смотрите в nmcli connection show. Добавляйте адреса к этому соединению. ipv4.gateway не меняйте и не ставьте method, который очищает адреса.

nmcli connection modify "System eno1" +ipv4.addresses 203.0.113.21/32
nmcli connection modify "System eno1" +ipv4.addresses 203.0.113.34/32
nmcli connection up "System eno1"

modify пишет профиль соединения, строки переживают перезагрузку. Один только ip addr add живёт до следующей загрузки. После up в ip -4 addr первая строка должна остаться.

FreeBSD 13 хранит псевдонимы в /etc/rc.conf. Имя интерфейса скопируйте из блока ifconfig, где уже виден первый адрес.

ifconfig_em0_alias0="inet 203.0.113.21 netmask 255.255.255.255"
ifconfig_em0_alias1="inet 203.0.113.34 netmask 255.255.255.255"

Существующая строка ifconfig_em0 по-прежнему отвечает за первый адрес и маршрут по умолчанию. Если alias0 занят, возьмите следующий свободный номер. Не оформляйте псевдонимы как вторую карту.

Для этого интерфейса оставьте один способ управления. Если interfaces, netplan и NetworkManager описывают его одновременно, порядок загрузки решит, какой набор адресов останется. Правьте только файл, где уже записана первая строка.

В Windows адрес добавляется, шлюз новой строки пустой

Если выбран Windows Server, доступ — RDP, и он по-прежнему использует только первую строку списка. Дополнительные адреса добавляйте на адаптер, где эта строка уже есть. Standard — $18.1 в месяц, Datacenter — $31.8, версии 2019, 2022 или 2025. Цена системы не зависит от числа адресов. Адреса по-прежнему продаются по одному.

Откройте свойства IPv4 этого адаптера, затем дополнительно, и добавьте строку в список адресов. Адрес — дополнительная строка из списка, маска — 255.255.255.255. Шлюз новой строки оставьте пустым. Уже указанный шлюз не трогайте. Второй шлюз спорит с исходным маршрутом по умолчанию.

В PowerShell имя интерфейса возьмите из Get-NetAdapter. При SkipAsSource равном true новый адрес принимает входящие соединения, а новые исходящие по-прежнему уходят с первого адреса. Общий адрес для сайтов или отдельная строка каждому — в заметке один адрес на всех или каждому свой.

New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress 203.0.113.21 -PrefixLength 32 -SkipAsSource $true
New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress 203.0.113.34 -PrefixLength 32 -SkipAsSource $true

Команда пишет системную конфигурацию. Это не разовое добавление. В Get-NetIPAddress должны появиться новые строки с длиной префикса 32. Исходный префикс и маршрут по умолчанию остаются прежними.

После перезагрузки сверить со списком

  1. 01 Перезагрузите машину. Перезапуск только сетевой службы проверкой не считается. Временные адреса здесь исчезают. Адреса из конфигурации загрузки возвращаются.
  2. 02 Снова выполните ip -4 addr или откройте список адресов адаптера в Windows. Первая строка на месте, префикс тот же, что до перезагрузки.
  3. 03 Маршрут по умолчанию один, следующий прыжок — исходный шлюз. В Linux проверьте via в ip route show default.
  4. 04 Отметьте список консоли построчно. Каждая строка списка есть на интерфейсе, а на интерфейсе нет адреса, которого нет в списке.
  5. 05 С другой машины откройте SSH или RDP на первый адрес. Сначала убедитесь в этом управлении, потом проверяйте порт службы на дополнительном адресе.

Команда подсчёта может помочь один раз. Вывод всё равно сверяется со списком. Следующая команда считает глобальные IPv4. Число должно равняться включённому адресу плюс купленным дополнительным.

ip -4 -o addr show scope global | wc -l

Если строки не хватает, вернитесь к файлу загрузки: строка не была записана или попала в файл, который загрузка не читает. Если строка лишняя, удалите адрес, которого нет в списке, особенно адрес сети или broadcast, посчитанный из /29.

Адрес может быть на интерфейсе, а порт службы всё ещё отбрасывает межсетевой экран. Если ufw, firewalld или брандмауэр Windows не пропускают 80, 443 или реально используемый порт, соединение завершится по таймеру. Это политика портов, и она идёт после проверки, что строка пережила перезагрузку.

Если адресов мало, добавьте IPv4 на странице конфигурации, по $1.6 за каждый в месяц, в ту же месячную аренду. Уровень 128GB — $454.8 в месяц, 256GB — $612.7. Память — DDR4-3200 ECC RDIMM, после заказа планки не добавляются. Процессор — AMD EPYC 7543P, 32 ядра и 64 потока, от 2,8 до 3,7 ГГц. Диски по умолчанию — два NVMe по 1TB, без аппаратного RAID, каждый подключён напрямую, доступный объём — сумма, около 2TB. Канал начинается с 250 Mbps и без лимита трафика. 1 Gbps добавляет $245.0 в месяц, 2 Gbps — $742.7. Месячная аренда — сумма этих частей. К оплате — аренда, умноженная на число месяцев. Месяц, квартал, полгода и год без скидки и без платы за установку. Машина размещена в Токио, Япония.

Эта заметка отвечает только на то, есть ли каждая строка и остаётся ли она после перезагрузки. Делят ли несколько сайтов первую строку или каждый берёт свою, и почему новое соединение всё равно уходит с первой строки, — в следующей заметке.

Добавить адреса по числу строк в списке

От $454.8 / месяц