имеется 2 хоста, разделенных глобальной сетю - сервер и клиент. на сервере крутится виртуальная машина, сбриджованная на интерфейс, смотрящий в локальную сеть.
IP виртуалки: 192.168.1.7
IP сервера: 192.168.1.6
подсеть IP адресов за сервером соответственно 192.168.1.0
OpenVPN на сервере имеет подсеть 10.10.10.0
cat server.conf
port 30003
;proto udp
;tls-server
proto tcp
dev tun
;dev-node tap0
ca /etc/openvpn/ca.crt
cert /etc/openvpn/server.crt
key /etc/openvpn/server.key # This file should be kept secret
dh /etc/openvpn/dh1024.pem
server 10.10.10.0 255.255.255.0 # vpn subnet
# содержит информацию о ip адресах клиентов
# файл необходимо создать вручную
ifconfig-pool-persist ipp.txt
# передача клиенту информацию о домашней сети, то что за сервером
push "route 192.168.1.0 255.255.255.0" # home subnet
;duplicate-cn
keepalive 10 120
;cipher BF-CBC # Blowfish (default)
;cipher AES-128-CBC # AES
;cipher DES-EDE3-CBC # Triple-DES
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
;status openvpn-status.log
;log-append openvpn.log
verb 4
mute 20
client-to-client
client-config-dir /etc/openvpn
#route 192.168.1.0 255.255.255.0
log /etc/openvpn/openvpn.log
status /etc/openvpn/status.log
в итоге маршруты на сервере имеют вид: (подсеть 2 - другая сетевуха, br0 - соответственно моя подсеть 192.168.1.0)
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.2.253 0.0.0.0 UG 100 0 0 eth1
10.10.10.0 10.10.10.2 255.255.255.0 UG 0 0 0 tun0
10.10.10.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 eth1
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
ping -I tun0 192.168.1.1
PING 192.168.1.1 (192.168.1.1) from 10.10.10.1 tun0: 56(84) bytes of data.
^C
--- 192.168.1.1 ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1006ms