Назад | Перейти на главную страницу

Как получить доступ к подсети клиента OpenVPN

Я устанавливаю межсайтовый OpenVPN,

На данный момент:

Пользователи на стороне клиента могут получить доступ к подсетям на стороне сервера.

доступ к клиентской машине VPN [его IP-адрес в клиентской подсети] работает нормально. Но я не могу получить доступ к другим машинам в той же клиентской подсети.

Я использовал эту опцию в конфигурации сервера: поскольку это частные подсети, я добавлю их как есть:

route 172.20.56.0 255.255.255.0
client-config-dir ccd

И создал файл, совпадающий с именем клиента, со следующим содержимым:

iroute 172.20.56.0 255.255.255.0

Клиентская машина имеет этот локальный IP-адрес 172.20.56.1, к которому я могу получить доступ со стороны сервера.

Проблема в том, что я не могу получить доступ к любой другой машине на стороне клиента.

Какие-либо предложения....

На самом деле проблема, похоже, связана с ошибкой openvpn. Кажется, что с помощью topology net30 (по умолчанию, хотя эта топология теперь считается устаревшей) каким-то образом нарушает маршрутизацию openvpn. Первый шаг - добавить topology subnet в файл конфигурации вашего сервера. Еще вам нужно добавить IP-адрес vpn-сервера в качестве шлюза маршрута, так как есть ДРУГАЯ ошибка OpenVPN, которая заблокирует маршрут как есть. Так

route 172.20.56.0 255.255.255.0

должен выглядеть

route 172.20.56.0 255.255.255.0 10.10.8.1

где 10.10.8.1 - IP-адрес сервера на tun0 интерфейс.

Если все сделано правильно, вам вообще не нужно использовать какое-либо натрирование.

В route заявление в конфигурации вашего сервера и iroute оператор должен разрешить вашим пакетам попасть на удаленный сайт. Но удаленному сайту также нужны маршруты, знающие о сетях, для обратного маршрута через VPN. Вам нужно либо добавить несколько операторов маршрута в конфигурацию клиента, либо добавить несколько push "route ..." операторы в вашем ccd файле.

В любом случае, как и при устранении любой проблемы с маршрутизацией, вам необходимо трассировка и tcpdump / wirehark.