Атрибут ReverseRoute

Атрибут ReverseRoute задает функциональность Reverse Route Injection (RRI). После установления защищенного соединения с удаленным партнером, при включенном механизме RRI в системную таблицу маршрутизации добавляется запись об обратном маршруте.

Синтаксис

ReverseRoute = TRUE | FALSE

Значение

TRUE – RRI включен

FALSE – RRI выключен

Значение по

умолчанию

FALSE

Примечание

Для транспортного режима и для туннельного режима HOST<->HOST, где туннельный destination совпадает с destination из внутреннего заголовка, RRI допускается, но смысла не имеет.

Фильтры, к которым привязано правило с включенным RRI, не должны содержать портов, протоколов и диапазонов адресов в destination-части.

 

Aлгоритм добавления маршрутов

Если для IPsecAction настройка ReverseRoute выставлена в FALSE, при создании SA поэтому IPsecAction, дополнительных действий не предпринимается. Далее предполагается, что ReverseRoute выставлен в TRUE.

После построения IPsec SA вычисляется необходимый маршрут (RR). Основанием являются следующие данные:

•      селектор SA (ID второй фазы IKE);

•      адрес назначения туннельного заголовка SA  (tdst);

•      системная таблица маршрутизации (без учета маршрутов, добавленных подсистемой RRI).

Вычисление маршрута:

•      ID партнера второй фазы IKE преобразуются в адрес и маску подсети. Если это невозможно (ID является произвольным диапазоном, имеет протоколы и/или порты), то RR не создается. Полученные адрес и маска будут адресом назначения создаваемого маршрута.

 

Примечание

Поскольку протокол в ID второй фазы один для обоих партнеров, а порты без указания протокола смысла не имеют, присутствие портов и протоколов с обеих сторон не допускается.

 

•      В системной таблице производится поиск туннельного адреса SA.

•      Если правил не найдено (“Destination Unreachable”), RR не добавляется.

•      Если найдено правило прямой маршрутизации через интерфейс, вычисленный маршрут будет через gateway tdst.

•      Если найдено правило прямой маршрутизации через gateway GW, вычисленный маршрут будет через gateway GW.

Если маршрут успешно вычислен, проверяется следующее:

•      Такой же маршрут был ранее добавлен подсистемой RRI для SA с тем же tdst. В этом случае увеличивается счетчик ссылок, маршрут не добавляется.

•      Маршрут для SA c такими же ID второй фазы и tdst уже добавлен, но отличается. В этом случае существующий маршрут обновляется, увеличивается счетчик ссылок.

•      Маршрут c такими же параметрами уже добавлен, но для SA с другим tdst. Маршрут не создается, счетчик ссылок не увеличивается.

•      Маршрут, соответствующий ID партнера есть в системной таблице, но подсистемой RRI он не добавлялся. В этом случае маршрут не создается.

При удалении SA из ядра, счетчик ссылок соответствующего маршрута уменьшается, при обнулении счетчика маршрут удаляется.

Предупреждение: недопустимо вручную изменять или удалять правила маршрутизации, которые автоматически формируются при использовании RRI.