路由器心得

编程知识 更新时间:2023-04-08 19:26:13

背景:由于档口经常遭遇小偷,于是打算装个监控。不过,监控好装,但是怎么方便得获取里面的视频呢?

文中的:路由器指的是小米路由器MINI市场wifi指的是在肉菜市场的一个公共没有密码的wifiapp指的是小米路由器手机app

方案0:在监控放置内存卡,这样是最简单的。但是如果想查看监控,那么需要:爬上去,把监控扭下来,把内存卡拆下来,然后拿读卡器读取,然后再爬上去,装好十分麻烦

方案00:使用无线网卡。资费太贵,pass。

方案一:基于现有的市场开放的wifi将视频上传到云端

手机登录客户端就可以方便得查看了。

遇到的问题:
  • 使用一段时间,发现市场的公共wifi实在是太慢了、而且时常断开。由于手机是无法直接连接到监控,只能通过互联网连接监控,但是如果监控不在线,那么就无法管理了。而且断开了监控貌似并不会自己重连。于是一段时间下来,几乎没有多少监控存储到云端。所以直接连接公共wifi上传行不通

方案二:搭建非常简易的NAS,将监控的数据传输到NAS。

这样,传输的速度有了保障,查看也非常方便,直接手机连接NAS进行查看就可以了。

  • 寻找成本最低的方案。恰好,发现家里有一个带有USB口的小米路由器MINI(非常完美的硬件)。于是,风风火火就把路由器拿到市场进行尝试了。
  • 尝试过程:很简单,就是将路由器中继到市场的公共wifi,然后监控通过无线连接到路由器,然后把监控的本地存储配置成NAS就可以了。
  • 遇到的问题:
    1. 限制网速:考虑到这个公共开放的wifi连接的人数太多(高峰100个设备连接)。于是我就进入了这个路由器,想限制一下连接设备的速度,平均一下带宽。这个是磊科的一个路由器。我就按照IP段来将所有IP都限制的网速。
    2. 无法中继:这个是最严重的问题,我在小米路由器配置页面配置无线中继,保存之后。发现一直报错,一直提示无法中继网络。在我尝试了几次之后就放弃了。
    3. 小米路由器如果没有网络连接,是无法通过app配置路由器的!!!(WTF??)通过网页版的配置非常局限(中继模式下)。
    4. 我打算将手机发起和市场相同的wifi名称,然后配置完成之后,再重启,那么路由器应该会自己去不断尝试连接市场的wifi。但是我这样操作之后,路由器并没有去连接市场的wifi,于是我想查看路由器的状态,但是,中继完成之后我连接上路由器,发现路由器的地址并没有处于市场的wifi的域之下(就是路由器根本没有连接到市场的wifi)。于是我想连接到路由器,但是很白痴的事情出现了,配置页面打不开。app也无法连接(因为如果路由器没有连接互联网,app是无法连接路由器的,WTF??)
    5. 路由器始终提示"初始化存储设备需要网络连接"。(一直初始化存储设备失败)。这个原因我找了非常久。所有东西都正常。路由器能连接到互联网,app也能连接路由器,app也能查看连接的情况。但是就是无法初始化存储设备。然后我怀疑是路由器不支持exFat格式的硬盘。于是我格式化了,还是不行。然后我无意间发现,app的路由器的状态是以前的,也就是,你需要重新绑定路由器,但是app没有任何提示(WTF!!)。解决办法:重新绑定路由器。重新初始化存储设备。(你想问我为什么不通过网页管理,因为网页不能管理存储。WTF!!)
    6. 经过以上,我发现小米自带的固件实在是太太太太难用了。理由如下:
      1. 如果路由器没有连接互联网,app是无法绑定路由器进行管理的。就是说如果只在局域网下,app无法管理路由器(竟然还要你登录小米账号??)
      2. app绑定是之前的设备,所以各种功能都无法使用。但是app却没有任何提示。
      3. 中继之后,应该提示ip地址会变更。但是并没有。这个也是找了非常久。
  • 抛弃小米自带的固件:我就想这个小米自带的限制比较多。所以尝试刷入第三方固件。

查找了很多教程。无非就是刷入开发版开启SSH刷入三方固件。但是,问题是,小米已经关闭了ssh的开放,但是我查看好些教程都是18年的,也不会旧。不过这些教程确实不靠谱。

小米路由器MINI刷潘多拉教程

刷入开发版,以开启Telnet

为什么需要刷开发版?因为开发版可以开启SSH连接。而能够访问路由器是一切的基础。路由器其实就是一台linux的电脑。

  1. 直接刷入老版本,新版本是无法开启SSH的。固件列表。直接刷这个版本小米路由器mini MiWiFi 开发版 0.8.11(非常重要,如果版本高了,不能开启Telnet,版本低了没有修改root用户的api)。刷入开发版非常简单。
    • 将上面下载好的固件改名为:miwifi.bin(非常重要),放入一个U盘的根目录(非常重要)。
    • 路由器断电插入U盘拿笔尖按住reset(非常重要)、插入电源
    • 路由器指示灯先会常亮黄色,然后指示灯会黄色一直闪(这时候可以松开reset了)、然后静候路由器指示灯变成蓝色。就完成刷入开发版的步骤了。如果指示灯是红色,那么代表这个固件有问题,重新更换固件,断电再走一遍流程就可以了,不用担心会变砖的
  2. 开启Telnet。不用考虑保修了,比较这么旧的机器了

