Jump to content

Все о туннелях IPIP, GRE и EoIP


Recommended Posts

4 часа назад, KorDen сказал:

Поднял IPIPoverIPsec между Ultra 2 - Giga 2 на v2.08(AAUX.0)A11 (до этого был IPsec 2.08-2.06) с настройками из шапки..

Долго гадал, почему трафик от компов не ходит, потом, увидев что пакеты даже не уходят с home на ipip0, вспомнил про isolate-private - надо бы напомнить о нем в шапке, IMO.

 

Не поделитесь как проще смотреть куда реально идут пакеты?

Link to comment
Share on other sites

Спрошу тут так эта новая фича,

Как подружить IPSec туннеля и IPSec Virtual IP?

У меня они могут пытаться лезть не в свою критокарту и ничего хорошего при этом не происходит.

Как происходит выбор криптокарты при входящем соединении?

Селфтест с примером далее.

Link to comment
Share on other sites

Еще вопрос поднятый @KorDen по соединению home-ipip

пока добавил в iptables правило

iptables -A FORWARD -o ipip0 -j ACCEPT

Соединение работает.

Через штатный ACL такое можно реализовать? Или оставить это в opkg?

Link to comment
Share on other sites

7 часов назад, r13 сказал:

Не поделитесь как проще смотреть куда реально идут пакеты?

Я просто запускал штатный захват пакетов на Ipip0 и смотрел, идут ли по нему пакеты, когда я пытаюсь пинговать удаленную сеть. Т.к. пакеты не шли - было ясно, что они теряются на моем роутере, дальше пошел обдумывать почему они теряются и вспомнил про isolate-private

  • Thanks 1
Link to comment
Share on other sites

Вылезла еще одна бяка с ресолвером ip туннеля.

В текущей реализации насколько я понимаю если ресолвинг удался то полученный ip запоминается, и по нему происходит попытка соединения

Если подключение идет через USB модем и соединение с интернет еще не установлено, то такие модемы резолвят все на себя и IPSec начинает долбится в модем :)

Как часто происходит повторный ресолвинг адреса endpoint туннеля?

Edited by r13
Link to comment
Share on other sites

15 часов назад, r13 сказал:

Спрошу тут так эта новая фича,

Как подружить IPSec туннеля и IPSec Virtual IP?

У меня они могут пытаться лезть не в свою критокарту и ничего хорошего при этом не происходит.

Как происходит выбор криптокарты при входящем соединении?

Селфтест с примером далее.

Для входящих IPsec-соединений это реально только в случае, если будут выбраны одинаковые IKE proposals, одинаковый PSK и разные IKE ID. В противном случае клиенты будут пытаться лезть в чужую crypto map.

Это врожденная особенность работы протокола IKE.

  • Thanks 1
Link to comment
Share on other sites

14 часа назад, r13 сказал:

Вылезла еще одна бяка с ресолвером ip туннеля.

В текущей реализации насколько я понимаю если ресолвинг удался то полученный ip запоминается, и по нему происходит попытка соединения

Если подключение идет через USB модем и соединение с интернет еще не установлено, то такие модемы резолвят все на себя и IPSec начинает долбится в модем :)

Как часто происходит повторный ресолвинг адреса endpoint туннеля?

По идее при каждом падении соединения должен, если не так, то это надо поправить.

  • Thanks 1
Link to comment
Share on other sites

Покажите пример как поверх существующего подключения IPSec создать туннель IPIP? Сделать по инструкции в шапке не выходит, ошибка proposals на этапе первой фазы ike. Создаю свое IPSec подключение с детальными параметрами и оно работает, добавляю IPIP0 с указанием destination IP роутера на втором конце из сети IPSec.Интерфейс поднимается, но пакеты в него не ходят. Подозреваю что проблема в указанных подсетях при настройке IPSec, там указал 192.168.4.1/32 -> 10.0.0.9/30. Пакеты ходят только между ними. У IPIP0 указываю 10.0.0.10/30. В итоге хочу получить туннель 10.0.0.10/30 -> 10.0.0.9/30 через IPSec.

