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 .
На самом деле я использовал нечто подобное, чтобы подключиться к моей домашней сети через Интернет.
Моя домашняя сеть находится за сетью операторского класса, поэтому мне нужно перепрыгнуть через все набор обручей для использования VPN.
Обратная сторона: очень низкая производительность, когда мы измеряем пропускную способность через VPN по сравнению с обычным интернет-соединением.
Подсказка: у меня соединение 300/300 Мбит / с, но я измерил на максимум 17 Мбит / с по VPN.
Я использую OpenVPN
в качестве своего VPN-сервера. В основном потому, что мне нужен VPN-сервер, поддерживающий TCP-пакеты, так как я не могу поддерживать соединение VPN через UDP.
Это настолько плохо, что мне нужно установить таймер поддержки активности на 10 секунд или меньше, иначе оператор связи Уровень NAT отключит мое VPN-подключение из моей домашней сети к VPN-серверу. : - (
Итак, моя рекомендация: если вам нужна максимальная производительность вашего VPN-соединения. Переключитесь на пакеты UDP, если это возможно.
ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ:
Моя сеть VPN в настоящее время неактивна, поэтому предоставленная информация ниже может быть здесь и там опечатка, но общая идея должна работать.
В любом случае. Вперед к моей настройке:
Большая часть волшебства происходит на сервере 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.
... но это совсем другая история. : -)
Надеюсь, это поможет. : -)