Есть несколько локальных сетей /24 расположенных в разных городах. У всех сетей в качестве шлюза работает компьютер под UbuntuServer. Сейчас все шлюзы подключены к одному шлюзу при помощи pptp, настроена маршрутизация, трафик из сети 192.168.3.0/24 может попасть в сеть 192.168.0.0/24 и обратно. То же самое с трафиком из сети 192.168.4.0/24

Для того чтобы связать сети 192.168.3.0/24 и 192.168.4.0/24 нужно на одном из шлюзов поднять сервер pptpd и проделать всё то же с маршрутами. Трудоёмко и не совсем правильно как мне кажется если таких сетей пять-шесть и у нескольких шлюзов пара внешних каналов.
Хочется сделать шифрованные туннели между всеми шлюзами (у некоторых есть по два внешних интерфейса) чтобы при падении одного из каналов работал маршрут через промежуточный шлюз. Т.е. если прямой канал между сетями 192.168.3.0/24 и 192.168.4.0/24 отвалится - заработает маршрут через шлюз сети 192.168.0.0/24.
Пробовал делать IPsec туннели между шлюзами, но, как подсказали в соседней теме, не создаются туннельные интерфейсы и как тогда быть с маршрутизацией не понятно.
Подскажите пожалуйста что лучше использовать для реализации моих планов.