我正在尝试弄清楚如何在 OpenVPN 上设置路由。
我已成功连接客户端 (OS X Snow Leopard) 和服务器 (OS X Leopard Server),并且它们都可以 ping 通对方。但是,我希望连接的客户端能够访问网络上的其他计算机。
以下是我的网络布局。在服务器端,有一个 Verizon Fios 路由器,它有一个公共动态 IP 地址(我通过 DynDNS.org 知道),以及一个内部地址 10.50.60.1。路由器在 DMZ 中配置了一台机器 10.50.60.160。
这台机器(10.50.60.160)托管 OpenVPN,而我想要连接的所有其他机器都在 10.50.60.x 网络上。
客户端从不同的位置进行连接(尽管我现在正在测试的客户端已为我分配了 10.1.5.11 的地址。
OpenVPN 配置为在 10.8.0.0 网络上工作,并成功将 IP 地址分配给客户端计算机。我之所以这样做,是因为我读过相关内容。我很乐意更改它,只要它能正常工作即可。我已将服务器配置文件附加在下面,您可能从“推送”和 ifconfig 条目中看到,我不太确定自己在做什么。您能否告诉我如何配置它,以便一旦 VPN 连接,我就可以 ping 并访问 10.50.60.160 和 10.50.60.x 网络上的其他计算机?
我的服务器配置文件如下:
dev tun
tls-server
ca /etc/openvpn/openvpn2/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/openvpn2/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/openvpn2/easy-rsa/2.0/keys/server.key # This file should be kept secret
dh /etc/openvpn/openvpn2/easy-rsa/2.0/keys/dh1024.pem
verb 3
comp-lzo
keepalive 10 60
ping-timer-rem
persist-tun
persist-key
server 10.8.0.0 255.255.255.0
push "route 10.50.60.0 255.255.255.0"
push "ifconfig 10.50.60.0 10.8.0.1"
ifconfig 10.8.0.1 10.50.60.0
duplicate-cn
max-clients 5
ifconfig-pool-persist /etc/openvpn/ipp.txt
任何帮助将非常感激。
谢谢
皮特
答案1
您的配置,注释为:
# we're in server mode, server takes 10.8.0.1, everything else is left for clients
server 10.8.0.0 255.255.255.0
# tell clients they can reach 10.50.60.0/24 through 10.8.0.1
push "route 10.50.60.0 255.255.255.0"
# I don't know what this is, commenting it out
#push "ifconfig 10.50.60.0 10.8.0.1"
# I don't know what this is either
#ifconfig 10.8.0.1 10.50.60.0
其余一切对我来说都很好。
需要做两件事:1)需要配置您的 VPN 服务器以传输 LAN <---> 远程 VPN 客户端的流量。从终端:
sudo sysctl -w net.inet.ip.forwarding=1
2) LAN 上的其他机器需要知道如何访问远程 VPN 客户端。一个简单的方法是在 FIOS actiontec 路由器上添加一条静态路由,通过 10.50.60.160 到达 10.8.0.0/255.255.255.0
希望这可以帮助。