VPN между двумя приватными сетями

12
P
На сайте с 08.03.2007
Offline
250
3863

Мне нужно связать две виртуалки, у обеих есть выход в Интернет через NAT, но нет реального адреса и пробросить порты нельзя. И есть только IPv4. Есть серверы в Интернет с реальными адресами. Как бы мне организовать VPN?

M
На сайте с 24.10.2011
Offline
173
#1

openvpn с client-to-client

P
На сайте с 08.03.2007
Offline
250
#2
michaek:
openvpn с client-to-client

Да, это вариант, но я надеюсь найти что-то вроде самодельного hamachi. openvpn c client-to-client будет на крайний случай.

Посмотрел http://habrahabr.ru/post/150151/ - может и правда вместо всяких tinc сделать на openvpn

N
На сайте с 06.05.2007
Offline
419
#3

Чтобы определить как именно работает каждый из двух конкретных NAT-ов, нужна третья сторона - STUN-сервер, который может быть публичный. Тогда становится возможным обмен напрямую.

Вот я какую-то древнюю штуку нашел http://forum.ixbt.com/topic.cgi?id=24:44431

В конце концов можно и собственный STUN поднять. Он ресурсов не требует особо.

Кнопка вызова админа ()
P
На сайте с 08.03.2007
Offline
250
#4
netwind:
Чтобы определить как именно работает каждый из двух конкретных NAT-ов, нужна третья сторона - STUN-сервер, который может быть публичный. Тогда становится возможным обмен напрямую.
Вот я какую-то древнюю штуку нашел http://forum.ixbt.com/topic.cgi?id=24:44431
В конце концов можно и собственный STUN поднять. Он ресурсов не требует особо.

Получил на двух виртуалках (обе virtualbox, причём интернет идёт через виртуалбоксовый NAT):

Primary: Dependent Mapping, random port, no hairpin

и

Primary: Independent Mapping, Port Dependent Filter, random port, no hairpin

Если я правильно понял, шансов нет.

N
На сайте с 06.05.2007
Offline
419
#5
Pilat:
Получил на двух виртуалках (обе virtualbox, причём интернет идёт через виртуалбоксовый NAT):

и это все ради соединения между двумя виртуальными машинами одного и того же хоста?

Почему бы нормальную виртуальную сеть не организовать?

Если я правильно понял, шансов нет.

Возможно, у вас в этом тесте несколько натов участвуют и определяются характеристики совсем не тех натов. Tun-сервер ведь из интернета брался? пакеты прошли еще один nat ?

Не готов точно сказать, подходят ли эти характеристики для связи. Почему бы не попробовать ?

P
На сайте с 08.03.2007
Offline
250
#6
netwind:
и это все ради соединения между двумя виртуальными машинами одного и того же хоста?
Почему бы нормальную виртуальную сеть не организовать?

Одна виртуалка на работе, другая дома. Каждая в своём виртуалбоксе. Дома нат в виртуалке и нат на домашнем маршрутизаторе с реальным адресом, на работе нат такой же плюс маршрутизатор я не контролирую. То есть пройти надо аж через два ната на каждой стороне.

Glueon
На сайте с 26.07.2013
Offline
172
#7

Тут советуют openvpn, но каким образом без реального IP внешнего и проброса будет происходит подключение? И client-to-client вообще для чего здесь? Совершенно не нужен. В данном случае mode будет не server - будет два конфига с директивами "ifconfig" и P-t-P.

Возможности поднять VPN на самом сервере, хранящем ноды, нет никакой возможности?

Есть много IP-сетей в аренду под прокси, парсинг, рассылки (optin), vpn и хостинг. Телега: @contactroot ⚒ ContactRoot команда опытных сисадминов (/ru/forum/861038), свой LIR: сдаем в аренду сети IPv4/v6 (/ru/forum/1012475).
P
На сайте с 08.03.2007
Offline
250
#8
Glueon:
Тут советуют openvpn, но каким образом без реального IP внешнего и проброса будет происходит подключение? И client-to-client вообще для чего здесь? Совершенно не нужен. В данном случае mode будет не server - будет два конфига с директивами "ifconfig" и P-t-P.
Возможности поднять VPN на самом сервере, хранящем ноды, нет никакой возможности?

Я уже сделал client-to-client с openvpn, настроенном давным давно на внешнем сервере.

Реальных IP адресов у меняф нет на обоих нодах. Можно было бы с домашним роутером позаниматься и порт для openvpn пробросить, но пока меня всё удовлетворяет - потоковая скорость под мегабайт, и пинг <200 - а большего пока и не надо.

В результате краткая инструкция:

Исходные данные: есть в разных сетях две ноды в с виртуалками, каждая нода имеет только серый адрес и пробросить порты с реального адреса нельзя. На каждой ноде VirtualBox с виртуалками, которым интернет раздаётся через NAT (обеспечиваемый VirtualBox'ом).

Надо: объединить виртуалки в единую сеть.

Решение:

1) настраивается OpenVPN сервер на внешнем хосте с реальными адресами, коннектимся к нему с виртуалок, тестируем связь с openvpn сервером.

2) Добавляем на сервер client-to-client, тестируем связь между клиентами.

3) В ccd конфиги на сервере прописываем пару ip адресов для каждого point-to-point клиента (каждый клиент со своим именем - приватным ключом), на клиентах в hosts добавляем ip адреса всех клиентов кроме себя самого. Тестируем связь между клиентами по именам.

4) на клиентах в /etc/default/openvpn добавляем AUTOSTART=clientname , где /etc/openvpn/clientname.conf - имя конфигурационного файла для клиента. Перегружаемся, тестируем соединение между клиентами.

5) тестируем имитацию разрыва связи с Интернет у клиентов.

Glueon
На сайте с 26.07.2013
Offline
172
#9

Если сделали с третьей node-ой, то да, все верно.

Мое предложение с p-t-p тоже рабочее, но тогда будет два туннеля - по одному для каждой ноды.

Удобно смотреть на трафик, так как у каждой свой tun, но в данном примере, возможно, смысла нет.

В плане пинга можно еще поэксперементировать с UDP, fast-io. Может чего добавит.

P
На сайте с 08.03.2007
Offline
250
#10
Glueon:
Если сделали с третьей node-ой, то да, все верно.
Мое предложение с p-t-p тоже рабочее, но тогда будет два туннеля - по одному для каждой ноды.

Вот я не понял в чём предложение, если серые адреса везде.

Glueon:
Удобно смотреть на трафик, так как у каждой свой tun, но в данном примере, возможно, смысла нет.

В плане пинга можно еще поэксперементировать с UDP, fast-io. Может чего добавит.

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

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий