Debian/OVH: как настроить несколько отказоустойчивых IP-адресов на одной виртуальной машине Xen (Debian)?

Debian/OVH: как настроить несколько отказоустойчивых IP-адресов на одной виртуальной машине Xen (Debian)?

У меня возникла проблема на виртуальной машине Xen (работающей под управлением последней версии Debian) при попытке настроить второй отказоустойчивый IP-адрес. OVH сообщает, что мой IP-адрес настроен неправильно, и они жалуются, что получают огромное количество ARP-пакетов с этих IP-адресов, поэтому они собираются заблокировать мой IP-адрес, если я не исправлю эту проблему.

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

Мой /etc/network/interfaces выглядит так:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
    address AAA.AAA.AAA.AAA
    netmask 255.255.255.255
    broadcast AAA.AAA.AAA.AAA
    post-up route add 000.000.000.254 dev eth0
    post-up route add default default gw 000.000.000.254 dev eth0

# Secondary NIC
auto eth0:0
iface eth0:0 inet static
    address BBB.BBB.BBB.BBB
    netmask 255.255.255.255
    broadcast BBB.BBB.BBB.BBB

А таблица маршрутизации такая:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
000.000.000.254 0.0.0.0         255.255.255.255 UH    0      0        0 eth0
0.0.0.0         000.000.000.254 0.0.0.0         UG    0      0        0 eth0

В этих примерах (настоящие IP-адреса заменены на поддельные, угадайте почему :)) 000.000.000.000 — это IP-адрес моего основного сервера (dom0), 000.000.000.254 — это шлюз по умолчанию, рекомендуемый OVH, AAA.AAA.AAA.AAA — это первый отказоустойчивый IP-адрес, а BBB.BBB.BBB.BBB — второй.

Мне нужно, чтобы и AAA.AAA.AAA.AAA, и BBB.BBB.BBB.BBB были общедоступны из Интернета и указывали на мой domU, а также чтобы можно было получить доступ к Интернету изнутри виртуальной машины (domU). Я использую eth0 и eth0:0, потому что из-за поддержки OVH мне нужно назначить оба IP-адреса одному и тому же MAC-адресу, а затем создать виртуальный интерфейс eth0:0 для второго IP-адреса.

Есть предложения? Что я делаю не так? Как мне остановить жалобы OVH на ARP-флуд?

Заранее большое спасибо, ДС

решение1

Вам не нужно определять широковещательный адрес для вторичных IP-адресов.

Конфигурация для «отказоустойчивых» IP-адресов выглядит следующим образом:

# Secondary NIC
auto eth0:0
iface eth0:0 inet static
    address BBB.BBB.BBB.BBB
    netmask 255.255.255.XXX

Пример с живого сервера:

auto eth0:0
iface eth0:0 inet static
    address 178.32.36.20
    netmask 255.255.255.0

Кстати, вы делаете это неправильным/слишком сложным способом. Самый простой способ сделать это — связать «виртуальный Mac-адрес» с вашими отказоустойчивыми IP-адресами. Вы найдете эту опцию на вкладке служб вашего сервера в OVH Manager. Это позволяет вам просто объединить все виртуальные интерфейсы, связанные с заданными виртуальными Mac-адресами. Таким образом, вам также не придется беспокоиться о какой-либо маршрутизации. Просто, как никогда.

РЕДАКТИРОВАТЬ :Я только что подумал. Убедитесь, что вы включили маршрутизацию в вашем dom0 с net.ipv4.ip_forward=1.

ПРАВКА2:После вашего комментария я пошел и посмотрел, что OVH рекомендует делать, и вам стоит попробовать. Это показано в этомсообщение на форуме. Я не знаю, понимаете ли вы французский, но там говорится, что нужно внести следующее в сетевую конфигурацию вашего domU.

auto eth0
iface eth0 inet static
    address <IP FAILOVER>        # domU IP address
    netmask 255.255.255.255
    post-up /sbin/ip route add IP.of.your.dom0.254 dev eth0         # IP.of.your.dom0.254 = dom0's gateway
    post-up /sbin/ip route add default via IP.of.your.dom0.254

Мне кажется, что это сработает, если у вас сетевая конфигурация с мостовым соединением и виртуальными MAC-адресами.

решение2

Невероятно, но факт: после того, как я поговорил со службой поддержки OVH (которая не обнаружила никаких проблем с этой конфигурацией) и восстановил первоначальные настройки (повторно связав отказоустойчивый IP BBB.BBB.BBB.BBB с тем же MAC-адресом, что и AAA.AAA.AAA.AAA), теперь все работает отлично!

Связанный контент