目录
小米AC2100底包输入:为了省事可以直接借bleach 1991编译好的固件。
如果是下的是bleach大佬的固件在网络下有个多线多拨,一些配置是写好的
保存应用后,回到网络栏目下的接口界面,因为大都是给家庭路由用的,所以我们需要把pppoe的拨号模式改为dhcp自动获取。
接下来可以使用我这个脚本去登陆学校官网。学校的post请求抓包我也会说
- 小米AC2100路由一部
- Chrome
- VM虚拟机(非必要)
- *条件(非必要)
- 千兆网线两条(一条用来测试一条用来连电脑)
测速图
我只有三个账号所以叠加大概300mbps左右
pandavan: 稳定高效,利用率高。
openwrt:功能多,扩展性好
小米获取ssh权限,刷入breed
此步骤可以参考openwrt官网
官网进入后右上角调整中文
刷入breed的基础操作可以在各自的[OpenWrt Wiki] 硬件表格里找到
这里只介绍小米AC2100的具体操作:
我这里使用的是官方刷root的最方便的方法,web漏洞的注入,后续的breed注入也是url注入。
首先用已降级的2.0.722版本,用网线连接电脑
在浏览器地址栏输入192.168.31.1,进入管理页面并登录后地址栏链接应为:
http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/web/home#router
<STOK>就是你stok后面那一串随机生成的类似于cookie。把这一段stok复制下来后面要用。
注意每一次路由重启stok都会变都必须重新复制
在新建浏览器中输入以下连接此代码是用来检查NAND坏块的
http://192.168.31.1/cgi-bin/luci/;stok=CCCCCCCCCCC/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=%0A%5B%20-z%20%22%24(dmesg%20%7C%20grep%20ESMT)%22%20%5D%20%26%26%20B%3D%22Toshiba%22%20%7C%7C%20B%3D%22ESMT%22%0Auci%20set%20wireless.%24(uci%20show%20wireless%20%7C%20awk%20-F%20'.'%20'%2Fwl1%2F%20%7Bprint%20%242%7D').ssid%3D%22%24B%20%24(dmesg%20%7C%20awk%20'%2FBad%2F%20%7Bprint%20%245%7D')%22%0A%2Fetc%2Finit.d%2Fnetwork%20restart%0A
如果返回code:0代表就是成功了
如果返回401错误,原因可能是版本不正确或者<STOK>值错误或者链接输入不完整等,提示404错误,说明输入地址错误,请检查固件版本或链接地址...
运行代码后,你路由器的2.4g WiFi名称会改名成:比如 "ESMT","Toshiba","Toshiba 90 768"。 90和768是坏块。 如果ESMT或者Toshiba后面没数字,那么就没有坏块。
此代码是用来刷BREED的。你可以先检查坏块,不检查也没关系。Bootloader那里肯定不会有坏块,不然官方Uboot也会出问题的。
http://192.168.31.1/cgi-bin/luci/;stok=CCCCCCCCCCC/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=%0Acd%20%2Ftmp%0Acurl%20-o%20B%20-O%20https%3A%2F%2Fbreed.hackpascal.net%2Fr1286%2520%255b2020-10-09%255d%2Fbreed-mt7621-xiaomi-r3g.bin%20-k%20-g%0A%5B%20-z%20%22%24(sha256sum%20B%20%7C%20grep%20242d42eb5f5aaa67ddc9c1baf1acdf58d289e3f792adfdd77b589b9dc71eff85)%22%20%5D%20%7C%7C%20mtd%20-r%20write%20B%20Bootloader%0A
如果路由器在60秒内重启则代表刷BREED成功(灯会从蓝变橘,最终变蓝进入系统)。成功后拔掉电源,按住reset同时接上电源等10秒即可进入breed。192.168.1.1
如果没重启,可能是stok过期了。进入后台复制新的stok即可。也有可能下载的BREED损坏,从新运行代码。也有可能没网络。
breed后台又俗称不死后台,之后只要不刷那些不兼容的固件,路由器都不会变砖。
刷入openwrt
如果你是虚拟机|软路由用户可以通过lean大佬的源码自行编译适合x86的固件使用,功能集成多,开源无任何后门忧虑。
这里我放一下lean大佬的开源仓库https://github.com/coolsnowwolf/lede大家可以自行编译大佬有全套手把手教程。编译出来是镜像文件,虚拟机直接导入,软路由用烧录软件写进去。
小米AC2100底包输入:为了省事可以直接借bleach 1991编译好的固件。
bleach-mod-20220221-openwrt-ramips-mt76x8-xiaomi_mi-router-4c-initramfs-kernel.bin
这个是底包我们要先刷入,具体方法便是:进入192.168.1.1,点击固件更新,勾选固件,还有自动重启,点击选择文件,从你下载文件的位置选中,最后点击上传。
点击更新,注意这里必须MD5校验要出来,MD5校验没出来可能是文件损坏,或者路由器有坏块
如果没问题,就点击更新。进度条完成后等待一分钟,就可以输入192.168.1.1进入openwrt新的后台。这里ssh密码和账户也是这个,这里推荐xshell工具,可以去官网免费申请xshell和xftp。
默认后台账户密码
IP:192.168.1.1
用户:root
密码:password
点击备份/升级我们可以就可以使用升级包刷写了
bleach-stable-20220226-openwrt-ramips-mt7621-xiaomi_mi-router-ac2100-squashfs-sysupgrade.bin
还是和底包一样的校验步骤。刷完之后就是这样
到此我们openwrt就刷写完毕。
单线多拨配置
先看一下宿舍网线布局
一开始接H3C的线是没有用的,必须拉线接网口。就是那面板不同宿舍布局不一样。
如果是下的是bleach大佬的固件在网络下有个多线多拨,一些配置是写好的
按照这个设置设置好不要点掉线检测,之后我会有脚本给各位,实现全天在线自动化。
保存应用后,回到网络栏目下的接口界面,因为大都是给家庭路由用的,所以我们需要把pppoe的拨号模式改为dhcp自动获取。
你拨几个号现在就有多少个VWAN接口,就像这样
我们依次把VWAN和WAN的模式改为DHCP,在高级设置中这四个接口的每一个网关跃点都不能一样,不然获取不到ip,注意WAN也要改dhcp和网关跃点,不然虚拟出来的VWAN接口获取不到ip地址。
在接口都获取到ip地址后,在我这个教程中多拨在web端的配置就已经结束了。
如果是其他版本的童鞋,会遇到负载均衡方面的问题,我也简单说一下:
负载均衡基本配置是1接口1成员1条策略2条规则,成员里的跃点数必须相同,权重可以自行设置,接口里的设置就是你在接口界面的设置不必多说。策略是为规则服务的
你制定的每一条策略都是分配给规则的。这个是用来干什么的呢,主要就是你的ip可能会跳到其他ip上去,服务商如果检测到就会禁止你继续访问,这些规则也有大佬进行配置收集。大家可以自行查询。
接下来可以使用我这个脚本去登陆学校官网。学校的post请求抓包我也会说
使用shell写的一个小脚本
#!/bin/sh
VAR="macvlan1"
VAR2="macvlan2"
VAR3="macvlan3"
HOST=$(ifconfig $VAR | grep "inet addr" | awk '{ print $2}' | awk -F: '{print $2}')
HOST2=$(ifconfig $VAR2 | grep "inet addr" | awk '{ print $2}' | awk -F: '{print $2}')
HOST3=$(ifconfig $VAR3 | grep "inet addr" | awk '{ print $2}' | awk -F: '{print $2}')
echo $HOST
echo $HOST2
echo $HOST3
curl 'http://10.255.255.34/api/v1/login' -H 'Connection: keep-alive' -H 'Accept: application/json, text/plain, */*' -H 'DNT: 1' -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36' -H 'Content-Type: application/json;charset=UTF-8' -H 'Origin: http://10.255.255.34' -H 'Referer: http://10.255.255.34/authentication/login' -H 'Accept-Language: zh-CN,zh;q=0.9,zh-US;q=0.8' --data-raw '{"username":"账号","password":"密码","channel":"2","ifautologin":"1","pagesign":"secondauth","usripadd":"'${HOST}'"}'
sleep 3
curl 'http://10.255.255.34/api/v1/login' -H 'Connection: keep-alive' -H 'Accept: application/json, text/plain, */*' -H 'DNT: 1' -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36' -H 'Content-Type: application/json;charset=UTF-8' -H 'Origin: http://10.255.255.34' -H 'Referer: http://10.255.255.34/authentication/login' -H 'Accept-Language: zh-CN,zh;q=0.9,zh-US;q=0.8' --data-raw '{"username":"账号","password":"密码","channel":"2","ifautologin":"1","pagesign":"secondauth","usripadd":"'${HOST2}'"}'
sleep 3
curl 'http://10.255.255.34/api/v1/login' -H 'Connection: keep-alive' -H 'Accept: application/json, text/plain, */*' -H 'DNT: 1' -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36' -H 'Content-Type: application/json;charset=UTF-8' -H 'Origin: http://10.255.255.34' -H 'Referer: http://10.255.255.34/authentication/login' -H 'Accept-Language: zh-CN,zh;q=0.9,zh-US;q=0.8' --data-raw '{"username":"账号","password":"密码","channel":"2","ifautologin":"1","pagesign":"secondauth","usripadd":"'${HOST3}'"}'
下面我讲怎么拿到的
进入学校的登陆界面,按下f12,然后栏目上有network这一栏,点击然后刷新界面,之后输入你的账号密码,登陆。登陆的时候这个f12开发者工具不能关。不然又要刷新一次。
右击login copy我们需要的cURL(bash)
curl 'http://10.255.255.34/api/v1/login' \
-H 'Connection: keep-alive' \
-H 'Accept: application/json, text/plain, */*' \
-H 'DNT: 1' \
-H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36' \
-H 'Content-Type: application/json;charset=UTF-8' \
-H 'Origin: http://10.255.255.34' \
-H 'Referer: http://10.255.255.34/authentication/login' \
-H 'Accept-Language: zh-CN,zh;q=0.9,zh-US;q=0.8' \
--data-raw '{"username":"账号","password":"密码","channel":"2","ifautologin":"1","pagesign":"secondauth","usripadd":"登陆时给的ip"}' \
--compressed \
--insecure
一开始复制下来是这样的我们需要整理删除,最后两个参数不需要,User-Agent是你电脑浏览器登陆的标识,可以用来伪装路由器,但是我也试过,学校根本不检测这东西。
整理好之后是这样子的:
curl 'http://10.255.255.34/api/v1/login' -H 'Connection: keep-alive' -H 'Accept: application/json, text/plain, */*' -H 'DNT: 1' -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36' -H 'Content-Type: application/json;charset=UTF-8' -H 'Origin: http://10.255.255.34' -H 'Referer: http://10.255.255.34/authentication/login' -H 'Accept-Language: zh-CN,zh;q=0.9,zh-US;q=0.8' --data-raw '{"username":"账号","password":"密码","channel":"2","ifautologin":"1","pagesign":"secondauth","usripadd":"登陆时给的ip"}'
除了最后--data-raw这个其他都是和我一样的。
这个curl可以复制下来在后台linux试一下成功会返回这样的
这说明你已经登陆成功了,可以上网了。
在--data-raw里的参数中有一个ip选项,我们都curl一遍,每一遍改一下usripadd,就可以测速了。
pandavan|老毛子
老毛子直接在breed刷入这个包就可以,老毛子配置简单易懂,给出网址,
https://opt.cn2qq.com/padavan/
小米的名称为R2100
刷好就可以进入界面,在网址左侧栏里根目录有默认配置说明。老毛子没有多拨配置,需要自己写脚本,也可以在恩山论坛中看大佬写的脚本思路,他们一般写的都是pppoe的拨号思路但是大同小异。
老毛子总体来说利用效率高,但是功能没有openwrt多。
结语:
本人也是菜鸡一枚,完全出于兴趣去搞这东西,目前恶补计算机网络方面的知识。很多遇到问题都是去论坛去百度,主要参考以下连接。
https://github.com/coolsnowwolf/lede
拿什么拯救你,我的校园网——校园网优化之单线多拨_m0_59496782的博客-CSDN博客
Padavan脚本多拨 - Padavan - 恩山无线论坛 - Powered by Discuz!