Мой сервер OpenVPN подключается, я все еще могу получить доступ к Интернету, но не могу получить доступ ни к одному из серверов в локальной сети.
У меня есть виртуальная сеть с диапазоном IP-адресов 172.31.0.0/16
В этой виртуальной сети есть 3 подсети:
172.31.0.0/24
172.31.1.0/24
172.31.0.0/24
Трафик, который не идет в VNET, не должен проходить через VPN.
server.conf
port 1194
proto udp
dev tun
ca /etc/openvpn/ca.crt
cert /etc/openvpn/server.crt
key /etc/openvpn/server.key # This file should be kept secret
dh /etc/openvpn/dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 172.31.0.0 255.255.0.0"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
tls-auth /etc/openvpn/ta.key 0 # This file is secret
cipher AES-256-CBC
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 3
iptables
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
клиент
client
dev tun
proto udp
remote X.X.X.X 1194
route 172.31.0.0 255.255.0.0 vpn_gateway 3
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
tls-auth ta.key 1
ns-cert-type server
cipher AES-256-CBC
comp-lzo
verb 1
Переадресация IP настроена, как показано ниже:
$ cat /proc/sys/net/ipv4/ip_forward
1
Какой у вас IP-переадресация?
cat /proc/sys/net/ipv4/ip_forward
Если это 0, вам нужно сделать
echo 1 > /proc/sys/net/ipv4/ip_forward
Мне удалось решить эту проблему. Кажется, что включение comp-lzo в конфигурацию моего клиента, но не конфигурацию моего сервера, вызывало его неработоспособность. Включение этого на сервере исправило это.