OpenWrt固件编译

2018/05/02 Blog 共 3196 字,约 10 分钟

这里先做下备忘录:rs2设备上面有一个lan口,一个wan口,lan口接到路由器的wan口上面,然后r2s的wan口接到光纤猫上面。电脑主机的网线接到路由的lan口上面。总之lan口是消费端。

然后openwrt默认root密码passwd. 通过ip地址ssh进去之后可以修改密码。

openwrt 登录地址:http://192.168.2.1/cgi-bin/luci/admin/network/network

root 默认密码就是上面提到的paddwd, 然后可以修改为自己的密码。

OpenWrt软路由番蔷工具的意义

OpenWrt固件编译这个话题的起源:其实对于自己家里番蔷的话,电脑上面同时进行着番蔷动作,而又同时运行着国产的360管家,腾讯系软件,TIM QQ办公等软件。其实这些软件是可以背地里收集用户信息的,它们一定程序上可以干扰或者监控到你win10电脑上面有使用番蔷软件的种种迹象,并且被检测到流量特征之后,会可能上报到国家GWF系统中,导致你的自建番蔷服务器IP被封或者443端口被封的悲剧发生,为了防止安全意外的发生,最好的解决办法是购买一个软路由硬件,自己编译一个OpenWrt固件。刷机到软路由里面。软路由穿墙最大的好处是windows客户端不再有进程和番蔷服务器进行通讯了,客户端很难被窃听或者抓包,因为番蔷特征流量都没有经过路由器了,而是发生在软路由里面。我最近一次坑得最惨的是TIM qq腾讯系的某个进程,干扰到了我的某个番蔷客户端,使得我周末星期天在家上网的时候排查了一整天,重装,重新域名解析,重新跑我境外的服务器docker等等都不行。最好我发现是客户端socket被干扰导致的。去某些电报群里面问别人,别人也是建议我使用软路由。刚好我那个r2s软路由买了没有多久,一直没有机会使用。因为编译固件实在是太难了,要把整个openwrt系统进行二进制编译,而且整个过程必须要是番蔷全局的情况下才行,整个编译过程要经过3~4小时,失败的机率非常大。其实去淘宝买一个这种硬件设备,销售商就会提供带有编译好的镜像给你,你只需要把自己的番蔷账号配置到openclash这种插件里面即可,说到openclash这个配置,它是yaml格式的文件, 需要阅读官方的英文配置文档即可。

使用软路由番蔷的最大的好处就是,Chrome浏览器划词助手在阅读PDF电子书的时候,制卡的音频可以完整的保存到anki单词卡里面,也就是说大部分情况下AwsoweTTS那个工具都不需要了。很多单词或者短语划词之后音标的真人发音立马就是OK可用的。

强烈建议使用github acton编译openwrt固件

这个github action方法编译openwrt系统是我强烈推荐的方法,不要再去尝试本地编译或者windows 10下面安装虚拟机编译了,我这里从来没有成功过。最后还是建议选择CI/CD办法,免费通过github 自带的wordfollow触发CI/CD自动编译过程。并且已经有高手写好了脚本,这个项目的名字叫做AutoBuild-OpenWrt,具体的使用方法就是fork项目到自己的github下面,然后修改相应的yaml配置文件里面,把注释掉的 push节点触发代码打开。这里需要注意的是,第一次把注释代码释放出来不会触发action,建议释放注释代码,然后再打上注释代码,然后再释放掉注释代码,这个时候就会触发action,才能看到workflow下面编译过程被激活了,我这里编译的是R2S,所以最终触发成功的效果如下:这个项目的地址是:https://github.com/esirplayground/AutoBuild-OpenWrt 里面有视频教程,项目说明里面有youtube地址观看视频教程即可。

image-20220414230339223

最终编译下来的openwrt固件系统如下:使用rufus工具写入镜像到minisd卡即可。

WMYw13oCSR

2Jro7y8Srm

这个就是默认情况下编译得到的固件版本样子。还是非常方便快速的。

一定要用更换国内源再安装依赖编译环境

上面安装成功v2raya之后,关闭掉全局部代理,我们先切换到镜像源为华为镜像源,然后安装开发环境依赖之后再切到全局代理开始编译。把/etc/apt/sources.list 备份。

最好还是直接用win10自带的ubuntu编译openwrt是最棒的,前提条件是软路由open clash设置好全局代理:

image-20220413010231327

image-20220413010301906

走代理的设备Mac选择好我们的路由器,那么只要是通过路由器上网的所有家庭设备都自动具备了全局穿墙的能力。那么我们ubuntu控制台就可以直接ping通www.google.com了。如果发现ping不通google,证明设置还是有问题的。这里的编译整个过程会经历3~4小时,当然我的电脑是11代i7,编译速度应该可以。

如果没有设置好全局代理的话,系统中进行ubuntu对openwrt编译失败的概率接近100%!!!!应该说是100%失败,我之前查了很多帖子,失败的原因只有一个,那就是linux编译的时候依赖包被蔷了,导致编译失败安装不上编译环境所需要的依赖包。

我这里经过设置之后,就直接开始更新win10自带的ubuntu如下操作,全程都是代理模式进行

更换完之后更新系统:

sudo apt update
sudo apt dist-upgrade

然后安装编译固件所需要的依赖环境:

sudo apt-get update

sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3.5 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf wget swig

下载lede的openwrt资源

穿墙之后下载速度还能这么快

image-20220413011355863

cd lede

进入到lede文件夹,添加一些插件的源配置:

然后是一些其他的软件包,编辑 feeds.conf.default ,添加

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

上面的依赖环境的安装是在国内镜像源加持下安装完成。之后的操作切换到全局番蔷状态进行更新拉取插件源:

更新插件源,最关键的是要设置全局番蔷代理,v2raya进行如下设置:极其关键的一步!!!!

78hLM9y2HI

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

make menuconfig

进行这个操作的时候,最好是screen开启一个screen进程来处理,防止长时间console控制台掉线。

执行编译出现目录:前面三个菜单分别是选择平台,CPU,芯片组,我这里使用Rockchip的R2S。

JFSgU78v0z

HUgsUwhbHX

重点是LuCI里面application的配置安装。

编译完成之后,命令行输入:\wsl$

输入上面的指令就可以直接访问到win10 subsystem ubuntu的根目录。

6D2DHwDDCf

ubuntu_y2nk3OO2Kv

编译教程

文档地址:https://shimo.im/docs/gYjt9QVr8T9Vhv9X/read

插件:https://www.right.com.cn/forum/thread-344825-1-1.html

文档信息

Search

    Table of Contents