1
yeyeye 2015-11-03 08:05:54 +08:00
先抓包把协议研究出来,然后模拟请求, Openwrt 能用 JAVA ?好像一般都是 bash 脚本吧
|
2
crazycen 2015-11-03 08:13:03 +08:00 via Android
如果是 java 写的, luci 没 2g 内存跑不起来!
|
3
andyhuzhill 2015-11-03 08:34:38 +08:00
Openwrt 一般不是用C的么?
|
4
sandideas 2015-11-03 08:47:33 +08:00 via iPhone
我的思路应该会是读取短信,正则出验证码,然后脚本拨号。。。
|
5
arens 2015-11-03 09:02:19 +08:00
什么学校,必须用电信校园宽带吗?
|
6
Troevil 2015-11-03 09:06:42 +08:00
重写 pppd 需要的是 c 不是 java ,java 要写起来那得花大代价
|
7
Cavolo 2015-11-03 09:06:57 +08:00 via Android
居然不是闪迅,你就高兴吧
|
8
neo2015 2015-11-03 09:07:39 +08:00
openwrt 用 java 吗?一般不是 shell 和 lua 吗
|
9
myth 2015-11-03 09:20:11 +08:00
楼主的意思应该是想在一个废旧 android 手机运行个 APP 实现自动拨号的功能
|
10
lijsf 2015-11-03 09:33:07 +08:00 1
之前做过一点 openWRT 的东西。你这个需求我觉得最简单的可以这么来搞。
1. 在 openwrt 上写个 bash 定时任务脚本,定时去一个 web 接口上拿密码,然后拨号。 2. 在 web 服务器上写个程序发短信获取电信的密码。 这个方案简单易行,但有两个问题, 1 是路由器先得联网才能拿到密码,不一定能行。 2 是你发短信可能必须得你那个手机号才行,比较麻烦。 可以改成这个方案: 1.openwrt 上写个 server 程序,用 c/lua 都可以。监听某个端口,接收密码,拨号。用 C 就是几十行程序。 2.写个 JavaAPP ,连接 openwrt 的 server 程序,调发短信接口自动发短信,然后发送到 openwrt ,触发 openwrt server 程序自动拨号。 这个方案实现起来稍麻烦点,不过也不难。 |
11
Reficul 2015-11-03 09:33:21 +08:00 via Android 1
应该很快的吧,感觉 Android 主要是那堆函数怎么用。现查显用呗😃
|
12
xmoiduts 2015-11-03 10:07:32 +08:00 via Android
我也有类似的问题,山寨版校园网客户端,现在有完整的 C 源代码,别人的 linux 可以编译+正常使用。但我不知道如何将它移植到 openwrt 平台。不懂 linux ,只用 mipsel 的 gcc 编译了一下,运行不了。现在路由器也在吃灰。
|
13
little_cup 2015-11-03 10:17:49 +08:00 via Android 1
LZ 的需求不需要「编程」。
电信手机上装一个 tasker+tasker ssh plugin 。 手动编写规则定时发短信->正则提取出短信中验证码->ssh 连接路由并拨号。 就可以了。 以前玩过定时给 10086 发短信正则提取出余额显示在桌面,和 openwrt 上自动电信拨号(我们那里还没有验证码)。所以确定上述链条是走的通的。 |
14
kenshinhu 2015-11-03 10:18:49 +08:00
首先要懂 linux 吧
|
15
mortal 2015-11-03 10:34:59 +08:00
唉,又想起了自己大学时候为了搞这些东西从小白成为了 Linuxer …然后变成了学渣。
|
16
jasontse 2015-11-03 10:39:43 +08:00 via iPad
LZ 的需求应该是用 Java 写个 Android App 自动读短信,然后登录 OpenWrt 拨号。是这意思吧。
|
17
skylancer 2015-11-03 10:52:25 +08:00
如果 lz 不用电信卡打电话上网的话还不如买个 3G 网卡和带 USB 的路由,然后用 chat 读出来短信用 uci 写进配置然后拨号,全套全自动完成
|
18
acess OP @lijsf 我看那个破解路由配套的 APP 貌似是走 LuCI 的,不知道有没有什么资料可以查?
|
19
little_cup 2015-11-03 12:41:44 +08:00
@acess 如果你那里的电信解谜后就是 pppoe 拨号的话,直接使用 sed 命令修改 /etc/config/network 中的 option username 和 option password 两行,再 /etc/init.d/network restart 就可以了。
|
20
acess OP @little_cup 额,这个好像还可以用 uci 、 ifup 等命令搞定
? 我还要控制 WiFi 那边的 PPPoE 定时连接和断线,但这个办法应该可行,我有空就试试,谢谢你的建议。 电信已经换了标准的 PPPoE 协议,市面上的 SOHO 路由大多数都可以用。 |
22
liyvhg 2015-11-03 14:11:31 +08:00
我觉得楼主的方向太过于中规中矩了, 电信装的 APP, 90%的可能是用的 HTTP 请求, 楼主可以抓包分析一下 URI 和请求参数之类的, 然后在 Op 里面 CURL 实现一套: Crontab 定时获取密码, UCI 更新 PPPOE
|