海运的博客

Openwrt配置Openvpn客户端自动路由

发布时间:August 4, 2012 // 分类:OpenWrt // 3 Comments

Openvpn服务器端配置去除push默认路由参数,后续可对指定IP走Openvpn路由,毕竟访问大多数IP是国内的。

#http://www.haiyun.me
#push "redirect-gateway

Openvpn安装:

opkg update
opkg install openvpn

OpenWRT下openvpn客户端配置文件:

client
dev tun 
proto udp
remote  1.1.1.1 1194
persist-key 
persist-tun 
ca ca.crt 
cert client1.crt 
key client1.key 
ns-cert-type server 
comp-lzo 
verb 3 

连接Openvpn服务器:

openvpn client.conf
Sat Aug  4 11:17:21 2012 ROUTE default_gateway=192.168.1.1
Sat Aug  4 11:17:21 2012 TUN/TAP device tun0 opened
Sat Aug  4 11:17:21 2012 TUN/TAP TX queue length set to 100
Sat Aug  4 11:17:21 2012 /sbin/ifconfig tun0 10.8.0.6 pointopoint 10.8.0.5 mtu 1500
Sat Aug  4 11:17:21 2012 /sbin/route add -net 10.8.0.0 netmask 255.255.255.0 gw 10.8.0.5
Sat Aug  4 11:17:21 2012 Initialization Sequence Completed

后台以进程方式启动OpenVPN:

openvpn --cd /etc/openvpn --daemon --config client.conf

设置指定IP或IP段走OpenVPN:

route add -host 184.164.141.188 dev tun0 
route add -net 1.1.1.0/24 dev tun0

或者直接由Openvpn服务器端push客户端路由:

push "route 184.164.141.188 255.255.255.255"
push "route 1.1.10 255.255.255.0"

Openwrt下客户端走Openvpn还要设置iptables地址转换并指定出口网卡:

iptables -t nat -I POSTROUTING -s 192.168.1.0/24 -d 184.164.141.188 -o tun0 -j MASQUERADE

也可下载国家IP数据库走Openvpn,不过这个数据有点庞大,进一步可使用iptables geoip模块标记数据包并走策略路由。

wget http://www.ipdeny.com/ipblocks/data/countries/us.zone
for ip in `cat us.zone`
do
route add -net $ip dev tun0
done

标签:openvpn, openwrt, openvpn客户端配置, openvpn自动路由

有 3 条 关于" Openwrt配置Openvpn客户端自动路由 "的评论

  1. ivyswen ivyswen

    请问您用的是哪家的vpn?

    1. 海运 海运

      使用自家VPS安装的VPN,自用。

  2. 傻狍子 傻狍子

    服务端设置了用户名密码认证的话,在openwrt的openvpn客户端的配置文件当中该如何更改配置文件呀?

发表评论

分类
最新文章
最近回复
  • zzg: http://downloads.openwrt.org.cn/PandoraBox/rali...
  • xiongrui: 看图
  • 傻狍子: filebrowser好像和这功能一样? https://github.com/filebro...
  • 陶国文: 想看看能不能安装
  • 傻狍子: 服务端设置了用户名密码认证的话,在openwrt的openvpn客户端的配置文件当中该如何更改...
  • 王阴阳师: 感谢,一点不啰嗦,还很管用!
  • simon: 刚刚看了我的vps,玛德,居然也有人在一直尝试登录,幸好我的密码是强密码
  • thornbird: 又学会一招,不错
  • 头很黑: 除了发送eth转账 ,还能转账其他的代币吗 比如eos
  • 米扑博客: 总结的很棒