OpenVPN 连接后自动设置路由

OpenVPN 连接后自动设置路由

我使用 Debian 6 作为服务器,并已在那里配置了 OpenVPN 服务器,客户端使用 tap 模式成功连接。此服务器可从互联网访问,但它也连接到内部网络。

本地 LAN:192.168.3.0/24- OpenVPN 服务器上的 eth0
OpenVPN 客户端:192.168.199.0/24- OpenVPN 服务器上的 tap0

如果有人能告诉我需要遵循哪些步骤,让连接到 OpenVPN 服务器的客户端能够看到并连接到 OpenVPN 服务器所在的 LAN 内的每台机器(192.168.3.0/24 网络),那就太好了。
如果您能告诉我如何在客户端连接后自动设置此路由,那就太好了。

答案1

如果你真的需要TAP 样式的连接,您需要指定server-bridge不带其他参数的选项 - 这将启用桥接模式,OpenVPN 会传递 DHCP 请求(DHCP 代理模式)。您还需要将您的 tun 接口与您的 LAN 接口桥接brctl

brctl addbr br0
brctl addif br0 eth0
brctl addif br0 tun0
ifconfig br0 inet 192.168.3.99 netmask 255.255.255.0

请参阅服务器桥接选项描述OpenVPN 文档了解详情。

但老实说,您应该尽可能选择路由而不是桥接 - 它允许更好的调试和减少通过您的 VPN 传输的不必要的网络噪音(广播)。

push "route 192.168.3.0 255.255.255.0"对于这种情况,包含服务器上的配置文件和随附的客户端样式配置文件(指定client选项)即可。示例:

local <your public IP address>
port <your OpenVPN port>
proto udp
dev tun0
# reduce MTU if necessary
# tun-mtu 1400

# place your cert/key/DH paths here
ca keys/ca.crt
cert keys/server.crt
key keys/private/server.key
dh keys/dhparm.pem

# OpenVPN client network
server 192.168.99.0 255.255.255.0

# push client route
push "route 192.168.3.0 255.255.255.0"

keepalive 10 60

status /var/log/openvpn-status.log

daemon

# logging options
verb 4
mute 20

查看文档有关选项参数的详细信息。

相关内容