Link to comment
Share on other sites

Еще бага:

На гиге 2 создан   IPIP туннель в режиме клиента. находится в состоянии down. В конфиге состояние сохранено

После перезагрузки IPSec все равно пытается создать туннель не смотря на состояние down.

Если через cli выполнить interface IPIP0 down то попытки создать IPSec туннель прекращаются но постоянно пересоздаются iptables таблицы в цикле (срабатывает netfilter хук)

селфтест далее.

 

Edited by r13
Link to comment
Share on other sites

Проверил на двух K-II релиз v2.08(AAFG.0)A11  при создании "IPIP0" с "no isolate-private" для доступа в лок.сеть, без "IPsec" схема, два белых :

Cam1----K-II(PPTP)----Инет----(PPPoE)K-II----ПК2

K-II(PPTP)

(config)> interface IPIP0
Network::Interface::Repository: Created interface IPIP0.
(config-if)> tunnel destination хххххххх.mykeenetic.ru
Network::Interface::Tunnel: Destination set to хххххххх.mykeenetic.ru
(config-if)> ip address 192.168.100.2 255.255.255.0
Network::Interface::IP: "IPIP0": IP address is 192.168.100.2/24.
(config-if)> no isolate-private
applied
(config-if)> up
Network::Interface::Base: "IPIP0": interface is up.
(config)>

K-II (PPPoE)

(config)> interface IPIP0
Network::Interface::Repository: Created interface IPIP0.
(config-if)> tunnel destination yyyyyyyy.mykeenetic.ru
Network::Interface::Tunnel: Destination set to yyyyyyyy.mykeenetic.ru
(config-if)> ip address 192.168.100.1 255.255.255.0
Network::Interface::IP: "IPIP0": IP address is 192.168.100.1/24.
(config-if)> no isolate-private
applied
(config-if)> up
Network::Interface::Base: "IPIP0": interface is up.
(config)>

Добавил маршруты стат на обоих для лок.сетей через интерфейс IPIP0. С ПК2 набрал адрес Cam1 вышел на данную камеру.

Примечание : на стороне PPTP имеем Network::Interface::Base: "IPIP0": network MTU is 1380, а на PPPoE имеем Network::Interface::Base: "IPIP0": network MTU is 1472.
Все работает. Вопрос - использования расписания на данное соединение - установка времени его работы. Естественно в WEB schedules его нет.

После выполнения на стороне PPTP - выкл и вкл все восстановилось и работало так же и с стат.маршрутом, сам встал.

(config)> interface IPIP0
(config-if)> down
Network::Interface::Base: "IPIP0": interface is down.
(config-if)> up
Network::Interface::Base: "IPIP0": interface is up.
(config-if)>

Nov 18 11:15:43ndm Network::Interface::Base: "IPIP0": interface is down.
...
Nov 18 11:16:15ndm Network::Interface::Base: "IPIP0": interface is up.
Nov 18 11:16:16ndm Network::Interface::Base: "IPIP0": network MTU is 1380.
Nov 18 11:16:16ndm Network::Interface::SecureIPTunnel: "IPIP0": tunnel is ready.
...
 
Edited by vasek00
Link to comment
Share on other sites

В 11/12/2016 в 19:06, r13 сказал:

Вылезла еще одна бяка с ресолвером ip туннеля.

В текущей реализации насколько я понимаю если ресолвинг удался то полученный ip запоминается, и по нему происходит попытка соединения

Если подключение идет через USB модем и соединение с интернет еще не установлено, то такие модемы резолвят все на себя и IPSec начинает долбится в модем :)

Как часто происходит повторный ресолвинг адреса endpoint туннеля?

Исправлено, теперь при каждой попытке реконнекта заново происходит разрешение удаленного endpoint.

Link to comment
Share on other sites

11 час назад, r13 сказал:

Еще бага:

На гиге 2 создан   IPIP туннель в режиме клиента. находится в состоянии down. В конфиге состояние сохранено

После перезагрузки IPSec все равно пытается создать туннель не смотря на состояние down.

Если через cli выполнить interface IPIP0 down то попытки создать IPSec туннель прекращаются но постоянно пересоздаются iptables таблицы в цикле (срабатывает netfilter хук)

селфтест далее.

 

Поправлено (причем скорее всего обе проблемы), появится в новом релизе.

  • Thanks 1
Link to comment
Share on other sites

40 минут назад, vasek00 сказал:

Проверил на двух K-II релиз v2.08(AAFG.0)A11  при создании "IPIP0" с "no isolate-private" для доступа в лок.сеть, без "IPsec" схема, два белых :

Cam1----K-II(PPTP)----Инет----(PPPoE)K-II----ПК2


K-II(PPTP)

(config)> interface IPIP0
Network::Interface::Repository: Created interface IPIP0.
(config-if)> tunnel destination хххххххх.mykeenetic.ru
Network::Interface::Tunnel: Destination set to хххххххх.mykeenetic.ru
(config-if)> ip address 192.168.100.2 255.255.255.0
Network::Interface::IP: "IPIP0": IP address is 192.168.100.2/24.
(config-if)> no isolate-private
applied
(config-if)> up
Network::Interface::Base: "IPIP0": interface is up.
(config)>

K-II (PPPoE)

(config)> interface IPIP0
Network::Interface::Repository: Created interface IPIP0.
(config-if)> tunnel destination yyyyyyyy.mykeenetic.ru
Network::Interface::Tunnel: Destination set to yyyyyyyy.mykeenetic.ru
(config-if)> ip address 192.168.100.1 255.255.255.0
Network::Interface::IP: "IPIP0": IP address is 192.168.100.1/24.
(config-if)> no isolate-private
applied
(config-if)> up
Network::Interface::Base: "IPIP0": interface is up.
(config)>

Добавил маршруты стат на обоих для лок.сетей через интерфейс IPIP0. С ПК2 набрал адрес Cam1 вышел на данную камеру.

Примечание : на стороне PPTP имеем Network::Interface::Base: "IPIP0": network MTU is 1380, а на PPPoE имеем Network::Interface::Base: "IPIP0": network MTU is 1472.
Все работает. Вопрос - использования расписания на данное соединение - установка времени его работы. Естественно в WEB schedules его нет.

После выполнения на стороне PPTP - выкл и вкл все восстановилось и работало так же и с стат.маршрутом, сам встал.


(config)> interface IPIP0
(config-if)> down
Network::Interface::Base: "IPIP0": interface is down.
(config-if)> up
Network::Interface::Base: "IPIP0": interface is up.
(config-if)>

Nov 18 11:15:43ndm Network::Interface::Base: "IPIP0": interface is down.
...
Nov 18 11:16:15ndm Network::Interface::Base: "IPIP0": interface is up.
Nov 18 11:16:16ndm Network::Interface::Base: "IPIP0": network MTU is 1380.
Nov 18 11:16:16ndm Network::Interface::SecureIPTunnel: "IPIP0": tunnel is ready.
...
 

С MTU это нормальное поведение, потому что мы никак не можем узнать MTU удаленного хоста, только MTU своего исходящего интерфейса. Если у вас столь разные условия и вы наблюдаете проблемы с доступностью, можете жестко задать MTU на обоих концах через

> interface IPIP0 ip mtu <value>

где value - минимальное значение из двух.

Насчет расписаний - туннели это очень новая фича, пока обкатываем ее в cli (вон сколько недочетов за две недели вылезло), чтобы ей пока пользовались только те, кто может вменяемо описать проблему ;). Веб про нее соответственно ничего не знает, посмотрим со временем.

  • Thanks 1
Link to comment
Share on other sites

В 14.11.2016 в 18:17, enpa сказал:

