Зачем ipsec помещать в ipip?

Классическая схема объединения двух подсетей при помощи двух Микротиков.
Но пока не понятно зачем поднимают ipip и его шифруют ipsec`ом, если мы можем в политику ipsec`а прописать, что пакеты с адресом источника - адреса нашей сети, с адресом назначения - адреса удаленной сеть, адрес исходящего интерфейса - наш адрес внешнего интерфейса, адрес назначения пакета - адрес внешнего интерфейса удаленной стороны.
В виде конфига микротика это выглядит так:
/ip ipsec policy print
0 src-address=192.168.1.0/24 src-port=any dst-address=192.168.2.0/24 dst-port=any protocol=all action=encrypt level=require ipsec-protocols=esp tunnel=yes
sa-src-address=77.77.77.77 sa-dst-address=88.88.88.88 proposal=proposal1 priority=0

Т.е. все параметры есть. Куда еще и для чего еще ipip интерфейс? Если по сути есть маршрут и есть адреса откуда и куда пакет гнать.
  • Вопрос задан
  • 13406 просмотров
Решения вопроса 1
ifaustrue
@ifaustrue
Пишу интересное в теллеграмм канале @cooladmin
Давай по-порядку. Зачем вообще юзать IPSec - для того, чтобы защитить трафик идущий по публичным (или не очень) сетям. Сделать возможность перехвата, расшифровки или компрометации трафика минимальной. Для этих целей подходят туннели типа OpenVPN и IPSec (всё остальное либо проприетарное, либо ломается на ура).
Имхо, oVPN больше подходит для приземления клиентов, а IPSec для связи сетей.

Дальше. IPSec способен работать в двух режимах, туннельном и транспортном.

Тот что ты описал - туннельный - после появления первого пакета с данными, подходящими под условия политики - поднимается туннель и остаётся открытым пока идёт траф или таймаут его не убьёт. Туннельный режим хорош тем, что, действительно, настроил политики и всё работает как бы само.

Транспортный режим - соединяет трафик идущий между двумя точками - между двумя устройствами - без построения туннеля. Т.е. просто (де)шифрование пакетов. И для построения туннель нужно будет использовать отдельно IPIP, или L2TP или любой другой протокол Point to Point.

Нафига же нам может такой понадобиться? Например если у тебя соединяются не две отдельные сети, а несколько с каждой стороны (политик в этом случае нужно в X*Y). А может ты строишь множественную связность, когда нельзя однозначно сказать через какой Peer доступна та или иная сеть (например с ospf внутри). А может быть у тебя по туннелю гоняется не IP трафф (а телефония или мультикаст или FoIP или ATAIP). А может так же ты гоняешь l2 пакеты (например, сбриджевал два офиса и у них общая адресация - при небольшом расстоянии вполне себе решение). А ещё иногда нужно перестроить сеть без сброса всех активных туннелей (что в предыдущем случае невозможно). В целом использование транспорта IPSec - гораздо более удобнее.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
vasilevkirill
@vasilevkirill
Сертифицированный тренер MikroTik TR0417
Я бы немного по другому ответил.
поднятый туннель под ipsec, нужен только для того чтобы уменьшит количество политик ipsec.
Так как в туннеле происходит инкапсуляция трафика, то мы можем городить любые маршруты. а в политиках IPsec прописать только два ip адреса =)

Если вам действительно это интересно то посмотрите на реализацию такой схему как "IPsec over GRE in loopback", как только разберётесь в схеме, сразу поймете для чего делаются тунели под IPSec
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы