%3F.png)
У меня возникла проблема на виртуальной машине 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), теперь все работает отлично!