OpenWrt 中文教程:把旧路由器改造成可定制的智能网关
2026-11-06发表于
编程语言一、OpenWrt 是什么:把路由器变成可定制的 Linux 主机
入门
路由器出厂自带的系统通常像一台“只能打电话的功能手机”:功能固定,厂商说停更就停更。OpenWrt 则相当于给路由器装上一套“智能手机系统”——它是一份面向嵌入式设备的 Linux 操作系统,底层可以自由读写,还能像手机装 App 一样安装各种软件包。
这意味着你可以给一台几十块的老旧路由器增加去广告、VPN、网络共享、流量监控等功能,甚至把它改造成一台小型服务器。对于想掌控家庭网络、不想被厂商限制的人来说,OpenWrt 提供了一个完全开放的选择。

下面先从最实际的一步开始:怎么判断你的设备能不能刷,以及如何刷入 OpenWrt。
二、安装 OpenWrt:先查支持列表,再刷入固件
入门
刷机之前需要准备:一台支持 OpenWrt 的路由器或 x86 软路由、一台电脑、一根网线,以及能联网下载固件的环境。为什么必须先确认设备支持?因为固件里包含硬件驱动,如果刷了不匹配的镜像,路由器可能无法启动,也就是俗称的“变砖”。
建议先用浏览器打开 OpenWrt Firmware Selector,输入路由器型号查询。如果设备在支持列表中,页面会给出两个关键文件:factory 镜像和 sysupgrade 镜像。这里的区别很简单:
factory镜像:用于从厂商原厂系统第一次刷入 OpenWrt。sysupgrade镜像:用于已经运行 OpenWrt 的设备升级到新版本。
刷机的基本流程是:进入原厂路由器的管理后台,在“固件升级”或“手动升级”页面选择下载好的 factory 镜像,等待自动重启。不同品牌的操作入口略有差异,Firmware Selector 页面上的 Info 链接通常有对应步骤。
注意:刷机前建议先备份原厂固件,并记录当前能正常上网的宽带账号和密码。刷机过程中不要断电、不要断开网线。
三、核心用法:用 LuCI 网页和 SSH 管理路由器
入门
刷入并重启后,OpenWrt 默认管理地址通常是 192.168.1.1。用网线把电脑接到路由器 LAN 口,打开浏览器访问这个地址,会看到 LuCI 网页界面。LuCI 就是 OpenWrt 的图形化管理后台,相当于路由器的“控制面板”。
第一次登录通常不需要密码或密码为空,建议立即设置一个管理员密码。登录后可以完成最常用的操作:设置 WAN 口上网方式(DHCP 自动获取或 PPPoE 宽带拨号)、修改 Wi-Fi 名称和密码、查看设备连接状态。
除了网页,OpenWrt 也支持 SSH 远程登录。SSH 是一种加密的命令行远程管理方式,适合执行更精细的操作。在电脑终端中运行:
ssh root@192.168.1.1
登录后可以查看系统信息,例如:
ubus call system board
这条命令会输出设备型号、固件版本和内核信息,方便确认当前系统状态。日常配置用 LuCI 就够了,SSH 更多用于排查问题或编辑文本配置文件。
四、配置与包管理:像装 App 一样扩展路由器功能
进阶 · 推荐细读
OpenWrt 的软件包管理工具叫 opkg,它就像手机上的应用商店:一条命令就能从官方软件源安装功能。安装前先更新软件源列表:
opkg update
然后可以搜索需要的软件包,例如查找去广告相关的包:
opkg list | grep adblock
如果看到 luci-app-adblock,就可以安装它。这个包会同时装上后台界面和依赖组件:
opkg install luci-app-adblock
装完后刷新 LuCI 页面,就能在“服务”菜单里看到去广告设置。路由器存储空间通常有限,建议按需安装,不要一次性堆太多包,否则容易导致空间不足或系统变慢。
OpenWrt 的配置集中在 /etc/config/ 目录下,使用一种叫做 UCI 的统一配置格式。可以用 uci 命令修改配置,例如把 LAN 口地址改成 192.168.2.1:
uci set network.lan.ipaddr='192.168.2.1'
uci commit network
/etc/init.d/network restart
这里的 uci set 相当于“修改配置项”,uci commit 保存,最后重启网络服务生效。修改前建议先备份 /etc/config/ 目录,改错了可以直接恢复。
五、源码编译与常见坑:自己动手构建固件
深入 · 老手可选
如果你需要极度精简固件,或者加入默认没有的软件,可以考虑从源码编译。编译环境需要 GNU/Linux、BSD 或 macOS,并且文件系统必须区分大小写。Windows 自带文件系统通常不行。
先安装编译依赖,不同发行版包名略有差异。然后获取源码并更新软件包定义:
git clone https://git.openwrt.org/openwrt/openwrt.git
cd openwrt
./scripts/feeds update -a
./scripts/feeds install -a
接着运行 make menuconfig 选择目标设备型号和要编进固件的软件包,最后开始编译:
make -j$(nproc)
编译过程会下载大量源码,建议预留至少 20 GB 磁盘空间,并保持网络稳定。feeds 可以理解为软件包定义的仓库,menuconfig 则是图形化勾选界面。
使用 OpenWrt 时常见的几个坑需要注意:刷错固件或刷机中断可能导致设备无法启动;修改网络配置后忘记备份,可能造成失联;存储空间太小却装了太多包,会拖慢系统;部分无线网卡驱动不完整,信号或速率不如原厂。因此建议先从官方 Firmware Selector 下载匹配镜像,安装软件量力而行,改配置前先备份,遇到问题优先查阅 OpenWrt 官方文档。
项目信息
| 项目 | 值 |
|---|---|
| 仓库 | openwrt/openwrt |
| 语言 | C |
| Star | 29,084 |
| Fork | 13,327 |
| 主页 | https://openwrt.org |
参考链接
延伸阅读
想继续探索?这些同领域的教程可能也适合你:
181
73
1
5102
文章目录
评论