Înlănțuieți două subrețele VPN prin VPS

Am nevoie să lanț două subrețele prin VPS conform acestei scheme:

192.168.1.0/24 -> Client VPN -> VPS <- Client VPN <- 192.168.2.0/24

Așa că vreau să ajung, de exemplu, la 192.168.2.2 din 192.168.1.0/24 și invers. Am creat două tuneluri OpenVPN astfel încât 192.168.1.0/24 este conectat la primul tunel și 192.168.2.0/24 este conectat la cel de-al doilea tunel. Desigur, am stabilit rute statice adăugând 192.168.2.0/24 la rețelele locale ale primului tunel și 192.168.1.0/24 la rețelele locale ale celui de-al doilea tunel.

Problema este că nu pot ajunge la nimic de la clienți .

0
задан 14 October 2019 в 20:56
1 ответ

На самом деле я использовал нечто подобное, чтобы подключиться к моей домашней сети через Интернет.

Моя домашняя сеть находится за сетью операторского класса, поэтому мне нужно перепрыгнуть через все набор обручей для использования VPN.

Обратная сторона: очень низкая производительность, когда мы измеряем пропускную способность через VPN по сравнению с обычным интернет-соединением.

Подсказка: у меня соединение 300/300 Мбит / с, но я измерил на максимум 17 Мбит / с по VPN.

Я использую OpenVPN в качестве своего VPN-сервера. В основном потому, что мне нужен VPN-сервер, поддерживающий TCP-пакеты, так как я не могу поддерживать соединение VPN через UDP.

Это настолько плохо, что мне нужно установить таймер поддержки активности на 10 секунд или меньше, иначе оператор связи Уровень NAT отключит мое VPN-подключение из моей домашней сети к VPN-серверу. : - (

Итак, моя рекомендация: если вам нужна максимальная производительность вашего VPN-соединения. Переключитесь на пакеты UDP, если это возможно.

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ:

Моя сеть VPN в настоящее время неактивна, поэтому предоставленная информация ниже может быть здесь и там опечатка, но общая идея должна работать.

В любом случае. Вперед к моей настройке:

Network schematic for my VPN net

Большая часть волшебства происходит на сервере VPN.

Каждый из них мой клиент подключается к моему серверу, используя уникальный сертификат клиента.Я использую предоставленное CommonName из клиентского сертификата для поиска в каталоге конфигурации клиента для дальнейших настроек.

Мой VPN-сервер размещен на VPS-сервере (TransIP.eu), который находится в совершенно другой стране, чем я. Я выбрал их, потому что они были дешевыми и у VPN-сервера было очень быстрое соединение с Интернетом (10 Гбит / с).

Вам не нужно использовать моего VPS-провайдера. Любой может сделать это, если у вас есть доступ к настройке OpenVPN самостоятельно. : -)

Мое решение в основном построено на следующем:

Несколько клиентов OpenVPN на маршрутизируемом TUN

Важные строки в моем server.conf :

# The actual VPN net. 
# Each VPN client connected to the VPN server can ping each other 
# on the 192.168.100.0/24 subnet.

server 192.168.100.0 255.255.255.0

# I can't really remember if I need to push the 192.168.100.0/24 subnet 
# from the general settings to the client.
#
# All VPN clients gets an IP address from this range.
#
# Comment it out if not needed. 
push "route 192.168.100.0 255.255.255.0

ifconfig-pool-persist ipp.txt

# Location of the client specific configuration files.
# It is in the 'ccd/' subfolder.

client-config-dir ccd

# Neccessary so that each VPN client can see each other (aka 'ping'). 
client-to-client

В моем ccd Подпапка У меня есть следующие файлы:

RasberryPi4
MyFriend

Содержимое файла RasberryPi4 :

ifconfig-push 192.168.100.2 255.255.255.0
push "route 192.168.0.0 255.255.255.0 192.168.100.3 1"
iroute 192.168.1.0 255.255.255.0

Содержимое файла MyFriend :

ifconfig-push 192.168.100.3 255.255.255.0
push "route 192.168.1.0 255.255.255.0 192.168.100.2 1"
iroute 192.168.0.0 255.255.255.0

Предположим, что клиент подключите VPN-сервер с клиентским сертификатом с общим именем «RasberryPi4», в то время как другой клиентский сертификат имеет общее имя «MyFriend».

Для моего сотового телефона нет специального файла, поэтому, когда он подключается к VPN-серверу, он получает доступный IP-адрес в подсети 192.168.100.0/24, но он не может достичь ни подсети 192.168.0.0/24, ни 192.168.1.0/24.

Если я хочу подключиться к обеим подсетям, и мой телефонный сертификат имеет CommonName MyPhone , затем мне нужен другой файл в подкаталоге ccd с именем MyPhone с хотя бы этим минимумом um settings:

push "route 192.168.0.0 255.255.255.0 192.168.100.3 1"
push "route 192.168.0.0 255.255.255.0 192.168.100.2 1"

Я также расширил конфигурацию выше, так что я мог разделить подсеть / 48 IPv6 от Hurricane Electric, чтобы у нас с другом была собственная подсеть / 56 IPv6 дома, к которой мог получить доступ любой, кто имеет адрес IPv6.

... но это совсем другая история. : -)

Надеюсь, это поможет. : -)

0
ответ дан 5 December 2019 в 00:23

Теги

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