Nov 14 16:02:23ndmNetwork::Interface::Tunnel: "IPIP0": resolved destination 91.222.167.227.

Nov 14 16:02:23ndmNetwork::Interface::Tunnel: "IPIP0": resolved source 91.222.167.227.

думаю, зеркало само в себя смотреть конечно может, но смысл? :)

Link to comment
Share on other sites

@Le ecureuil Что-то на v2.08(AAUX.1)A11 у меня савсем IPIP over IPSec подниматься отказывается (IPSec туннель не поднимается)

Сервер Ultra, клиент Ultra2

Уже несколько раз туннели пересоздавал, не заводится.

селфтесты с обоих ниже.

Edited by r13
Link to comment
Share on other sites

В 11/19/2016 в 20:43, r13 сказал:

@Le ecureuil Что-то на v2.08(AAUX.1)A11 у меня савсем IPIP over IPSec подниматься отказывается (IPSec туннель не поднимается)

Сервер Ultra, клиент Ultra2

Уже несколько раз туннели пересоздавал, не заводится.

селфтесты с обоих ниже.

Переделано взаимодействие IPsec-подсистемы с подсистемой туннелей (касается и L2TP/IPsec, до пятничного релиза не успели) из-за ее несоответствия новым реалиям, должно помочь.

Однако у вас я вижу, что клиент сообщает о невалидном ключе.

Проверьте еще раз preshared-key на клиенте и сервере - одинаковы ли они? Если да, то попробуйте убрать ipsec encryption-level strong.

Link to comment
Share on other sites

@Le ecureuil Не, не помогло та же картина(пересоздал тоннели без strong encription, проверил одинаковость PSK сравнив значения running-config).

Господа, у кого нибудь на последней прошивке IPIP over IPSec поднимается?

Edited by r13
Link to comment
Share on other sites

В 21.11.2016 в 19:40, r13 сказал:

Господа, у кого нибудь на последней прошивке IPIP over IPSec поднимается?

Наконец-то добрался до роутеров, обновил, IPIPoverIPsec Ultra 2 - Giga 2 после обновления обоих поднялся нормально. Впрочем, и до обновления на 11.0-0 работал неделю без проблем

Link to comment
Share on other sites

1 час назад, KorDen сказал:

Наконец-то добрался до роутеров, обновил, IPIPoverIPsec Ultra 2 - Giga 2 после обновления обоих поднялся нормально. Впрочем, и до обновления на 11.0-0 работал неделю без проблем

@KorDen Спасибо.

@Le ecureuil IPIPoverIPsec туннель завелся только после того как удалил крито карту обычного IPSec туннеля на сервере(на вкладке безопасность)

Там был ike v2 сервер, видимо они как то мешают друг другу.

селф тесты далее.

 

Edited by r13
Link to comment
Share on other sites

@Le ecureuil Почитал документацию, в текущей реализации метрика в маршрутах не используется.

Как будет осуществляться маршрутизация если скажем у меня 2 соединения между роутерами PPTP и IPIP и маршруты на них висят одинаковые?

Link to comment
Share on other sites

2 часа назад, r13 сказал:

@KorDen Спасибо.

@Le ecureuil IPIPoverIPsec туннель завелся только после того как удалил крито карту обычного IPSec туннеля на сервере(на вкладке безопасность)

Там был ike v2 сервер, видимо они как то мешают друг другу.

Это известная ситуация (это даже не проблема, просто особенность протокола IKE), в случае сервера для совместимости разных вариантов настроек IKE proposal, IKE version, IKE mode и IKE preshared-key должны полностью совпадать для всех серверов, иначе будете получать такие ошибки.

  • Thanks 1
Link to comment
Share on other sites

1 час назад, r13 сказал:

@Le ecureuil Почитал документацию, в текущей реализации метрика в маршрутах не используется.

Как будет осуществляться маршрутизация если скажем у меня 2 соединения между роутерами PPTP и IPIP и маршруты на них висят одинаковые?

