斐讯K1路由器刷入openwrt及通过netkeeper连接校园网

一、刷入breed与openwrt

1.下载好所需软件:

  • TFTP32/TFTP64,用于刷入breed前为路由器上传文件
    http://tftpd32.jounin.net/
  • WinScp,用于在刷入openwrt后上传文件和执行命令行
    http://winscp.net/eng/docs/lang:chs
  • breed,类似安卓的第三方recovery
    http://www.right.com.cn/forum/thread-174525-1-1.html
  • 需要刷入的固件,类似手机的第三方ROM,如openwrt、移植版华硕固件等
    https://www.openwrt.org/
  • 旧版官方固件,由于新版固件无法打开调试界面,可以利用原有的路由器固件升级功能刷入旧版固件解决(1.0.0.3经测试可用)

2.恢复路由器出厂设置

3.刷入breed和固件

登录管理界面 , 假设此时路由器地址为192.168.2.1,本机地址192.168.2.100,则访问

http://192.168.2.1/goform/Diagnosis?pingAddr=192.168.2.100|echo""|telnetd

如果打开此页面后显示的是一串数字和字母,则应先刷入旧版固件并重复此操作。
出现诊断界面后,放在一边,不要关闭浏览器。
在命令提示符窗口里输入 telnet 192.168.2.1登录。如果提示没有telnet指令,需要在控制面板“程序与功能”界面中添加。打开TFTP32/TFTP64 ,选择当前连接路由器的网卡 一般IP地址为192.168.2.X。
将bread包命名为uboot.bin,并在命令行中进入其所在目录。

tftp -g -l /tmp/uboot.bin -r uboot.bin 192.168.2.x  
#这里的X是TFTP软件里对应的IP地址,/tmp/uboot.bin是openwrt下的绝对路径,后面的uboot.bin是windows下的相对路径
mtd_write write /tmp/uboot.bin Bootloade

等待上传、写入完毕,然后断开路由器电源, 按住QSS/RESET键 然后再插上电源 。访问192.168.1.1, 即可看到breed界面。在刷入固件一栏选择bin、thx等后缀的包即可。

二、破解校园网联网限制

校园网正常连通需要以下四个条件,缺一不可
1.内网认证
2.系统时间正确
3.信利(netkeeper、闪讯等)账号处理算法,拨号
4.心跳算法维持在线
苗学长的git项目: https://github.com/miao1007/Openwrt-NetKeepe 欢迎star。

1.下载sxplugin.so库

可以选择在此下载或自行编译 https://github.com/miao1007/Openwrt-NetKeeper/releases

2.编写脚本

修改confnetwork.sh文件中的pppd_optionsusernamepassword 字段。其中pppd_options字段应与不同版本sxplugin库的文件名相对应。

#!bin/sh
#this is a sample for Netkeeper in Chongqing on OpenWRT
uci set network.netkeeper='interface'
uci set network.netkeeper.proto='pppoe'
uci set network.netkeeper.ifname='eth0.2'
#TODO:set your province's plugin name
uci set network.netkeeper.pppd_options='plugin chongqing_sxplugin.so'
#TODO:set pppoe account and password
uci set network.netkeeper.username='18908351234@cqupt'
uci set network.netkeeper.password='123456'
uci set network.netkeeper.metric='0'
uci commit network
#set firewall
uci set firewall.@zone[1].network='wan netkeeper'
uci commit firewall
/etc/init.d/firewall restart

3.上传

yourprovince_sxplugin.so -> /usr/lib/pppd/2.4.7/
confnetwork.sh -> /tmp/

4.设置

chmod a+x /tmp/confnetwork.sh#为之前配置好的脚本添加运行权限
sh /tmp/confnetwork.sh#运行该脚本

5.为路由器设置时间同步服务

由于运营商的账号处理算法所需的随机数由当前时间产生,路由器内部时间正确是拨号成功的前提之一。断电后,路由器内部时间常常发生异常,但此时又无法通过互联网上的时间同步服务(NTP)纠正。除了拨号前在网页管理页面手动同步浏览器时间,可以在内网建立时间同步服务器,以保证外网未连通的情况下路由器内部时间依然正常。
此处以重邮为例,使用红岩网校提供的NTP服务器:

202.202.43.120
202.202.43.131
202.202.43.231

openwrt的系统设置中自带时间同步选项,但同步间隔较长,往往无法达到要求。可通过计划任务手动添加更频繁的时间同步。

*/5 * * * * ntpd -n -q -p 202.202.43.120
*/5 * * * * ntpd -n -q -p 202.202.43.131
*/5 * * * * ntpd -n -q -p 202.202.43.231

意为不论日期、时间,每五分钟在线同步一次系统时间。

6. 添加内网路由表

此处以重邮为例,以下添加的两行分别为教务在线和BT当铺所在的网段;”172.18.60.1”为所在楼栋的网关,此地址可用netkeeper正常拨号后查看本机路由表。

Interface Target Netmask Gateway
wan 202.202.32.0 255.255.240.0 172.18.60.1
wan 172.0.0.0 255.0.0.0 172.18.60.1

你可能感兴趣的:(openwrt,嵌入式)