Я устанавливаю межсайтовый 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.