Продолжаем полировать сеть. Этот пост – неожиданное развитие истории про настройку GRE over IPSEC на Mikrotik. Оно работает неочевидным способом и счас расскажу подробнее.
Во-первых, IPSec-туннель для резервного провайдера надо делать в пассивном режиме. Это настройка пира. Иначе роутер использует общую таблицу маршрутизации и ломится через основного провайдера. А так он будет ждать соединения и ответит уже с нужного интерфейса. Что делать в ситуации, когда с обеих сторон два провайдера и надо туннель между резервными провайдерами – хз.
Во-вторых, основной провайдер должен быть на порту с меньшим номером, чем резервный, да еще и в рамках одного свитча (чипа коммутации). Выяснилось это совершенно неожиданно. На одной из точек резервный провайдер живет на первом порту, а основной – на втором. После перезагрузки туннель через резервный канал не поднимается ни под каким видом. Не работает и всё тут. Как только я меняю в основной таблице маршрутизации основного провайдера и меняю настройки IPSec-пиров на противоположные (активный/пассивный пир) – всё взлетает. Я не знаю, как это работает, но это так.
Первый пункт вылез, когда выяснилось, что соединение встает с неправильного адреса. Со вторым я мучился несколько дней. Дошел до сравнения текстовых вариантов конфигов построчно с роутером на другой площадке, где всё работает! Единственное различие – номера портов. Магия.