然后是客户端, 将*.py和OpenVPN客户端配置文件拷贝到OpenVPN安装路径下的config目录. 注意client.ovpn文件要可写, 因为脚本会在后面重写该文件中的remote地址等部分.
图4 client.py中需要更改的变量
4, 启动服务端, 注意要用root启动:
# ./server.py
5, 回家:) 然后启动客户端. Windows首先要安装Python, 我用ActiveState Python 2.5, 很方便安装, 软件可以从http://www.activestate.com/Products/activepython/下载. 然后双击执行client.py, 运行一直到它提示可以连接, 这个过程在当前的配置状态下需要三到五分钟左右, 这主要是因为GMail设置的查新邮件时间有3分钟, 最后应该出现如下图提示:
图5 客户端执行UDP打洞成功后的提示界面
看到这个画面, 说明UDP通道已经打通, 这是你需要尽快(1分种以内)启动OpenVPN客户端, 这样即可完成连接.
图6 启动OpenVPN客户端连接
我从家里连接单位, 单位是对称NAT, 家里是锥形NAT, 本来这种网络连通的希望不大, 但我对单位的NAT方式稍有了解, 他的NAT映射具有时间局部性, 所以在server.py/client.py中做了一些优化: 针对一个PORT范围打洞, 而不是针对某个具体PORT, 这样, 连接可以成功建立, 从无失手:)
不得不说, OpenVPN的通信质量还是很不错的, 我使用的这段时间从没有出现过连接中断, 值得一试!
欢迎交流, 谢谢!Email: dugang@188.com