刷上 Froyo 的盆友们在安装 OpenVPN 的时候会怨念的发现, “明明在 OpenVPN Settings 里显示已连接, 却连一点连接上了的感觉都没有呢?”
如果在终端里手动键入 openvpn 的命令来获得反馈的 log, 会得到下面这样让你感到十分 confused 的结果:
Sat Jul 3 13:30:58 2010 Options error: Unrecognized option or missing parameter(s) in [PUSH-OPTIONS]:4: route (2.1.1)
Sat Jul 3 13:30:58 2010 Options error: Unrecognized option or missing parameter(s) in [PUSH-OPTIONS]:7: ifconfig (2.1.1)
神马? 找不到哥的 route 和 ifconfig 命令? 他们都很乖的呆在 /system/xbin 里呢…
恩, 这貌似是一个已知的 bug ,暂时可以用下面的猥琐方法给 workaround 掉:
首先, 你要保证你的内核有 tun 设备. 如果没有, 则需要到网上找到对应你内核版本的 tun.ko 文件手动刷进去:) (这些内容就不再赘述)
然后, 进入你的 root 终端, 输入下面的命令:
mkdir /system/xbin/bb
ln -s /system/xbin/ifconfig /system/xbin/bb/
ln -s /system/xbin/route /system/xbin/bb/
然后, 像你以前做的一样, 进 Market 装上 OpenVPN Installer.
注意: 安装Binary的时候选择route等命令的路径到 /system/xbin/bb
然后…恭喜你, 就这么简单:)
参考资料: http://code.google.com/p/android-openvpn-installer/issues/detail?id=2
话说胖猫你怎么解决让OpenVPN Settings的连接会调用外部script来增删路由的情况?
我是这样用的啊..没问题啊..
= =. 我弄了半天都说fork出错啊,就像普通ovpn的配置里面没有script-security 2一句那样,说external script fork failed. 看源码http://code.google.com/p/android-openvpn-settings/source/browse/src/de/schaeuffelhut/android/openvpn/service/DaemonMonitor.java#175
发现他命令行指定了script-security,就会无视配置文件里面的值!!!
长按配置文件出现的选项里有script-security选择啊…
膜拜……安卓白痴路过……
刚刚在Google里搜索到了这片文章,先Mark一下。
没有android的飘过
沙发 😳