OpenWrt 及其他

最近和各种设备以及服务打交道略多。

上周解决的一个棘手的问题在于,FreeRadius 给 OpenVPN 客户端下发的配置信息只有 IP,但是实际情况是需要同时下发一条路由的配置的。经过仔细观察,打消了他们要自己在拨号接通后监控文件改变然后向其中追加所希望的内容的想法,在 radreply 表中插入了一条路由规则即完美解决。

近几天则是要在 OpenWrt 上暴露几个可以调用的 Web API。开始的测试环境是手里一台老的 WNDR3700,里面的 OpenWrt 版本是 17.01,仿照文档写了个模块,没想到在 Lua 代码里只要执行系统命令就会碰壁,出现 Bad Gateway 的错误消息,哪怕是像 ls 这样的简单输出都不行。今天索性在相对真实的环境里尝试,最后发现中规中矩地写是可以执行命令的,只不过最后成功的时候,使用的调用系统命令的 Lua/Luci 函数是 luci.util.exec,而不是之前尝试过的 luci.sys.call 或者 luci.sys.exec,中间的改动并非仅此一处,具体原因还需详查,只不过现在将将度过了难关而已。

眼前还有两个问题,一个在 OpenWrt 上搭建的 OpenVPN 服务,需要能启用 FreeRadius 认证的 plugin,但 opkg 安装上的 OpenVPN 看起来不认识配置文件里的 plugin 项,感觉像是编译时将此特性剔除了。

另一个是 sstp 相关的问题,还没问到细节,再说吧。

还有个耿耿于怀的是,华为的 ME909s-821 模块,在 OpenWrt 上还没有使用 RNDIS 模式拨号成功。这个搭进去接近两天时间的努力都没成,极端不服,稍后再战!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注