我有一个简单的openvpnconfiguration。
remote 1.2.3.4 dev tun ifconfig 10.74.1.13 10.75.2.1 secret static.key route 10.75.0.0 255.255.0.0 keepalive 10 60
当链接出现时,路由表被更新。
[me@localhost ~]$ ip route 10.75.2.1 dev tun0 proto kernel scope link src 10.74.1.13 10.21.54.0/24 dev eth0 proto kernel scope link src 10.21.54.133 10.74.0.0/16 dev br0 proto kernel scope link src 10.74.0.13 169.254.0.0/16 dev eth0 scope link metric 1002 169.254.0.0/16 dev br0 scope link metric 1004 **10.75.0.0/16 via 10.75.2.1 dev tun0** default via 10.21.54.2 dev eth0
当数据包到达另一端(10.75.2.1)时,源IP地址为10.74.1.13。 但是我想要的源地址是10.74.0.13。 我可以运行这个命令
[me@localhost ~]$ sudo ip route change 10.75.0.0/16 via 10.75.2.1 src 10.74.0.13
做出这个改变。 现在源地址是我想要的(10.74.0.13)。 难题的最后一部分是我的问题。
如何让OpenVPN在首次build立链接时以这种方式设置路由?
我无法访问我的服务器。 但我记得你可以为连接到VPN服务器的每台PC制作一个自定义的ifconfig或routeconfiguration文件。
我不确定openvpn,但是pptpd允许你将你的用户帐号存储在一个mysql数据库中,并且在为pptpd使用freeradius-mysql插件时为每个用户指定一个分帧的ip地址。
这里是一个configuration教程:
http://www.pmoghadam.com/homepage/HTML/slackware-12.2-poptop-freeradius-mysql-pppoe-server.html