记路由器刷写第三方系统(openwrt与padavan)攻克校园网 以及 自编译openwrt系统三合一教程-小米路由器R4A千兆版为例

记路由器刷写第三方系统(openwrt与padavan)攻克校园网 以及 自编译openwrt系统三合一教程

万恶之源是校园网重新更新了新的网页认证系统(哆点认证-广州热点软件科技股份有限公司),限制单设备使用,且限速30mbps。本教程以及资源已实现单线多播聚合实现网速叠加,带宽叠加后网速翻倍

本教程仅供交流学习,如有侵权联系删除

本教程耗时至少两周总结而成,博主完全是从零开始,遇到了很多困难,但都在不断的尝试中突破了,还是消耗了大量的时间与精力,希望本文能够为你带来帮助,节约时间,博主只需要免费的一键三连。

楼主的编译环境系统、多版本路由器固件(包括openwrt与padavan)以及整合的软件工具会一并分享至不限速网盘,大家可以直接使用,节省90%摸索时间。

链接:  https://caiyun.139.com/m/i?145CFWiCTyTDw
/*593wCsd5jaoQ:/ 
复制本段信息,打开「中国移动云盘APP」获取。人人不限速,移动用户免流量!整合资源不限速链接

如遇压缩包损坏,请打开云盘APP保存后下载

部分固件与工具取自与csdn、恩山无线、bilibili,也特别感谢前辈的无私分享~

为缩小文章体积,阅读本文前,你应该需要初步了解:什么是路由器第三方系统、什么是openwrt、什么是breed、了解Linux...

楼主教程采用的机型:小米路由器4A 千兆版-Xiaomi-Router-4A Gigabit Edition

如果你手里有闲置路由器,或者即将入手二手路由器,请先自行搜索你的路由器支持刷些什么固件、兼容性如何、是否有教程文档

目录

1. 刷写breed

2.刷写第三方系统

3.刷入后-开始配置校园网

4.自编译openwrt-为自己机型定制系统

  • 1.刷写breed

文中对于小米r4a,已有傻瓜式一键刷写工具,无需繁琐步,骤网盘内自行下载解压使用

对于其他品牌机型的,自行搜索对应刷写breed教程,都大差不差

Breed- bootloader-引导加载程序,通俗来讲,刷了它,你就能刷写其他其他任意第三方系统:包括openwrt、padavan等等,来回切换刷写自如,同时不用担心变砖,非常好使

Breed 拥有以下特性:

实时刷机进度,进度条能准确反映刷机进度

Web 页面快速响应

最大固件备份速度,依 Flash 而定,一般能达到 1MB/s

免按复位键进入 Web 刷机模式

Telnet 功能,免 TTL 进入 Breed 命令控制台

复位键定义测试功能

固件启动失败自动进入 Web 刷机模式

可自定义位置和大小的环境变量块

傻瓜式刷写教程与软件资源整理到了这个文件夹,自行解压查看操作,不需要其他教程

刷写成功后进入管理界面:

就长这样,楼主路由器懒得重启了写帖子好累,别处复制的图,界面一样的

2.刷写第三方系统                     

楼主刷过很多系统,没办法一一展示了,也没来得及截图拍照了。都放到了资源包里自行测试,我本人能够刷成功的我都会备注,其他的大家自己刷,有breed怎么刷都不变砖。

楼主主要是用最后稳定的这个包来演示给大家看,其他系统当然也很好,但我的需求是实现校园网多播,这个固件已经编译好了我们需要多播的软件,大家也可以直接使用。

此外,编译后会产出的固件大家提前了解:

以下斜体内容小米路由器R4A的用户,仅供了解,不必深入研究,因为我们这款路由器,刷写官方版的openwrt有一些问题,无论如何你怎么去用过渡包来刷入完整固件,都无法正常进入系统,会无限重启!只有使用breed刷入我们的第三方系统,包括自编译的,才能一次性启动成功,需要特殊处理包括改环境变量(刷写案例:小米路由器4A千兆版 折腾记录 完美刷入官方openwrt 2022-08-09更新-小米无线路由器及小米网络设备-恩山无线论坛 (right.com.cn))才能刷入官方版 openwrt!     其他品牌路由器也会涉及到这个,用作为理论知识补充,大家阅读完,避免踩坑!

sysupgrade:用于升级替换已有的OpenWrt版本,这是最常用的镜像。

initramfs-kernel:用于开发或特殊情况下的一次性引导,作为安装常规sysupgrade版本的过渡步骤。由于initramfs版本完全运行在RAM中,不会在闪存中存储任何设置,因此不适合用于操作性使用。

重要的大家仔细看,不只是我的这个型号,说白了,对于官方版产出固件,一种是过度包,刷入后,它里面是没有无线功能的,他只是用来过度,我们需要进去他的控制台的升级界面来刷入我们完整的固件

这是openwrt官方固件下载界面的说明(https://firmware-selector.openwrt.org/):

翻译过来的官方版更新界面,一般是英文(一种说法不要勾选保留):

不想折腾的,想直接刷入系统的,直接用楼主提供的即可。当然了,如果你的需求不是应对校园网(软件luci-app-mwan3 负载均衡 luci-app-syncdial 多拨),你也懒得看我给的自编译教程,那么可以去看资源包里,我给了一个网站我也会说明使用方法,里面可以选择对应机型来进行云编译,选择自己需要的软件包直接,直接刷入使用

第一次进入breed后请按照包内教程更新固件

  • 3.刷入后-开始配置校园网

登录你的路由器

用我的包的自带了单线多播软件,简单配置即可

启动三张虚拟网卡:

负载均衡自动配置完毕无需更改

命令行新加虚拟网卡:

ifconfig macvlan1 hw ether 24:CF:24:5B:34:11

ifconfig macvlan2 hw ether 85:C6:75:AC:1E:23

ifconfig macvlan3 hw ether BB:A3:A4:BD:06:5a

ifconfig macvlan1 hw ether down

ifconfig macvaln2 hw ether down

ifconfig macvaln3 hw ether down

配置新增的虚拟网卡:

打开电脑浏览器,链接需要认证的热点进行认证,在此期间F12打开开发者网络请求控制台,抓取登录请求

仔细观察抓取到的结果包含ip、账号密码等信息,每个地方的认证系统不一样,不懂自行百度

在windows终端里测试登录请求:(wget)

这一步,使用我提供的固件可以省去很多麻烦

然后通过ssh登录到路由器后台,通过命令方式为每一个虚拟网卡认证你的校园网,也可以使用其他博主说的,关闭每一个虚拟网卡,依次手动登录认证,这个比较简单,针对于不会断电也不需要配置校园网脚本的朋友。

格式化你的认证请求,不会的可以AI帮忙整理,依次登录三个虚拟网卡不同账号密码,每个网卡的IP地址也要对应实机更改。

你也可以选择直接分别禁用每一张网卡单独连上WiFi之后为他们认证,但是用这个办法获取认证请求后你就可以自定义登录脚本,因为有的学校校园网会断电,或者路由器会断电,避免每次手动配置,你可以弄脚本,此外部分校园网有多设备检测,那么请判断你的校园网检测方式,相信你看到这里都是有一定基础的人,然后百度,找到你的校园网检测对应的防检测防火墙规则,来这里配置:

篇幅太大了我没办法为你们一一整理,每个学校的认证系统也不一样

校园网叠加两个账号30mbps*2:

当然某些学校一个账号可以登录三台设备,那么一个账号就可以实现30mbps*3的速率,原理就是这么简单,对于楼主提供的固件,步骤就是这样

4.自编译openwrt-为自己机型定制系统

配置编译环境:所有机型都是同样的方法,我给的系统可以直接导入使用

下方教程写于2024.10.21,

当我们安装完毕Ubentu后,还遇到了一个问题,就是无法与主机之间复制粘贴,如图的粘

贴按钮为 灰色,这里是修正好的效果

特别需要注意的是,我们进入系统后使用的是自建的的账户,例如我的账户名为xuxi

你们其他人,如果系统环境与我的不同,那么就需要创建一个新账户,不要使用root用户来进行操作编译前的各个步骤

安装vm-tool就能够解决此问题

命令行输入 sudo apt-get update -y 对系统软件进行更新(可选)

手写运行以下命令以安装open-vm-tools:

sudo apt-get install open-vm-tools

手写运行以下命令以安装open-vm-tools的桌面组件(可选):

可拖放文件和共享剪贴板。

sudo apt-get install open-vm-tools-desktop

安装完成后,重新启动Ubuntu虚拟机

接下来进入配置安装步骤:

系统 Ubuntu22.04 ,终端输入如下命令(完成 上面的 步骤后已经可以复制粘贴)下载编译所需软件包:

sudo apt install build-essential clang flex bison g++ gawk \

gcc-multilib g++-multilib gettext git libncurses-dev libssl-dev \

python3-distutils rsync unzip zlib1g-dev file wget qemu qemu-utils

如图,输入y来确认:

接下来拉取官方源码:

git clone https://git.openwrt.org/openwrt/openwrt.git

源代码成功拉取到本地的结构:

我们来这里添加两个自定义源:

(博主懒打命令了,直接可视化界面操作,哈哈)

添加自定义源

因为原仓库里的插件太少,不够使用

# 进入openwrt目录

cd ~/openwrt

# 添加自定义源

cat >> feeds.conf.default <<EOF

src-git kenzo https://github.com/kenzok8/openwrt-packages

src-git passwall https://github.com/xiaorouji/openwrt-passwall

EOF

更新下载软件仓库的源码到本地,并安装自定义源包含的软件包

./scripts/feeds update -a && ./scripts/feeds install -a

(可视化操作的也来执行这两个句子)

执行完毕,接下来运行 make menuconfig 以配置 OpenWRT :

(运行此命令时,保持虚拟机窗口最大化)

make menuconfig

依次选择对应架构、平台、型号,可以看到我这里选到了我的小米路由器4a千兆版v1

前文说过,我的v1路由器 刷前文网盘链接里的第三方编译的v2也能用,当然不同型号的不用看这句话了

然后配置你需要选择的插件

......

Exit退出-yes保存配置

下载dl(依赖)库

下载dl库

make -j8 download V=s

#编译固件

make -j1 V=s(单线程)

make V=99

编译选项说明

-j *: make命令可以加上-j参数用于指定使用多少cpu核编译,可以加速编译过程。例如:make download -j4,make -j5

V=s:make命令可以加上V=s可以输出更多的编译错误信息。

命令行输入编译命令后就开始 编译你所需的固件了,全程请保持全球上网,会需要很长时间;此外大家所编译固件不同可能也会遇到其他的一些问题,大家可自行百度一下,教程到此结束

博主自己写帖子所具备编译环境的vm虚拟机系统,给大家提供了,账户xuxi,密码xuxi

大家可以自己导入到vm使用

/bin/targets/目录,几类编译产出的镜像说明如下:

factory:用于替换厂商的原厂固件,兼容原厂的安装包格式。通常使用原厂的web GUI进行升级。

sysupgrade:用于升级替换已有的OpenWrt版本,这是最常用的镜像。

initramfs-kernel:用于开发或特殊情况下的一次性引导,作为安装常规sysupgrade版本的过渡步骤。由于initramfs版本完全运行在RAM中,不会在闪存中存储任何设置,因此不适合用于操作性使用。

*配置菜单翻译,大家可自己微信或者其他扫一扫实时翻译

OpenWrt Configuration【OpenWrt配置】

Target System (x86) —> 目标系统(x86)

Subtarget (x86_64) —> 子目标(x86_64)

Target Profile (Generic) —>目标配置文件(通用)

Target Images —> 保存目标镜像的格式

Enable experimental features by default —> 默认情况下启用实验功能

Global build settings —> 全局构建设置

Advanced configuration options (for developers) ---- 高级配置选项(适用于开发人员)

Build the OpenWrt Image Builder 构建OpenWrt图像生成器

Build the OpenWrt SDK构建OpenWrt SDK

Package the OpenWrt-based Toolchain打包基于OpenWrt的工具链

Image configuration —>图像配置

Base system —> 基本系统

Administration —> 管理

Boot Loaders —>引导加载程序

Development —> 开发

Extra packages —> 额外包

Firmware —>固件

Fonts —>字体

Kernel modules —> 内核模块

Languages —>语言

Libraries —> 图书馆

LuCI —> LuCI 软件包

Mail —>邮件

Multimedia —>多媒体

Network —>网络

Sound —> 声音

Utilities —>实用程序

Xorg —>Xorg

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值