alexkuklin (
alexkuklin) wrote2007-10-17 12:18 pm
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
(no subject)
Вчера имел феерическое развлечение с подключением к Корбине.
Ситуация такова:
на сетевом интерфейсе клиент получает адрес из сетки 10.x.x.x
PPTP-сервер - vpn.corbina.ru, адрес 85.21.0.x
То, что большая часть роутеров не умеет прописывать static route на vpn сервер - это фигня. Мне не сложно его прописать.
Но вот то, что после установления pptp-cоединения на другой стороне ppp сервер выдает тот же ip, что и у PPTP-сервера, меня лично повергло в ступор.
Что требуется для того, чтобы отправить пакет во внешний мир через PPTP? Завернуть его в GRE-пакет и отправить на PPTP-сервер. Куда смотрит роутинг на IP этого сервера? Правильно, в ppp. И мы снова пытаемся завернуть пакет в GRE-обертку и снова засунуть в ppp. Исходящий трафик на PPP-интерфейсе растет лавинообразно, но в eth ничего не уходит. Ну и канал падает по timeout.
Я, конечно, вкрутил туда source-based routing и объяснил, что пакеты от 10.0.0.0/8 надо отправлять через eth.
Но степень ненатурализма инженеров Корбины меня поразила. Для прямого решения задачи было достаточно поставить любой серый адрес, совершенно не обязательно выделять публичный IP.
Ситуация такова:
на сетевом интерфейсе клиент получает адрес из сетки 10.x.x.x
PPTP-сервер - vpn.corbina.ru, адрес 85.21.0.x
То, что большая часть роутеров не умеет прописывать static route на vpn сервер - это фигня. Мне не сложно его прописать.
Но вот то, что после установления pptp-cоединения на другой стороне ppp сервер выдает тот же ip, что и у PPTP-сервера, меня лично повергло в ступор.
Что требуется для того, чтобы отправить пакет во внешний мир через PPTP? Завернуть его в GRE-пакет и отправить на PPTP-сервер. Куда смотрит роутинг на IP этого сервера? Правильно, в ppp. И мы снова пытаемся завернуть пакет в GRE-обертку и снова засунуть в ppp. Исходящий трафик на PPP-интерфейсе растет лавинообразно, но в eth ничего не уходит. Ну и канал падает по timeout.
Я, конечно, вкрутил туда source-based routing и объяснил, что пакеты от 10.0.0.0/8 надо отправлять через eth.
Но степень ненатурализма инженеров Корбины меня поразила. Для прямого решения задачи было достаточно поставить любой серый адрес, совершенно не обязательно выделять публичный IP.
no subject
no subject
no subject
можно и через mangle вкрутить, но зачем?