通过OpenVPN服务器访问Internet的设置方式
在Windows环境中架设OpenVPN服务相对比较简单,网上这方面的教程也比较丰富,照葫芦画瓢即可。但是大部分教程都只讲了如何将client与Server通过VPN管道连接起来,使client可以正常访问Server所在的内部网络(这也是VPN的主要应用)。而现实情况中往往有一种需求,就是client需要通过server来访问Internet,即server作为Proxy,对client访问Internet的数据进行转发。互联网上大部分收费的VPN代理都是以这样的方式实现。
那么在OpenVPN中,要怎么实现呢?
一、首先,完成OpenVPN server端与client端的安装与配置。
server配置如下:
# 监听地址
local 0.0.0.0
# 监听端口
port 1194
# 使用TCP或UDP协议
proto tcp
;proto udp
# 使用TAP或TUN模式
dev tap
;dev tun
# 加密认证
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
# VPN子网
server 10.8.0.0 255.255.255.0
# 路由设置
push "route 0.0.0.0 0.0.0.0"
# 设置网关转发
push "redirect-gateway def1 bypass-dhcp"
# 设置dhcp DNS
push "dhcp-option DNS 114.114.114.114"
push "dhcp-option DNS 8.8.8.8"
ifconfig-pool-persist ipp.txt
duplicate-cn
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3
client配置如下:
client
# 使用TAP或TUN模式
dev tap
;dev tun
# 使用TCP或UDP协议
proto tcp
;proto udp
# server地址端口
remote x.x.x.x 1194
# 加密认证
ca ca.crt
cert client.crt
key client.key
ns-cert-type server
persist-key
persist-tun
comp-lzo
verb 3
要使client通过server连接Internet,则在设置中要注意:
1、使用TAP模式;
2、加入路由设置
push "route 0.0.0.0 0.0.0.0"
3、设置网关转发并设置DNS
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 114.114.114.114"
push "dhcp-option DNS 8.8.8.8"
设置完成,client正常连接server后,使用ipconfig应该能正常看到VPN网关地址,并且能够ping通VPN网关。
二、在Server端,开启NAT。
以Windows2003系统为例(Windows 2008类似):
1、添加服务器角色:路由和远程访问
2、配置NAT
3、选择server上连接Internet的接口
完成后,client应能够通过server连接Internet。
三、其他
1、OpenVPN默认使用Udp协议,网络上也说UDP速率会比TCP高。在测试中,TCP和UDP两种协议下,访问网络速度都可以达到峰值(10Mbps),可能是在这个带宽环境下,体现不出明显差别。
以上测试,在OpenVPN 2.3.4版本下测试通过。
本文出自 “专注极致” 博客,请务必保留此出处http://baimei.blog.51cto.com/8340353/1423644
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。