Android 2.2 Froyo 完美安装 OpenVPN

刷上 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

8 thoughts on “Android 2.2 Froyo 完美安装 OpenVPN”

      1. = =. 我弄了半天都说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,就会无视配置文件里面的值!!!

Leave a Reply

Your email address will not be published. Required fields are marked *

QR Code Business Card