我是参考这里的

  • 刷入开发版之后会正常开机,然后直接把路由器设置成普通模式就可以了(注意!!如果是中继模式,地址会改变,非常重要!!!地址改变了你就不是通过默认的miwifi或者192.168.31.1进入了),设置于好了,管理员的密码需要记下来,后面需要用到(非常重要)
  • 通过接口开启Telnet,设置好之后,访问路由器的主页。miwifi、或者192.168.31.1,这时候,地址栏是这样的http://miwifi/cgi-bin/luci/;stok=f095a142b2d9a6b246eaa4c2c586fc65)/web/home#router,把你浏览器中的/web/home#router 替换成 /api/xqnetwork/set_wifi_ap?ssid=tianbao&encryption=NONE&enctype=NONE&channel=1%3B%2Fusr%2Fsbin%2Ftelnetd、然后等一会浏览器返回:{"msg":"未能连接到指定WiFi(Probe timeout)","code":1616},这样就已经开启了telnet,可以连接路由器了(如果是1617,说明开发版的版本太新了,无法开启)。
  • 通过接口修改root密码,继续讲上一步,把你浏览器中的/web/home#router替换成/api/xqsystem/set_name_password?oldPwd=当前网页管理密码&newPwd=新的网页管理密码和root密码,oldPwd就是你的当前网页管理密码,newPwd就是你的新管理密码和root密码,回车以后网页显示{"code":0} 就是成功了。

    (因为原来是能够通过小米的网站获取路由器的root用户的密码,但是现在关闭了获取入口。为了能够登录路由器,我们只能通过api修改root密码)。

  • 通过telnet命令连接:
telnet 192.168.31.1 
刷入Breed(刷不死)
  • 下载Breed固件。固件列表,我们需要的 breed-mt7620-xiaomi-mini.bin 。
  • 备份原有的uboot。使用telnet登录。输入以下命令:
dd if=/dev/mtd1 of=/tmp/xiaomi_uboot.bin

系统返回,说明已经将原来的xiaomi_uboot.bin备份到/tmp

384+0 records in
384+0 records out
  • 使用netcat将xiaomi_uboot.bin备份到本地。(因为路由器上缺少非常多工具,比如scp、ftp、sftp等文件传输的工具。所以,我们选择使用nc)
    先在自己的电脑上启动一个接收文件的监听:
/**意思是我们在(接收的机器)的9995端口建立一个接收文件的流,然后接收到的文件将新建并写入xiaomi_uboot.bin文件*/
nc -l 9995 >xiaomi_uboot.bin

在路由器上往电脑的9995端口发送数据,把下面bin包发送过去,记得将10.0.1.162替换成你本地的ip

nc 10.0.1.162 9995 < /tmp/xiaomi_uboot.bin
  • 把breed固件放入/tmp下
    在电脑上的固件目录下执行
nc -l 9995 <breed-mt7620-xiaomi-mini.bin

在路由器上执行,这样就可以把固件传输到路由器上了:

nc 10.0.1.162 9992 >/tmp/breed-mt7620-xiaomi-mini.bin
  • 开始刷入。执行:
mtd -r write /tmp/breed-mt7620-xiaomi-mini.bin Bootloader
image.png
  • 关机。然后接着我们用硬物顶住reset键,插上电源开机,等到灯狂闪的时候,松开reset键,打开浏览器登录192.168.1.1就可以进入Breed的web界面了。


    image.png
  • 下载潘多拉固件。链接:https://pan.baidu/s/1LjNnidBTUNQz4DGRpqleZQ 密码:060a。如果失效,请提醒我。
  • 上传固件。固件更新勾选固件将本地下载好的潘多拉固件上传
    image.png
  • 稍等片刻。等待路由器重启,并且亮蓝色的指示灯就可以接入网线进行连接了。注意,以上的潘多拉版本的管理地址是192.168.1.1。

总结

  1. 大概的步骤是:刷入开发版、开启telnet、备份启动文件、刷入Breed不死固件、通过Breed界面刷入潘多拉或者其他固件。
  2. 如果无法开启Telnet(报1617),那么大概就是开发版的固件太新。需要更换旧的固件。
  3. 路由器上面缺少非常多linux常用的工具。传输文件可以使用netcat传输。

题外话

下面2个关于小米路由器原本固件的问题困扰我很久

  1. 小米无法进入管理页面。如果你无法通过192.168.31.1或者miwifi进入管理页面,那么可能是你的小米路由器使用了中继模式,中继模式的IP地址是在被中继的设备的域之下。所以你可以连接小米路由器的wifi,然后查看路由器的ip,通过这个ip进入。如图所示:


    image.png
  2. 小米路由器无法初始化硬盘。提示请尝试升级路由器和手机客户端再试

    image

这是因为,你也许重置了路由器(切换了工作模式,IP地址改变了),app绑定的还是重置之前的路由器,但是app仍然显示这个路由器是连接的(其实根本就没有了),而且还提示有存储设备,叫你初始化,但是你一直都没有办法初始化硬盘。

更多推荐

路由器心得

本文发布于:2023-04-08 13:24:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/a1af844d5db8820fa02c9cb26536b684.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:路由器   心得

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 57098文章数
  • 14阅读数
  • 0评论数