Маргрутизация с ipsec

Обсуждение ПО и его настройки
Ответить
mocr
Сообщения: 6
Зарегистрирован: 23 фев 2018, 18:15

Приветствую. Прошу совета с настройкой маршрутизации.
Вообще это логическое продолжение вот этой темы:
viewtopic.php?f=15&t=8612
если кому интересно.

Что имеем:

Код: Выделить всё

LAN (192.168.106.0/24)
|
Mikrotik (bridge IP 192.168.106.252, pppoe dynamic IP x.x.x.x)
|
ISP
|
internet
|
strongswan vps (IP a.b.c.d)
Mikrotik инициирует IKEv2 соединение с Strongswan, Strongswan выдает Vitrual IP 172.17.2.60, policy получается 172.17.2.60/32 <> 0.0.0.0/0

172.17.2.60 назначается на bridge интерфейс (я это делаю вручную).

Необходимо чтобы клиенты из LAN выходили в интернет через ipsec тунель... и вот тут у меня никак не получается настроить маршрутизацию.

Если добавить маршрут

Код: Выделить всё

#      DST-ADDRESS        PREF-SRC        GATEWAY            DISTANCE
 2   S  0.0.0.0/0          172.17.2.60     pppoe-out                 2
то сам mikrotik (и пользователи mikrotik прокси) ходят через ipsec, но обычные пользователи из LAN ходят напрямую, понимаю что как то надо изменить NAT правило, но как именно не знаю.


Erik_U
Сообщения: 1768
Зарегистрирован: 09 июл 2014, 12:33

На граничном устройстве нужно маскарадинг для всех маршрутизируемых сетей добавить.


mocr
Сообщения: 6
Зарегистрирован: 23 фев 2018, 18:15

А можно попросить Вас немного подробней расписать, в данный момент у меня такое правило

Код: Выделить всё

/ip firewall nat
add action=masquerade chain=srcnat out-interface=pppoe-out
с ним ходят напрямую. У меня мало опыта работы с микротик, насколько я понимаю, правило как раз для всех сетей, ну и в случае с out-interface=pppoe-out, если я опять же все правильно понял, трафик никак не может соответствовать ipsec policy, а значит трафик пойдем мимо, что собственно и происходит.


Erik_U
Сообщения: 1768
Зарегистрирован: 09 июл 2014, 12:33

полностью маршруты покажите


mocr
Сообщения: 6
Зарегистрирован: 23 фев 2018, 18:15

Код: Выделить всё

Flags: X - disabled, A - active, D - dynamic, C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme, B - blackhole, U - unreachable, P - prohibit 

 #      DST-ADDRESS         PREF-SRC            GATEWAY            DISTANCE
 0 ADS  0.0.0.0/0                               pppoe-out                 3
 1 X S  0.0.0.0/0           172.17.2.60         pppoe-out                 2
 2 ADC  y.y.y.y/32          x.x.x.x             pppoe-out                 0
 3 ADC  172.17.2.60/32      172.17.2.60         bridge                    0
 4 ADC  192.168.106.0/24    192.168.106.252     bridge                    0
После включения #1 сам роутер и пользовтаели mikrotik web-proxy (но не обычные), ходят в интернет через ipsec.


Erik_U
Сообщения: 1768
Зарегистрирован: 09 июл 2014, 12:33

1. Микротик соединение с Strongswan инициирует по какой сети? Лан? Интернет?
2. А с другой стороны туннеля знают маршрут в сетку 192.168.106.0/24 ?


mocr
Сообщения: 6
Зарегистрирован: 23 фев 2018, 18:15

инициируется с x.x.x.x (c pppoe интерфейса), с той стороны о 192.168.106.0/24 не знают, ipsec traffic selector 172.17.2.60/32 <> 0.0.0.0/0, где 172.17.2.60 virtual IP который выдается Strongswan (локальной сети за strongswan нет вообще, только 1 глобальный интерфейс с ip a.b.c.d).

Т.е. mikrotik тут в качестве ikev2 roadwarrior клиента, честно говоря по другому у меня и не получилось настроить (в случае когда микротик за NAT), но мне в принципе оно и надо, учитывая что необходимо, чтобы сети за ipsec друг о друге не знали (видимость только по virtual IP, ну и уточню на всякий, микротик доступен другим участникам без всяких дополнительных маршрутов, так же как и он всех видит).
Если на других клиентах, которые подключаются с такой же конфигурацией ipsec к тому же серверу, создается отдельный интерфейс и можно создать NAT правило с этим интерфейсом, то на микротике интерфейс не создается (да и вообще ip не назначается), вот на этом моменте я и застрял, попробовал посоздовать правила с SNAT - 172.17.2.60, но ничего хорошего не получилось, нет достаточного понимания.


Erik_U
Сообщения: 1768
Зарегистрирован: 09 июл 2014, 12:33

у вас на pppoe интерфейсе адрес x.x.x.x

172.17.2.60 выдается Strongswan
172.17.2.60 назначается на bridge интерфейс (я это делаю вручную).
не понятно, зачем так?
Вы потом используете маршрут

Код: Выделить всё

1 X S  0.0.0.0/0           172.17.2.60         pppoe-out                 2
он написан так, как будто 172.17.2.60 висит на pppoe-out.
Если он там не висит - маршрут и не работает.

Дальше, маскарадинг вы повесили на pppoe.

Код: Выделить всё

/ip firewall nat
add action=masquerade chain=srcnat out-interface=pppoe-out
а адрес там у вас x.x.x.x
Поэтому в интернет все натится с адреса x.x.x.x.

Т.е. у вас как настроено, так и работает.

Я не знаю, как работает Strongswan, не сталкивался.
Но микротику было бы на мой взгляд правильно 172.17.2.60 повесить на pppoe-out (если никакого виртуального интерфейса не создается).
И правило ната написать

Код: Выделить всё

/ ip firewall nat
add chain = srcnat src-address = 192.168.106.0/24 action = src-nat to-addresses = 172.17.2.60 out-interface = pppoe-out


mocr
Сообщения: 6
Зарегистрирован: 23 фев 2018, 18:15

а ведь действительно, я даже не обратил особо внимания что на бридж повесил, как будто так и надо.
Спасибо! теперь все работает.
 
Вот бы еще ip адресa vps'а не нужно было перебирить каждые сутки из-за блокировок :cry_ing:


Ответить