ESC

Start typing to search across invoices, services, domains, tickets, and more...

Search... Ctrl+K
SEO-сети и мульти-IP

Как привязать целый блок /24 IP на Linux-сервере для сети сайтов

7 шагов 10 мин чтения 2 просмотров 0
Содержание

Серверы для сетей сайтов (мульти-IP) обычно поставляются с одним или несколькими блоками /24 — это 253+ рабочих адреса в каждом. Добавлять их вручную долго и чревато ошибками. В статье показано, как привязать целый блок /24 IP на Linux-сервере для сети сайтов: быстро через цикл, постоянно через Netplan или NetworkManager, автоматически при загрузке через systemd, а также как проверить всё разом. Подходит для Ubuntu, Debian и CentOS/Rocky/AlmaLinux.

Сначала уточните блок, рабочий диапазон, префикс и шлюз в личном кабинете или письме о выдаче: войдите → Мои продукты и услуги → выберите сервер → Управление; при сомнениях создайте тикет. Рабочий диапазон может отличаться (адрес сети, шлюз и broadcast часто зарезервированы). В примерах — 203.0.113.2–254/24.

Шаг 1: Определите интерфейс и основной IP

Проверьте основной интерфейс и маршрут по умолчанию; ниже он обозначен как eth0:

ip -br addr show
ip route show default

Шаг 2: Массовая привязка /24 через цикл (временно)

Один цикл for привязывает весь блок — удобно для проверки. После перезагрузки настройка пропадёт:

for i in $(seq 2 254); do
  ip addr add 203.0.113.$i/24 dev eth0
done

Добавляйте только адреса. Не задавайте отдельный шлюз по умолчанию для блока — иначе появится несколько маршрутов default.

Шаг 3: Постоянная настройка в Ubuntu через список addresses в Netplan

Вписывать 253 строки вручную рискованно. Сгенерируйте строки YAML и вставьте их в раздел addresses файла в /etc/netplan/:

for i in $(seq 2 254); do echo "        - 203.0.113.$i/24"; done

В итоге структура будет такой:

network:
  version: 2
  ethernets:
    eth0:
      addresses:
        - 198.51.100.5/24
        - 203.0.113.2/24
        - 203.0.113.3/24
        # ... 203.0.113.254/24
      routes:
        - to: default
          via: 198.51.100.1
netplan try
netplan apply
Отступы YAML должны быть одинаковыми и только пробелами. Перед применением сделайте резервную копию и убедитесь, что VNC-консоль доступна.

Шаг 4: Массовая постоянная настройка в CentOS, Rocky или AlmaLinux через nmcli

NetworkManager сохраняет адреса в профиле подключения и восстанавливает их при загрузке:

for i in $(seq 2 254); do
  nmcli connection modify eth0 +ipv4.addresses 203.0.113.$i/24
done
nmcli connection up eth0

Цикл может выполняться минуту-две — не прерывайте его.

Шаг 5: Debian или универсальный вариант: автопривязка через systemd

Для Debian (ifupdown) или если не хотите менять сетевые конфиги, запускайте скрипт через systemd при загрузке. Создайте /usr/local/bin/bind-ips.sh:

#!/bin/bash
# /usr/local/bin/bind-ips.sh
DEV=eth0
NET=203.0.113
for i in $(seq 2 254); do
  ip addr add ${NET}.${i}/24 dev ${DEV} 2>/dev/null
done
exit 0

Затем создайте /etc/systemd/system/bind-ips.service:

[Unit]
Description=Bind extra IPv4 block
After=network-online.target
Wants=network-online.target

[Service]
Type=oneshot
ExecStart=/usr/local/bin/bind-ips.sh
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Сделайте скрипт исполняемым и включите службу:

chmod +x /usr/local/bin/bind-ips.sh
systemctl daemon-reload
systemctl enable --now bind-ips.service

В системах под управлением nmcli лучше использовать шаг 4, чтобы NetworkManager не удалил добавленные скриптом адреса при повторной активации подключения.

Шаг 6: Массовая проверка привязки блока /24

Посчитайте привязанные адреса и выборочно проверьте исходящий трафик:

ip -4 addr show dev eth0 | grep -c "inet 203.0.113."
for i in 2 100 254; do curl -s --interface 203.0.113.$i https://ifconfig.me; echo; done

Первая команда должна вывести 253 (или ваше фактическое число). Если curl возвращает соответствующий IP, адрес работает. Перезагрузитесь, чтобы проверить сохранение настроек.

Шаг 7: Удаление всего блока

for i in $(seq 2 254); do
  ip addr del 203.0.113.$i/24 dev eth0
done

Не забудьте очистить постоянную конфигурацию: удалите строки из Netplan, используйте nmcli -ipv4.addresses или отключите bind-ips.service.

Частые вопросы

Какой префикс указывать: /24 или /32?

Зависит от того, находится ли блок в одном L2-сегменте с основным IP или маршрутизируется на него. Следуйте данным о выдаче или уточните в тикете.

Часть IP не отвечает на ping.

Проверьте, входит ли IP в рабочий диапазон, и настройки файрвола; протестируйте адрес отдельно через curl --interface. Если не помогает, пришлите список IP в тикете.

Влияет ли привязка сотен IP на производительность?

Несколько сотен адресов практически не нагружают ядро, хотя netplan apply может выполняться немного дольше.

Если проблема не решена, создайте тикет в круглосуточную техподдержку IMIDC.

Помог ли вам данный ответ?

Похожие руководства