L2TP在Linux桌面上一直是「二等公民」,NM一直没有加入官方的L2TP插件,因为NM开发者觉得现有的L2TP工具质量不高,连不用配置文件直接用命令参数或者stdin驱动都不行。(最近的一个好消息就是xl2tpd复活了:https://github.com/xelerance/xl2tpd )
但是Android好像没有这个哦?所以我最近去瞄了瞄Android的源码,发现不少东西... 首先他们为了支持PPTP和L2TP,给内核加了两个模块:pppopns、pppolac https://android.googlesource.com/kernel/common/+/android-3.10/drivers/net/ppp/ 其次他们在用户空间写了个mtpd来调用那两个模块: https://android.googlesource.com/platform/external/mtpd/+/master 因为L2TP往往需要IPSec,他们顺便给ipsec-tools写了个wrapper: https://android.googlesource.com/platform/external/ipsec-tools/+/master 当然还有用Java写的一些界面的东西来调用这些东西,这里就不列举了。 总结来说,Google是个搞定一个东西,开源在自己tree里就完事的主,可惜Linux桌面连个搞定东西的主都没有... 习题(没人做我就改天自己做吧): 研究Chrome OS如何支持L2TP(应该和Android完全不同) -- 您收到此邮件是因为您订阅了 Google 网上论坛的“广州 GNU/Linux 用户组”论坛。 要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到 [email protected]。 要向此网上论坛发帖,请发送电子邮件至 [email protected]。 通过以下网址访问此论坛:http://groups.google.com/group/gzlug。 要查看更多选项,请访问 https://groups.google.com/groups/opt_out。
