这是我的客户设置:
Site A Site B
192.168.2.0/24 192.168.0.0/24
Client A1 --|-- Server A Server B --|-- Client B1
| (192.168.2.2) (192.168.0.2) |
| (10.8.0.6) (10.8.0.1) |
Client A2 --|-- Router A ---- Internet ---- Router B --|-- Client B2
| (192.168.2.1) (192.168.0.254) |
Client A3 --| |-- Client B3
服务器 A 通过 OpenVPN 连接到服务器 B,以将两个站点相互连接。服务器 A 和服务器 B 是 Windows Server 2003,现在重新安装了 Windows 2012 R2。现在,用于 2003 配置的路由不再起作用。
我在服务器上添加了以下路由:
Server A: 192.168.0.0 mask 255.255.255.0 gw 10.8.0.1
Server B: 192.168.2.0 mask 255.255.255.0 gw 10.8.0.6
通过 DHCP 推送到客户端的路由:
Clients A: 192.168.0.0 mask 255.255.255.0 gw 192.168.2.2
default gw 192.168.2.1
Clients B: 192.168.2.0 mask 255.255.255.0 gw 192.168.0.2
default gw 192.168.0.254
服务器 A 上的 OpenVPN 配置(OpenVPN 客户端)
client
dev tun
proto udp
remote dyndns.example.com 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert server-sb.crt
key server-sb.key
remote-cert-tls server
comp-lzo
verb 3
服务器 B 上的 OpenVPN 配置(OpenVPN 服务器)
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key # This file should be kept secret
dh dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
client-to-client
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3
平:
- 服务器 A -> 10.8.0.1 正常
- 服务器 B -> 10.8.0.6 正常
- 服务器 A -> 192.168.2.2 失败
- 服务器 B -> 192.168.0.2 失败
- 任何设备 A -> 任何设备 B 失败
- 任何设备 B -> 任何设备 A 失败
在测试期间,所有 Windows 机器上的防火墙都被禁用。我的诊断是 VPN 隧道有效,但问题可能是 OpenVPN 中的设置阻止了路由,或者我的路由表中的某些内容已关闭。
我很确定这与 Windows 2003 的配置相同,每个设备都可以访问两个站点上的所有其他设备。
路由和远程访问中启用了 IPv4 转发和 LAN 路由。
经过大量手册页阅读后,我明白了:我
iroute
在 OpenVPN 服务器配置中缺少指令。将这些条目添加到配置后,它起作用了:
服务器.ovpn
ccd\客户端