Если подняты оба соединения, то ничего хорошего не ждите :) Если же в произвольный момент времени поднят только один из двух интерфейсов, то будут прописаны только его маршруты, и все будет нормально.

  • Thanks 2
Link to comment
Share on other sites

В 24.11.2016 в 22:26, Le ecureuil сказал:

Если подняты оба соединения, то ничего хорошего не ждите :) Если же в произвольный момент времени поднят только один из двух интерфейсов, то будут прописаны только его маршруты, и все будет нормально.

Поэкерементировал с 2я поднятыми каналами и 2мя маршрутами  до одной сети через них (PPTP и IPIP)

Результаты:

1. Ничего страшного не происходит, производится какая-то хитрая приоритезация:

Если поднят IPIP то есть маршрут через него, если подняты оба то есть маршрут только через PPTP

Если отключить PPTP то возвращается маршрут через IPIP

(проверял через веб и через opkg)

2. Метрики таки есть, если смотреть через opkg то добавленные в web маршруты с метриками действительно содержат метрики.

3. Вылез мелкий баг в web при редактировании маршрутов к одной и той же сети:

Добавил  2 маршрута к одной сети  через IPIP и PPTP, все ок

Если затем отредактировать PPTP маршрут например убрать галку "добавлять автоматически" то маршрут через IPIP удаляется. Зеркальная операция не работает, Если редактировать маршрут через IPIP то все ок

 

UPD

Даже редактировать не обязательно, если сначала добавить маршрут через IPIP а затем до той же сети через PPTP то маршрут через IPIP затирается

В логе следующее:

Nov 26 18:43:15ndm
Network::RoutingTable: added static route: 192.168.10.0/24 via IPIP10.
Nov 26 18:43:15ndm
Core::ConfigurationSaver: saving configuration...
Nov 26 18:43:19ndm
Core::ConfigurationSaver: configuration saved.
Nov 26 18:43:23ndm
Network::RoutingTable: deleted static route: 192.168.10.0/24 via IPIP10.
Nov 26 18:43:23ndm
Network::RoutingTable: renewed static route: 192.168.10.0/24 via PPTP0.
Nov 26 18:43:23ndm
Core::ConfigurationSaver: saving configuration...

 

Edited by r13
Link to comment
Share on other sites

5 часов назад, Le ecureuil сказал:

Некоторая порция исправлений внесена в 2.08.A.11.0-2, просьба всем протестировать.

Сейчас на ультре 2 крутится IPIP over IPSec клиент + IPIP over IPSec сервер + IPSec virtual IP

Вроде все работает,

После перезагрузки роутера криво поднялся IPIP10 over IPSec клиент, по логу вроде все ок, а пакеты не ходят. interface IPIP10 up исправило ситуацию (селфтест ниже)

 

PS IPSec virtual IP как шлюз по умолчанию еще не работает или уже работает? Если работает, то как настроить?

Link to comment
Share on other sites

И еще не баг а скорее наблюдение, пинг через IPIP10 over IPSec сильно выше чем через  PPTP

Через PPTP 5-6 Через IPIP over IPSec  60-70 между одними и теми же точками.

Edited by r13
Link to comment
Share on other sites

2 часа назад, r13 сказал:

пинг через IPIP10 over IPSec сильно выше чем через  PPTP

У меня подобного не наблюдается. Одна сетка подключена по IPIP over IPsec (AES256/SHA1/2048), другая по PPTP (MPPE128), между роутерами без туннелей пинг 1 мс, между компами через туннели без нагрузки пинг 1000 байтами стабильно 2-3 мс в обоих случаях.

Edited by KorDen
Link to comment
Share on other sites

Можно ли (и как) настроить проверку доступности туннеля и таймауты отвала/переподключения, для ***overIPsec? Сейчас, насколько я понимаю, если "сервер" перезагрузился, то клиент не переподключится без дополнительного пинка вообще, или все-таки это уже сейчас настраивается?

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...