Назад | Перейти на главную страницу

Несколько шлюзов для одной подсети

У меня 2 машины, local1 и cloud1. local1 имеет 3 сетевых адаптера: 2 подключены напрямую к кабельным модемам с общедоступным IPS (назовите их eth0 и eth1) и 1 подключено к моему LAN-соединению (eth2). cloud1 имеет один nic (eth0) и напрямую подключен к Интернету (канал 1 Гбит / с в центре обработки данных). Оба eth0 и eth1 на локальном компьютере имеют шлюзы по умолчанию и отправляют свой трафик через один из них, в зависимости от того, какой IP делает запрос. Создано 2 туннеля OpenVPN P2P, каждый из которых использует один из общедоступных IP-адресов модемов и подключается к cloud1 через его общедоступный IP-адрес. Это создает 2 туннеля, tun0 и tun1 на каждом ящике. они получают IPS 10.8.0.1/2 на tun0 (соответственно) и 3/4 на tun1. 1 и 3 находятся в облаке, 2 и 4 - локально.

локальный ящик имеет маршрут по умолчанию, настроенный на использование как 1, так и 3 (Debian 8.3 с любым ядром, находящимся в поле), и который работает «правильно», маршрут трассировки показывает, что я нажимаю и 1, и 3 в разное время). но на cloud1, чтобы он вернулся в мою локальную сеть (192.168.1.0/24), у него есть маршрут, но только через 10.8.0.2 ... ничего не возвращается через 10.8.0.4 ...

наблюдая за мониторами трафика, я вижу, что трафик идет через tun1 внутри дома, но ничего (или очень мало) возвращается, в то время как tun0 имеет много входящего и исходящего трафика ...

Я знаю, как установить несколько шлюзов по умолчанию с помощью Linux, но как мне установить несколько шлюзов не по умолчанию: например:

ip route add 192.168.1.0/24 via 10.8.0.2 (works)
ip route add 192.168.1.0/24 via 10.8.0.4 (tells me it already exists)

Сетевая пересылка настроена на обоих устройствах, и я хотел бы сделать это без NAT или маскарадинга ... Кроме того, 192.168.1.0/24 является сетью DMZ, поэтому для других машин существуют дополнительные брандмауэры восходящего направления.

Итак, для всех, кто читает, мне удалось решить эту проблему. Зебры Статические маршруты что позволяет мне иметь 2 маршрута для одной подсети. Мне пришлось удалить исходный маршрут в облачном хранилище, а затем его взяла на себя зебра, и весь трафик отправляется между этими двумя, одинаково ... счастливыми днями!