本文最后更新于:2022年6月21日 凌晨
OpenWrt是适合于嵌入式设备的一个Linux发行版。
相对原厂固件而言,OpenWrt不是一个单一、静态的固件,而是提供了一个可添加软件包的可写的文件系统。这使用户可以自由的选择应用程序和配置,而不必受设备提供商的限制,并且可以使用一些适合某方面应用的软件包来定制你的设备。对于开发者来说,OpenWrt是一个框架,开发者不必麻烦地构建整个固件就能得到想要的应用程序;对于用户来说,这意味着完全定制的能力,与以往不同的方式使用设备,OPKG包含超过3500个软件。 默认使用LuCI作为web交互界面。
OpenWrt另有一个复刻分支项目,名为LEDE,两者于2018年1月合并,合并后的项目使用OpenWrt的名字、LEDE的源代码
本地编译 编译前须知
不要用root 用户进行编译
请全局使用魔法👁🗨
默认登陆IP:192.168.1.1 密码:password
编译环境配置
编译环境:Ubuntu 20.04 LTS ,请在终端分别执行以下命令:
sudo apt update -ysudo apt full-upgrade -ysudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \bzip2 ccache cmake cpio curl device-tree-compiler fastjar flex gawk gettext gcc-multilib g++-multilib \git gperf haveged help2 man intltool libc6 -dev-i386 libelf-dev libglib2 .0 -dev libgmp3 -dev libltdl-dev \libmpc -dev libmpfr-dev libncurses5 -dev libncursesw5 -dev libreadline-dev libssl-dev libtool lrzsz \mkisofs msmtp nano ninja-build p7 zip p7 zip-full patch pkgconf python2 .7 python3 python3 -pip qemu-utils \rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1 g-dev
下载Lean的OpenWRT源码 git clone https://gi thub.com/coolsnowwolf/ lede
添加OpenWRT插件源 Git Clone 完成后,进入lede 目录,根据实际需求添加以下插件库。
科学上网插件仓库
#常用 sed -i '$a src-git helloworld https://github.com/fw876/helloworld' feeds.conf.default #次要 sed -i '$a src-git passwall https://github.com/xiaorouji/openwrt-passwall' feeds.conf.default
openwrt插件合集仓库
sed -i '$a src-git kenzo https://github.com/kenzok8/openwrt-packages' feeds.conf .default sed -i '$a src-git small https://github.com/kenzok8/small' feeds.conf .default
openwrt插件合集仓库(每天更新)
sed -i '$a src-git small8 https://github.com/kenzok8/small-package' feeds.conf.default
更新feeds并安装插件,开启配置菜单 git pull ./scripts/ feeds update -a ./scripts/ feeds install -a make menuconfig
选择编译目标
下载dl库,编译固件 make download -j8make V=s -j1 #-j 后面是线程数,第一次编译推荐用单线程
编译完成后输出路径:lede/bin/targets/.
二次编译 请分别执行以下命令:
cd lede git pull ./scripts/feeds update -a ./scripts/feeds install -a make defconfigmake download -j8make V=s -j $(nproc)
重新配置 请分别执行以下命令:
rm -rf ./tmp && rm -rf .config make menuconfig make V=s -j $ (nproc)
使用Github Actions编译OpenWRT固件 编译前须知
访问Github可能不顺畅,请使用魔法👁🗨
需要一个注册一个Github账号
创建自动编译脚本仓库 P3TERX / Actions-OpenWrt仓库
配置编译脚本 diy-part1.sh
diy-part2.sh
创建.config
输入以下内容:
该配置文件仅针对Xiaomi r3g v1,请根据自己的编译目标配置该文件!
CONFIG_TARGET_ramips =yCONFIG_TARGET_ramips_mt7621 =yCONFIG_TARGET_ramips_mt7621_DEVICE_xiaomi_mi-router-3g =y
开始编译
Xiaomi r3g v1不能将SSH connection to Actions设置为 true
,否则会编译失败。
SSH远程配置编译目标
如果在 上一个步骤 中将 SSH connection to Actions 改为 true
,则需要跟踪编译步骤,当编译步骤进行到 SSH connection to Actions 时,会给出类似下图所示的SSH链接,使用SSH工具连接到编译服务器进行编译目标配置:
等待编译完成
编译成功后,脚本会自动将生成的固件打包,可下载刷入。
补充说明 OpenWRT 更新软件包 和 安装软件包 命令 opkg update opkg install software_name.ipk
如果使用的本地编译环境是WSL(Windows Subsystem for Linux),请使用以下命令进行编译: 首次编译:
PATH=/usr/local /sbin:/usr /local/bin :/usr/sbin :/usr/bin :/sbin :/bin make V=s -j1
二次编译:
PATH=/usr/local /sbin:/usr /local/bin :/usr/sbin :/usr/bin :/sbin :/bin make -j$( ($( nproc) + 1 )) V=s
添加插件 OpenWRT通过LuCI来管理插件:
常用插件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 LuCI ---> Applications ---> luci-app-accesscontrol #访问时间控制 LuCI ---> Applications ---> luci-app-adblock #AdBlock广告过滤 LuCI ---> Applications ---> luci-app-adbyby-plus #广告屏蔽大师Plus LuCI ---> Applications ---> luci-app-advancedsetting #系统高级设置(Le库以外的插件 LuCI ---> Applications ---> luci-app-aria2 #Aria2下载工具 LuCI ---> Applications ---> luci-app-arpbind #IP/MAC绑定 LuCI ---> Applications ---> luci-app-attendedsysupgrade #固件更新升级相关 LuCI ---> Applications ---> luci-app-autoreboot #支持计划重启 LuCI ---> Applications ---> luci-app-baidupcs-web #百度网盘管理 LuCI ---> Applications ---> luci-app-cifs-mount #CIFS/SMB挂载设置 LuCI ---> Applications ---> luci-app-cifsd #CIFS/SMB网络共享 LuCI ---> Applications ---> luci-app-commands #Shell命令模块 LuCI ---> Applications ---> luci-app-ddns #动态域名 DNS(集成阿里DDNS客户端 LuCI ---> Applications ---> luci-app-dnscrypt-proxy #DNSCrypt解决DNS污染 LuCI ---> Applications ---> luci-app-dnsfilter #DNSFilter基于DNS的广告过滤 LuCI ---> Applications ---> luci-app-dnsforwarder #DNSForwarder防DNS污染 LuCI ---> Applications ---> luci-app-filetransfer #文件传输(可web安装ipk包) LuCI ---> Applications ---> luci-app-firewall #添加防火墙 LuCI ---> Applications ---> luci-app-frpc #内网穿透Frp客户端 LuCI ---> Applications ---> luci-app-frps #内网穿透Frp服务端 LuCI ---> Applications ---> luci-app-guest-wifi #WiFi访客网络 LuCI ---> Applications ---> luci-app-hd-idle #硬盘休眠 LuCI ---> Applications ---> luci-app-nlbwmon #网络带宽监视器 LuCI ---> Applications ---> luci-app-noddos #NodDOS Clients 阻止DDoS攻击 LuCI ---> Applications ---> luci-app-passwall #科学上网(Li大佬插件) LuCI ---> Applications ---> luci-app-qbittorrent #BT下载工具(qBittorrent) LuCI ---> Applications ---> luci-app-ramfree #释放内存 LuCI ---> Applications ---> luci-app-samba #网络共享(Samba) LuCI ---> Applications ---> luci-app-ssr-plus #SSR科学上网Plus+(Le大佬插件) LuCI ---> Applications ---> luci-app-statistics #流量监控工具 LuCI ---> Applications ---> luci-app-transmission #BT下载工具 LuCI ---> Applications ---> luci-app-turboacc #Turbo ACC 网络加速(支持 Fast Path 或者 硬件 NAT) LuCI ---> Applications ---> luci-app-unblockmusic #解锁网易云灰色歌曲3 合1 新版本 LuCI ---> Applications ---> luci-app-upnp #通用即插即用UPnP(端口自动转发 LuCI ---> Applications ---> luci-app-vlmcsd #KMS服务器设置 LuCI ---> Applications ---> luci-app-vsftpd #FTP服务器 LuCI ---> Applications ---> luci-app-watchcat #断网检测功能与定时重启 LuCI ---> Applications ---> luci-app-webadmin #Web管理页面设置 LuCI ---> Applications ---> luci-app-wifischedule #WiFi 计划 LuCI ---> Applications ---> luci-app-wol #WOL网络唤醒 LuCI ---> Applications ---> luci-app-wrtbwmon #实时流量监测
所有插件
最后更新时间:2022/6/19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 LuCI ---> Applications ---> luci-app-accesscontrol #访问时间控制 LuCI ---> Applications ---> luci-app-adblock #ADB广告过滤 LuCI ---> Applications ---> luci-app-adbyby-plus #广告屏蔽大师Plus + LuCI ---> Applications ---> luci-app-advanced-reboot #Linksys高级重启 LuCI ---> Applications ---> luci-app-ahcp #Ad-Hoc配置协议(AHCP) ipv6 and 双栈 自动配置协议 ! LuCI ---> Applications ---> luci-app-airplay2 #Apple AirPlay2 无损音频接收服务器 LuCI ---> Applications ---> luci-app-amule #aMule下载工具 ! LuCI ---> Applications ---> luci-app-aria2 # Aria2下载工具 LuCI ---> Applications ---> luci-app-arpbind #IP/MAC绑定 LuCI ---> Applications ---> luci-app-asterisk #支持Asterisk电话服务器 LuCI ---> Applications ---> luci-app-attendedsysupgrade #固件更新升级相关 LuCI ---> Applications ---> luci-app-autoreboot #支持计划重启 LuCI ---> Applications ---> luci-app-baidupcs-web #百度网盘管理 LuCI ---> Applications ---> luci-app-bcp38 #BCP38网络入口过滤(不确定) LuCI ---> Applications ---> luci-app-bird1-ipv4 #对Bird1-ipv4的支持 LuCI ---> Applications ---> luci-app-bird1-ipv6 #对Bird1-ipv6的支持 LuCI ---> Applications ---> luci-app-bmx6 #BMX6路由协议 LuCI ---> Applications ---> luci-app-cifs-mount #CIFS/SMB挂载设置 LuCI ---> Applications ---> luci-app-cifsd #CIFS/SMB网络共享 LuCI ---> Applications ---> luci-app-cjdns #加密IPV6网络相关 LuCI ---> Applications ---> luci-app-clamav #ClamAV杀毒软件 LuCI ---> Applications ---> luci-app-commands #Shell命令模块 LuCI ---> Applications ---> luci-app-cshark #CloudShark捕获工具 LuCI ---> Applications ---> luci-app-ddns #动态域名 DNS(集成阿里DDNS客户端) LuCI ---> Applications ---> luci-app-diag-core #core诊断工具 LuCI ---> Applications ---> luci-app-diskman #磁盘管理工具 luci -app-diskman ---> Include btrfs-progs #新型的写时复制 (COW) luci -app-diskman ---> Include lsblk #lsblk命令 用于列出所有可用块设备的信息 luci -app-diskman ---> Include mdadm #mdadm命令 用于创建、管理、监控RAID设备的工具 LuCI ---> Applications ---> luci-app-dnscrypt-proxy #DNSCrypt解决DNS污染 LuCI ---> Applications ---> luci-app-dnsforwarder #DNSForwarder防DNS污染 LuCI ---> Applications ---> luci-app-docker #Docker容器(dockerman更名为docker) LuCI ---> Applications ---> luci-app-dump1090 #民航无线频率(不确定) LuCI ---> Applications ---> luci-app-dynapoint #DynaPoint(未知) LuCI ---> Applications ---> luci-app-e2guardian #Web内容过滤器 LuCI ---> Applications ---> luci-app-familycloud #家庭云盘 LuCI ---> Applications ---> luci-app-filetransfer #文件传输(可web安装ipk包) LuCI ---> Applications ---> luci-app-firewall #添加防火墙 LuCI ---> Applications ---> luci-app-flowoffload #Turbo ACC网络加速(集成FLOW,BBR,NAT,DNS... LuCI ---> Applications ---> luci-app-freifunk-diagnostics #freifunk组件 诊断(未知) LuCI ---> Applications ---> luci-app-freifunk-policyrouting #freifunk组件 策略路由(未知) LuCI ---> Applications ---> luci-app-freifunk-widgets #freifunk组件 索引(未知) LuCI ---> Applications ---> luci-app-frpc #内网穿透Frp客户端 LuCI ---> Applications ---> luci-app-frps #内网穿透Frp服务端 LuCI ---> Applications ---> luci-app-fwknopd #Firewall Knock Operator服务器 LuCI ---> Applications ---> luci-app-guest-wifi #WiFi访客网络 LuCI ---> Applications ---> luci-app-gost #隐蔽的https代理(Li大内插件) LuCI ---> Applications ---> luci-app-haproxy-tcp #HAProxy负载均衡-TCP LuCI ---> Applications ---> luci-app-hd-idle #硬盘休眠 LuCI ---> Applications ---> luci-app-hnet #Homenet Status家庭网络控制协议 LuCI ---> Applications ---> luci-app-https-dns-proxy #通过HTTPS代理为DNS提供Web UI LuCI ---> Applications ---> luci-app-ipsec-vpnd #VPN服务器 IPSec LuCI ---> Applications ---> luci-app-kodexplorer #KOD可道云私人网盘(与vnStat冲突 ! ) LuCI ---> Applications ---> luci-app-kooldns #virtual**服务器 ddns替代方案(丢弃) LuCI ---> Applications ---> luci-app-koolproxy #KP去广告(丢弃) LuCI ---> Applications ---> luci-app-lxc #LXC容器管理 LuCI ---> Applications ---> luci-app-meshwizard #网络设置向导 LuCI ---> Applications ---> luci-app-minidlna #完全兼容DLNA / UPnP-AV客户端的服务器软件 LuCI ---> Applications ---> luci-app-mjpg-streamer #兼容Linux-UVC的摄像头程序 LuCI ---> Applications ---> luci-app-music-remote-center #PCHiFi 数字转盘遥控 LuCI ---> Applications ---> luci-app-mwan3 #MWAN3负载均衡 LuCI ---> Applications ---> luci-app-mwan3helper #MWAN3分流助手 LuCI ---> Applications ---> luci-app-n2n_v2 #N2N内网穿透 N2N v2 virtual**服务 LuCI ---> Applications ---> luci-app-netdata #Netdata实时监控(图形化) LuCI ---> Applications ---> luci-app-nfs #NFS网络共享 LuCI ---> Applications ---> luci-app-nft-qos #QOS流控 Nftables版 LuCI ---> Applications ---> luci-app-nlbwmon #网络带宽监视器 LuCI ---> Applications ---> luci-app-noddos #NodDOS Clients 阻止DDoS攻击 LuCI ---> Applications ---> luci-app-nps #内网穿透nps LuCI ---> Applications ---> luci-app-ntpc #NTP时间同步服务器 LuCI ---> Applications ---> luci-app-ocserv #OpenConnect virtual**服务 LuCI ---> Applications ---> luci-app-olsr #OLSR配置和状态模块 LuCI ---> Applications ---> luci-app-olsr-services #OLSR服务器 LuCI ---> Applications ---> luci-app-olsr-viz #OLSR可视化 LuCI ---> Applications ---> luci-app-openvpn #OpenVPN客户端 LuCI ---> Applications ---> luci-app-openvpn-server #易于使用的OpenVPN服务器 Web-UI LuCI ---> Applications ---> luci-app-oscam #OSCAM服务器(丢弃) LuCI ---> Applications ---> luci-app-p910nd #打印服务器模块 LuCI ---> Applications ---> luci-app-pagekitec #Pagekitec内网穿透客户端 LuCI ---> Applications ---> luci-app-polipo #Polipo代理(是一个小型且快速的网页缓存代理) LuCI ---> Applications ---> luci-app-pppoe-relay #PPPoE NAT穿透 点对点协议(PPP) LuCI ---> Applications ---> luci-app-privoxy #Privoxy网络代理(带过滤无缓存) LuCI ---> Applications ---> luci-app-ps3netsrv #PS3 NET服务器(用于加载蓝光/游戏ISO/PKG) LuCI ---> Applications ---> luci-app-qbittorrent #BT下载工具(qBittorrent) LuCI ---> Applications ---> luci-app-qos #流量服务质量(QoS)流控 LuCI ---> Applications ---> luci-app-radicale #CalDAV/CardDAV同步工具 LuCI ---> Applications ---> luci-app-ramfree #释放内存 LuCI ---> Applications ---> luci-app-rclone #命令行云端同步工具 Include rclone-webui #Rclone界面 Include rclone-ng (another webui) #Rclone另一个界面 Include fuse-utils (mount cloud storage) #fuse-utils(挂载云存储) LuCI ---> Applications ---> luci-app-rp-pppoe-server #Roaring Penguin PPPoE Server 服务器 LuCI ---> Applications ---> luci-app-samba #网络共享(Samba) LuCI ---> Applications ---> luci-app-samba4 #网络共享(Samba4) LuCI ---> Applications ---> luci-app-sfe #Turbo ACC网络加速(flowoffload二选一) LuCI ---> Applications ---> luci-app-shadowsocks-libev #SS-libev服务端 LuCI ---> Applications ---> luci-app-shairplay #支持AirPlay功能 LuCI ---> Applications ---> luci-app-siitwizard #SIIT配置向导 SIIT-Wizzard LuCI ---> Applications ---> luci-app-simple-adblock #简单的广告拦截 LuCI ---> Applications ---> luci-app-softethervpn #SoftEther VPN服务器 NAT穿透 LuCI ---> Applications ---> luci-app-splash #Client-Splash是无线MESH网络的一个热点认证系统 LuCI ---> Applications ---> luci-app-sqm #流量智能队列管理(QOS) LuCI ---> Applications ---> luci-app-squid #Squid代理服务器 LuCI ---> Applications ---> luci-app-ssr-plus #SSR Plus+ Include Shadowsocks #新SS代理 Include Shadowsocks V2ray Plugin #新V2ray代理 Include Xray #Xray代理 * Include Trojan #Trojan代理 Include Redsocks2 #socks-red2代理 Include NaiveProxy #NaiveProxy代理 Include Kcptun #Kcptun加速 Include ShadowsocksR Server #ShadowsocksR服务器 LuCI ---> Applications ---> luci-app-ssrserver-python #SSR Python服务器 LuCI ---> Applications ---> luci-app-statistics #流量监控工具 LuCI ---> Applications ---> luci-app-syncdial #多拨虚拟网卡(原macvlan) LuCI ---> Applications ---> luci-app-tinyproxy #Tinyproxy是 HTTP(S)代理服务器 LuCI ---> Applications ---> luci-app-transmission #BT下载工具 LuCI ---> Applications ---> luci-app-travelmate #旅行路由器 LuCI ---> Applications ---> luci-app-ttyd #网页终端命令行 LuCI ---> Applications ---> luci-app-udpxy #udpxy做组播服务器 LuCI ---> Applications ---> luci-app-uhttpd #uHTTPd Web服务器 LuCI ---> Applications ---> luci-app-unblockmusic #解锁网易云灰色歌曲3 合1 新版本 UnblockNeteaseMusic Golang Version #Golang版本 UnblockNeteaseMusic NodeJS Version #NodeJS 版本 LuCI ---> Applications ---> luci-app-unbound #Unbound DNS解析器 LuCI ---> Applications ---> luci-app-upnp #通用即插即用UPnP(端口自动转发) LuCI ---> Applications ---> luci-app-usb-printer #USB 打印服务器 LuCI ---> Applications ---> luci-app-uugamebooster #UU网游加速器 * LuCI ---> Applications ---> luci-app-v2ray-server #V2ray 服务器 LuCI ---> Applications ---> luci-app-verysync #微力同步 LuCI ---> Applications ---> luci-app-vlmcsd #KMS服务器设置 LuCI ---> Applications ---> luci-app-vnstat #vnStat网络监控(图表)(与kodexplorer冲突 ! ) LuCI ---> Applications ---> luci-app-vpnbypass #VPN BypassWebUI 绕过VPN设置 LuCI ---> Applications ---> luci-app-vsftpd #FTP服务器 LuCI ---> Applications ---> luci-app-watchcat #断网检测功能与定时重启 LuCI ---> Applications ---> luci-app-webadmin #Web管理页面设置 LuCI ---> Applications ---> luci-app-wifischedule #WiFi 计划 LuCI ---> Applications ---> luci-app-wireguard #WireGuard状态 LuCI ---> Applications ---> luci-app-wol #WOL网络唤醒 LuCI ---> Applications ---> luci-app-wrtbwmon #实时流量监测 LuCI ---> Applications ---> luci-app-xlnetacc #迅雷快鸟 LuCI ---> Applications ---> luci-app-zerotier #ZeroTier内网穿透