Нам удалось подключить наши серверы к двум разным сетям, и все работает нормально. Мы используем правила маршрутизации, которые гарантируют, что сервер отвечает в нужной сети.
Я выполнил инструкции по этой ссылке: http://www.thomas-krenn.com/en/wiki/Two_Default_Gateways_on_One_System#Configuring_the_New_Routing_Table
Теперь я столкнулся со следующей проблемой: я перезапускаю сервер, устанавливается только одна конфигурация маршрутизации (rt3). Кажется, что только второй набор команд post-up работает автоматически.
Я могу легко решить эту проблему, купив, а затем выполнив первый набор команд post-up (rt2) вручную, и все будет работать, как ожидалось.
Но, конечно, команды post-up должны выполняться автоматически.
Это наш интерфейс-файл:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
allow-hotplug eth0
iface eth0 inet static
address xxx.xxx.xxx.xxx
netmask 255.255.255.0
broadcast xxx.xxx.xxx.xxx
gateway xxx.xxx.xxx.xxx
dns-nameservers xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 4.2.2.2 8.8.4.4
post-up ip route add xxx.xxx.xxx.xxx/24 dev eth0 src xxx.xxx.xxx.xxx table rt2
post-up ip route add default via xxx.xxx.xxx.xxx dev eth0 table rt2
post-up ip rule add from xxx.xxx.xxx.xxx/32 table rt2
post-up ip rule add to xxx.xxx.xxx.xxx/32 table rt2
# The secondary network interface
auto eth1
allow-hotplug eth1
iface eth1 inet static
address xxx.xxx.xxx.xxx
netmask 255.255.255.0
broadcast xxx.xxx.xxx.xxx
gateway xxx.xxx.xxx.xxx
dns-nameservers xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 4.2.2.2 8.8.4.4
post-up ip route add xxx.xxx.xxx.xxx/24 dev eth1 src xxx.xxx.xxx.xxx table rt3
post-up ip route add default via xxx.xxx.xxx.xxx dev eth1 table rt3
post-up ip rule add from xxx.xxx.xxx.xxx/32 table rt3
post-up ip rule add to xxx.xxx.xxx.xxx/32 table rt3
После выполнения команд для rt2 вручную все идеально, и эта конфигурация работала в течение нескольких недель без каких-либо проблем.
файл rt_tables выглядит следующим образом:
#
# reserved values
#
255 local
254 main
253 default
0 unspec
#
# local
#
#1 inr.ruhep
1 rt2
2 rt3