Answer the question
In order to leave comments, you need to log in
The openvpn win client server does not see the local network behind them. how to fix?
Greetings .
win server 2019
Answer the question
In order to leave comments, you need to log in
Based on the comments, I decided to describe how it should work in theory. I specially wrapped it with such a tag so as not to bathe with the html list, it's a pain when Orthodox markdown is already done.
1. При поднятом туннеле между клиентом и сервером есть коннект по дефолту, ничего дополнительно делать не требуется.
Клиент > сервер
2. Чтобы дать клиенту доступ в сеть за сервером, надо (сделать все пункты):
2.1. На сервере в конфиге OVPN сервера сделать пуш нужной подсети
2.2. На сервере разрешить форвардинг между OVPN подсетью и локальной (которая за сервером)
2.x. Если за сервером несколько подсетей, повторить для каждой
3. Чтобы сети за клиентом дать доступ к сети за сервером надо сделать п.2 и далее два варианта (или/или):
3.1. Если клиент является шлюзом для своей локальной сети
3.1.1. На клиенте разрешить форвардинг между OVPN подсетью и локальной (которая за клиентом)
3.2. Если клиент НЕ является шлюзом для локальной сети, надо выполнить п. 3.1.1 и
3.2.1. На каждой машине в локальной сети (которая за клиентом) прописать роут до ВПН подсети через хост на котором установлен клиент
3.x. Если за клиентом несколько подсетей, повторить для каждой
Сервер > клиент
4. Чтобы дать серверу доступ в сеть за клиентом надо выполнить п.2 и
4.1. На клиенте разрешить форвардинг между OVPN подсетью и локальной (которая за клиентом)
4.x. Если за клиентом несколько подсетей, повторить для каждой
5. Чтобы сети за сервером дать доступ к сети за клиентом надо сделать п.2, п.3 и (или/или):
5.1. Если сервер является шлюзом для своей локальной сети
5.1.1. На сервере разрешить форвардинг между OVPN подсетью и локальной (которая за сервером)
5.2. Если сервер НЕ является шлюзом для локальной сети, надо выполнить п. 5.1.1 и
5.2.1. На каждой машине в локальной сети (которая за сервером) прописать роут до ВПН подсети через хост на котором установлен сервер
5.x. Если за клиентом несколько подсетей, повторить для каждой
Клиент <> сервер
6. Чтобы сети и за клиентом и за сервером видели друг друга, надо сделать все пункты.
Еще важный и не всегда очевидный момент, подсети всех объединяемых локальных сетей не должны пересекаться, т.е. не должны быть одинаковыми или не входить одна в другую.
VPN connection on the client and server creates an additional virtual network adapter with its own IP address. The VPN software is only responsible for the traffic that gets inside the VPN. Everything else is configured by standard means: routing tables, firewalls, NAT. In openvpn, some routing table settings can (should) be specified in the VPN config, and not directly edit the tables in the OS. All this applies to any OS - the principles of openvpn are the same in Linux and Windows.
Usually the client config is made as "easy" as possible. They indicate only the necessary options for connecting to the server (protocol, server address and port, encryption and logging parameters). Everything related to routing between networks (route, push route) is removed from the server config.
Option push "route ..." - adds a route on the remote side. Those. if the option is specified in the server config, then the route is added on the client side.
To add a route on the server side in the server config, use the option: route
CCD files:
You do not have the correct syntax for the ifconfig-push option.
The correct one is
: ifconfig-push client_ip mask
The server IP is not required.
In the iroute option, we specify the networks behind this particular client. These routes will be added to the server's routing table when the client connects. There is no need to duplicate these routes with the route options in the main server config.
You can also specify the push route option in the CCD file to add a route to the client for the network behind the server. Usually push route is specified in the main server config and it works for all clients.
But! In order for the networks behind the client and server to see each other, they must know which routes to send traffic to each other. If the VPN server and the VPN client are the default gateways for their networks, then there is no problem, the computers within the networks will send all traffic through them anyway. But if the VPN server and/or the VPN client are not the default gateways for their networks, then you need to add additional routes for neighboring networks through the VPN server/client. Routes can be centrally added via DHCP options, possibly AD policies.
Firewalls on any host can block traffic. To debug network interaction through VPN, I recommend first disabling firewalls on all test devices. After you configure the firewall routing, enable one at a time, immediately check the operation and make changes to the firewall rules, if necessary.
After you have achieved a connection between the VPN client and the server, everything else is the correct configuration of routing and firewalls.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question