小米路由器AC2100写入OpenWrt

更新

2023年4月14日
第一次接触openwrt用的都是别人二次编译过的固件,在ac2100上很卡,功能略多,这次使用原生的固件,手动安装自己需要的服务,诸如openxxxxx。

本篇文章不能作为教程使用,仅记录过程

注意

注意:将路由器和电脑通过网线连接,避免后续不必要的问题

写入breed之后,断电重启之后,查看电脑获取的IP地址及网关进入breed或者openwrt网页登录界面。
windows中查看本机网卡IP地址

ipconfig /all 

找到对应的网卡的IP就行

写入breed固件系统

路由器固件降级

将路由器版本降级为2.0.722

下载地址:
在这里插入图片描述
修改完成之后重新连接WiFi,再登录

降级完成

在这里插入图片描述
通过注入获取登录ssh登录

  • 正常打开路由器登录,将浏览器栏中的stok后面的值记录下来,后面使用
    http://192.168.31.1/cgi-bin/luci/;stok=bad54/web/setting/upgrade
  • 注入,将下面的链接输入到浏览器中,<stock>替换为自己的stock值
http://192.168.31.1/cgi-bin/luci/;stok=<STOK>/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20nvram%20set%20ssh_en%3D1%3B%20nvram%20commit%3B%20sed%20-i%20's%2Fchannel%3D.*%2Fchannel%3D%5C%22debug%5C%22%2Fg'%20%2Fetc%2Finit.d%2Fdropbear%3B%20%2Fetc%2Finit.d%2Fdropbear%20start%3B

注入之后显示
在这里插入图片描述

  • 更改root密码为admin
http://192.168.31.1/cgi-bin/luci/;stok=42b7f49e3ba979b264bfba152416c1f4/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20echo%20-e%20'admin%5Cnadmin'%20%7C%20passwd%20root%3B

在这里插入图片描述
等待10分钟左右重启路由器
在这里插入图片描述
用支持ftp的远程软件,诸如xshell,MobaXterm等都可以
在这里插入图片描述
登录成功
在这里插入图片描述
检查坏块

root@XiaoQiang:/# dmesg | grep NAND
[    2.940000] # MTK NAND # : Use HW ECC
[    2.950000] NAND ID [C8 D1 80 95 40, 00809540]
[    2.950000] NAND ECC: Controller
[    2.970000] NAND device: Manufacturer ID: 0xc8, Chip ID: 0xd1 (ESMT NAND 128MiB 3,3V 8-bit), 128MiB, page size: 2048, OOB size: 64
[    2.980000] [NAND]select ecc bit:4, sparesize :64 spare_per_sector=16
[    3.220000] Creating 14 MTD partitions on "MT7621-NAND":
root@XiaoQiang:/# dmesg | grep '[B|b]ad.*block'
[    2.980000] Scanning device for bad blocks
root@XiaoQiang:/# dmesg | grep eraseblock

查看当前分区信息

root@XiaoQiang:/# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 07f80000 00020000 "ALL"
mtd1: 00080000 00020000 "Bootloader"
mtd2: 00040000 00020000 "Config"
mtd3: 00040000 00020000 "Bdata"
mtd4: 00040000 00020000 "Factory"
mtd5: 00040000 00020000 "crash"
mtd6: 00040000 00020000 "crash_syslog"
mtd7: 00040000 00020000 "cfg_bak"
mtd8: 00400000 00020000 "kernel0"
mtd9: 00400000 00020000 "kernel1"
mtd10: 01a00000 00020000 "rootfs0"
mtd11: 01a00000 00020000 "rootfs1"
mtd12: 02600000 00020000 "overlay"
mtd13: 01b80000 00020000 "obr"
mtd14: 00c1c000 0001f000 "ubi_rootfs"
mtd15: 021e8000 0001f000 "data"

下载breed
https://breed.hackpascal.net/
文件名:breed-mt7621-xiaomi-r3g.bin

使用WiFi连接的话写入openwrt时候会断开
可以看路由器上面的灯蓝色橘色一起闪烁,然后只有蓝色闪烁。代表成功。

root@XiaoQiang:/tmp# mtd -r write /tmp/breed-mt7621-xiaomi-r3g.bin Bootloader
Unlocking Bootloader ...

Writing from /tmp/breed-mt7621-xiaomi-r3g.bin to Bootloader ...     
Rebooting ...
Connection closing...Socket close.

Connection closed by foreign host.

Disconnected from remote host(miwifi) at 19:45:22.

参考恩山论坛帖子:
https://www.right.com.cn/forum/thread-4054150-1-1.html

写入原生openwrt

下载

https://firmware-selector.openwrt.org/?version=21.02.1&target=ramips%2Fmt7621&id=xiaomi_mi-router-ac2100

较新版本

https://firmware-selector.openwrt.org/?version=SNAPSHOT&target=ramips%2Fmt7621&id=xiaomi_mi-router-ac2100

原生openwrt下载链接跳转

breed控制台中固件更新
在这里插入图片描述

写入其他版本的openwrt

通过在官方固件的基础上写入其他版本的openwrt,也可以通过breed固件直接写入openwrt,
在这里插入图片描述
忽略错误提示
在这里插入图片描述

openwrt使用命令记录

重启网络服务

root@MiRouter:/etc/config# /etc/init.d/network restart

Lan的dns配置

root@MiRouter:/etc/config# cat /etc/config/dhcp 

config dnsmasq
	option domainneeded '1'
	option boguspriv '1'
	option filterwin2k '0'
	option localise_queries '1'
	option rebind_protection '1'
	option rebind_localhost '1'
	option local '/lan/'
	option domain 'lan'
	option expandhosts '1'
	option nonegcache '0'
	option authoritative '1'
	option readethers '1'
	option leasefile '/tmp/dhcp.leases'
	option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
	option nonwildcard '1'
	option localservice '1'
	option ednspacket_max '1232'
	option filter_aaaa '0'
	option dns_redirect '1'
	option cachesize '1500'
	option port '53'

config dhcp 'lan'
	option interface 'lan'
	option start '100'
	option limit '150'
	option leasetime '12h'
	option dhcpv4 'server'
	option ra_slaac '1'
	list ra_flags 'managed-config'
	list ra_flags 'other-config'
	option force '1'
	option ra 'hybrid'
	option ndp 'hybrid'
	option dhcpv6 'hybrid'
	list dhcp_option 'xxx.xx.xx.xxx,223.5.5.5'  # 配置了一个公共dns和一个地方dns,多个dns中间逗号隔开
	option ra_management '1'

config dhcp 'wan'
	option interface 'wan'
	option ignore '1'

config odhcpd 'odhcpd'
	option maindhcp '0'
	option leasefile '/tmp/hosts/odhcpd'
	option leasetrigger '/usr/sbin/odhcpd-update'
	option loglevel '4'

自行编译篇

在使用了一波别人写好的openwrt之后,尝试一下自行编译openwrt,
在这里插入图片描述

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值