У меня следующая схема сети:
Все, что указано синим, - это VPN-клиент (кроме очевидного сервера)
Моя клиентская сторона (это верхняя сторона, где написано «Мой сайт»). Если я включу «шлюз перенаправления», я могу получить доступ к туннелю (все адреса 10.10.10.x и 172.16.ab), но я нет доступа к Интернету / локальной сети. Без него я не могу получить доступ к туннелю, но могу получить доступ к Интернету.
Конфигурация сервера:
port 1194
proto udp
dev tun
ca keys/comp-ca/ca.crt
cert keys/comp-ca/comp-svr.crt
key keys/comp-ca/comp-svr.key
dh keys/comp-ca/dh2048.pem
server 10.10.10.1 255.255.255.0
crl-verify keys/comp-ca/crl.pem
ifconfig-pool-persist servers/compSVR/logs/ipp.txt
cipher AES-128-CBC
user root
group root
status servers/compSVR/logs/openvpn-status.log
log-append servers/compSVR/logs/openvpn.log
verb 2
mute 20
max-clients 200
management 127.0.0.1 7505
keepalive 10 120
client-config-dir /etc/openvpn/servers/compSVR/ccd
client-to-client
comp-lzo
persist-key
persist-tun
ccd-exclusive
push "route 192.168.2.0 255.255.255.0"
push "route 192.168.100.0 255.255.255.0"
Конфигурация клиента:
client
proto udp
dev tun
ca ca.crt
dh dh2048.pem
cert clientlocal.crt
key clientlocal.key
remote 192.168.100.200 1194
cipher AES-128-CBC
verb 2
mute 20
keepalive 10 120
comp-lzo
persist-key
persist-tun
float
resolv-retry infinite
nobind
ccd:
ifconfig-push 10.10.10.177 10.10.10.178
iroute 192.168.100.100 255.255.255.0
iroute 172.16.0.0 255.255.0.0
push "route 192.168.100.0 255.255.255.0"
push "route 172.16.0.0 255.255.0.0"
Кроме того, я знаю, что 192.168.100.200 - это локальный адрес, поэтому использование VPN бессмысленно, но я подключаюсь к своему серверу VPN, чтобы протестировать его локально.
Я хочу иметь доступ как к туннелю (и его подсетям), так и к Интернету одновременно. Как я уже упоминал, используя эту конфигурацию, после подключения к серверу я могу видеть только туннель. Я попытался проверить журналы, чтобы увидеть, есть ли там что-нибудь, что может дать мне подсказки, но ничего.
Мой клиент - это машина с Windows 7, а сервер - Ubuntu. Я не уверен, проходят ли маршруты, которые подключаются к Интернету.
Вот несколько примеров маршрутов:
Нет VPN:
0.0.0.0 0.0.0.0 192.168.100.100 192.168.100.73 10
127.0.0.0 255.0.0.0 En vínculo 127.0.0.1 306
127.0.0.1 255.255.255.255 En vínculo 127.0.0.1 306
127.255.255.255 255.255.255.255 En vínculo 127.0.0.1 306
172.16.0.0 255.255.0.0 192.168.100.100 192.168.100.73 12
192.168.40.0 255.255.255.0 En vínculo 192.168.40.1 276
192.168.40.1 255.255.255.255 En vínculo 192.168.40.1 276
192.168.40.255 255.255.255.255 En vínculo 192.168.40.1 276
192.168.100.0 255.255.255.0 En vínculo 192.168.100.73 266
192.168.100.73 255.255.255.255 En vínculo 192.168.100.73 266
192.168.100.255 255.255.255.255 En vínculo 192.168.100.73 266
192.168.197.0 255.255.255.0 En vínculo 192.168.197.1 276
192.168.197.1 255.255.255.255 En vínculo 192.168.197.1 276
192.168.197.255 255.255.255.255 En vínculo 192.168.197.1 276
224.0.0.0 240.0.0.0 En vínculo 127.0.0.1 306
224.0.0.0 240.0.0.0 En vínculo 192.168.40.1 276
224.0.0.0 240.0.0.0 En vínculo 192.168.197.1 276
224.0.0.0 240.0.0.0 En vínculo 192.168.100.73 266
255.255.255.255 255.255.255.255 En vínculo 127.0.0.1 306
255.255.255.255 255.255.255.255 En vínculo 192.168.40.1 276
255.255.255.255 255.255.255.255 En vínculo 192.168.197.1 276
255.255.255.255 255.255.255.255 En vínculo 192.168.100.73 266
С "шлюзом перенаправления":
0.0.0.0 0.0.0.0 10.10.10.114 10.10.10.113 31
10.10.10.0 255.255.255.0 10.10.10.114 10.10.10.113 31
10.10.10.112 255.255.255.252 En vínculo 10.10.10.113 286
10.10.10.113 255.255.255.255 En vínculo 10.10.10.113 286
10.10.10.115 255.255.255.255 En vínculo 10.10.10.113 286
127.0.0.0 255.0.0.0 En vínculo 127.0.0.1 306
127.0.0.1 255.255.255.255 En vínculo 127.0.0.1 306
127.255.255.255 255.255.255.255 En vínculo 127.0.0.1 306
172.16.0.0 255.255.0.0 192.168.100.100 192.168.100.73 12
192.168.2.0 255.255.255.0 10.10.10.114 10.10.10.113 31
192.168.40.0 255.255.255.0 En vínculo 192.168.40.1 276
192.168.40.1 255.255.255.255 En vínculo 192.168.40.1 276
192.168.40.255 255.255.255.255 En vínculo 192.168.40.1 276
192.168.100.0 255.255.255.0 En vínculo 192.168.100.73 266
192.168.100.73 255.255.255.255 En vínculo 192.168.100.73 266
192.168.100.200 255.255.255.255 192.168.100.100 192.168.100.73 11
192.168.100.255 255.255.255.255 En vínculo 192.168.100.73 266
192.168.197.0 255.255.255.0 En vínculo 192.168.197.1 276
192.168.197.1 255.255.255.255 En vínculo 192.168.197.1 276
192.168.197.255 255.255.255.255 En vínculo 192.168.197.1 276
224.0.0.0 240.0.0.0 En vínculo 127.0.0.1 306
224.0.0.0 240.0.0.0 En vínculo 10.10.10.113 286
224.0.0.0 240.0.0.0 En vínculo 192.168.40.1 276
224.0.0.0 240.0.0.0 En vínculo 192.168.197.1 276
224.0.0.0 240.0.0.0 En vínculo 192.168.100.73 266
255.255.255.255 255.255.255.255 En vínculo 127.0.0.1 306
255.255.255.255 255.255.255.255 En vínculo 10.10.10.113 286
255.255.255.255 255.255.255.255 En vínculo 192.168.40.1 276
255.255.255.255 255.255.255.255 En vínculo 192.168.197.1 276
255.255.255.255 255.255.255.255 En vínculo 192.168.100.73 266
Без "перенаправления-шлюза":
0.0.0.0 0.0.0.0 192.168.100.100 192.168.100.73 11
10.10.10.0 255.255.255.0 10.10.10.114 10.10.10.113 31
10.10.10.112 255.255.255.252 En vínculo 10.10.10.113 286
10.10.10.113 255.255.255.255 En vínculo 10.10.10.113 286
10.10.10.115 255.255.255.255 En vínculo 10.10.10.113 286
127.0.0.0 255.0.0.0 En vínculo 127.0.0.1 306
127.0.0.1 255.255.255.255 En vínculo 127.0.0.1 306
127.255.255.255 255.255.255.255 En vínculo 127.0.0.1 306
172.16.0.0 255.255.0.0 192.168.100.100 192.168.100.73 12
192.168.2.0 255.255.255.0 10.10.10.114 10.10.10.113 31
192.168.40.0 255.255.255.0 En vínculo 192.168.40.1 276
192.168.40.1 255.255.255.255 En vínculo 192.168.40.1 276
192.168.40.255 255.255.255.255 En vínculo 192.168.40.1 276
192.168.100.0 255.255.255.0 En vínculo 192.168.100.73 266
192.168.100.73 255.255.255.255 En vínculo 192.168.100.73 266
192.168.100.255 255.255.255.255 En vínculo 192.168.100.73 266
192.168.197.0 255.255.255.0 En vínculo 192.168.197.1 276
192.168.197.1 255.255.255.255 En vínculo 192.168.197.1 276
192.168.197.255 255.255.255.255 En vínculo 192.168.197.1 276
224.0.0.0 240.0.0.0 En vínculo 127.0.0.1 306
224.0.0.0 240.0.0.0 En vínculo 10.10.10.113 286
224.0.0.0 240.0.0.0 En vínculo 192.168.40.1 276
224.0.0.0 240.0.0.0 En vínculo 192.168.197.1 276
224.0.0.0 240.0.0.0 En vínculo 192.168.100.73 266
255.255.255.255 255.255.255.255 En vínculo 127.0.0.1 306
255.255.255.255 255.255.255.255 En vínculo 10.10.10.113 286
255.255.255.255 255.255.255.255 En vínculo 192.168.40.1 276
255.255.255.255 255.255.255.255 En vínculo 192.168.197.1 276
255.255.255.255 255.255.255.255 En vínculo 192.168.100.73 266
Я думаю, что проблемы как-то связаны с таблицей маршрутов (см. Выше), которая передается в Windows.
Первая проблема в том, что вы тестируете его в сегменте локальной сети 192.168.100.0/24
- это можно сделать, но возникают проблемы с конфликтом адресов. Например по умолчанию вы заходите на сервер 192.168.100.200
через устройство Ethernet, но после настройки VPN вы перенаправляете 192.168.100.0/24
в туннель с push "route 192.168.100.0 255.255.255.0"
.
Вторая проблема заключается в том, что VPN-сервер не может быть настроен для пересылки пакетов, которые приходят из VPN с redirect-gateway
. Вот почему вы теряете доступ к локальной сети и Интернету - ваши пакеты приходят от клиента к серверу, но не пересылаются.
Готов поспорить, решение такое же, как здесь: OpenVPN не шлюз по умолчанию для всего трафика - прочитать часть о sysctl
и iptables
и дайте нам знать, помогло ли это.