OpenWrt 旁路由安装与配置记录(爱快+iKuai+WireGuard+OpenClash)

前言

本文记录在爱快(iKuai)虚拟机上部署 OpenWrt 25.12.2 作为旁路由的完整流程,包含磁盘克隆、扩容、软件源修复、中文界面、WireGuard 及 OpenClash 的安装配置。适用于希望利用旧电脑或虚拟机搭建软路由进行网络扩展的玩家。


一、环境说明

项目详情
宿主平台爱快 iKuai 3.7.22
OpenWrt 版本25.12.2 x86_64
镜像类型openwrt-25.12.2-x86-64-generic-ext4-combined-efi.img
使用方式先以"引用磁盘"方式启动,再克隆到 8G 硬盘
OpenWrt LAN IP192.168.0.3
爱快 LAN IP192.168.0.1
WireGuard 网段10.6.0.0/24

二、镜像下载建议

推荐下载

  • UEFI 启动openwrt-25.12.2-x86-64-generic-ext4-combined-efi.img.gz
  • Legacy BIOS 启动openwrt-25.12.2-x86-64-generic-ext4-combined.img.gz

为什么不推荐 squashfs?

squashfs 是只读文件系统,虽然支持 overlay,但对于需要安装大量插件的 x86 旁路由场景,ext4 镜像更灵活、更易维护。

包管理器变更

OpenWrt 25.12 已从传统的 opkg 切换到 apk(Alpine Linux 包管理器),本文中所有包管理命令均为 apk,请勿替换为 opkg


三、安装到爱快虚拟机

1. 创建虚拟机并挂载镜像

  1. 上传镜像到爱快
  2. 在爱快中创建虚拟机
  3. 以「引用磁盘」方式挂载该镜像(不复制,直接引用)
  4. 另外新增一块 8G 虚拟硬盘作为系统盘

2. 为什么需要克隆?

官方 x86 镜像初始根分区通常只有几百 MB,在引用镜像盘运行时空间很快耗尽。因此需要从引用镜像盘启动后,将系统克隆到 8G 硬盘,再改为从 8G 硬盘启动并扩容。


四、首次启动后修改 IP

将 OpenWrt LAN IP 改为 192.168.0.3,与爱快主路由错开:

uci set network.lan.ipaddr='192.168.0.3'
uci set network.lan.netmask='255.255.255.0'
uci commit network
service network restart

查看当前 LAN 配置确认生效:

uci show network.lan

五、识别磁盘

OpenWrt 默认没有 lsblk,可使用以下方式查看分区:

cat /proc/partitions
设备说明
sda引用镜像盘(较小)
sdb8G 目标硬盘

六、克隆系统到 8G 硬盘

dd if=/dev/sda of=/dev/sdb bs=4M conv=fsync
sync
poweroff

⚠️ dd 操作会覆盖目标盘所有数据,请务必确认 of= 指向正确的设备。

关机后在爱快虚拟机设置中,将 8G 硬盘设为第一启动盘,或移除引用镜像盘仅保留 8G 盘启动。

重启后确认磁盘大小已变化:

cat /proc/partitions

此时 sda 应约为 8G(显示为 8388608 blocks 左右),但 sda2(根分区)仍较小,后续需要扩容。


七、修复软件源

由于官方源在当前网络环境下可能存在解析异常,切换为清华镜像源:

sed -i 's_https\?://downloads.openwrt.org_https://mirrors.tuna.tsinghua.edu.cn/openwrt_' /etc/apk/repositories.d/distfeeds.list
apk update

💡 如果终端粘贴 URL 时出现异常字符,建议手动检查 /etc/apk/repositories.d/distfeeds.list 文件内容。


八、安装扩容工具

apk add parted losetup resize2fs

九、扩容 8G 系统盘(完整流程)

步骤 1:查看当前分区

parted -l -s

步骤 2:扩大分区

parted -f -s /dev/sda resizepart 2 100%
reboot

步骤 3:重启后确认分区已变大

cat /proc/partitions

步骤 4:扩大 ext4 文件系统

losetup /dev/loop0 /dev/sda2 && resize2fs -f /dev/loop0
reboot

步骤 5:检查最终空间

df -h

正确结果应类似 /dev/root 大约 7.9G。


十、旁路由基础设置

1. 关闭 DHCP 服务

旁路由场景下主路由负责分配 IP,OpenWrt 的 DHCP 必须关闭,否则会造成冲突:

uci set dhcp.lan.ignore='1'
uci commit dhcp && service dnsmasq restart

2. 设置网关和 DNS

uci set network.lan.gateway='192.168.0.1'
uci set network.lan.dns='223.5.5.5 119.29.29.29'
uci commit network && service network restart

如果你的主路由 IP 不是 192.168.0.1,请替换为实际值。


十一、安装中文界面

基础中文包

apk add luci-i18n-base-zh-cn

补充常见页面中文

apk add luci-i18n-firewall-zh-cn luci-i18n-package-manager-zh-cn luci-i18n-attendedsysupgrade-zh-cn

刷新 LuCI 缓存

rm -rf /tmp/luci-indexcache /tmp/luci-modulecache/* && /etc/init.d/rpcd restart && /etc/init.d/uhttpd restart

说明:WireGuard 等第三方插件页面可能存在中英混合现象,属于正常情况。


十二、安装 WireGuard

apk update && apk add kmod-wireguard wireguard-tools luci-proto-wireguard

十三、安装 OpenClash 依赖

安装 kmod-tun

apk add kmod-tun

安装 OpenClash 运行依赖

apk add bash dnsmasq-full curl ca-bundle ip-full ruby ruby-yaml kmod-inet-diag unzip kmod-nft-tproxy luci-compat luci luci-base

十四、安装 OpenClash

1. 获取最新版本信息

curl -L --retry 2 https://api.github.com/repos/vernesong/OpenClash/releases/latest -o /tmp/openclash_version

2. 下载 APK 包

curl -L --retry 2 https://github.com/vernesong/OpenClash/releases/download/v0.47.088/luci-app-openclash-0.47.088.apk -o /tmp/openclash.apk

3. 安装

apk add -q --force-overwrite --clean-protected --allow-untrusted /tmp/openclash.apk

4. 验证安装

刷新 LuCI 界面后,应能在菜单中看到:服务 → OpenClash


十五、下载 OpenClash 核心

在 OpenClash 插件界面中下载 Meta 内核即可。日志中出现以下内容说明成功:

  • 【Meta】版本内核下载成功
  • 【Meta】版本内核更新成功

十六、OpenClash 注意事项

  • 🔒 订阅链接和 Token 不要公开
  • 如果之前不慎泄露了订阅链接,建议在服务商后台重置
  • OpenClash 未启用时页面提示「插件未启动」属于正常现象
  • OpenClash 运行时会替换默认的 dnsmasq,使用自带的 dnsmasq-full

十七、当前网络拓扑

爱快(主路由)    192.168.0.1
    │
OpenWrt(旁路由)  192.168.0.3
    │
WireGuard 服务端   10.6.0.1/24
    │
WireGuard 客户端(手机) 10.6.0.2

十八、旁路由与 WireGuard 联动注意事项

由于 OpenWrt 在本方案中是旁路由(非主路由),需要注意:

  • WireGuard 握手成功 ≠ 能访问所有内网设备
  • 如果只有部分内网设备可达,通常与以下因素有关:
    • 回程路由:目标设备返回流量的路由路径
    • NAT 配置:是否需要额外的地址转换
    • 目标设备网关:目标设备的默认网关是否指向 OpenWrt

十九、WireGuard 访问内网的防火墙配置

推荐方案

建立独立的 wg 防火墙区域,并配置转发规则:创建 wg 区域、允许 wg → lan 转发、必要时添加 MASQUERADE 规则。

参考参数(LuCI 防火墙页面)

参数
规则名称WG-Masquerade
协议任意
源区域wg
源 IP10.6.0.0/24
目标区域lan
动作MASQUERADE

二十、重要提醒

  1. 25.12 使用 apk,所有包管理命令已从 opkg 切换为 apk
  2. 不要随意公开:路由器 root 密码、OpenClash 订阅链接、WireGuard 私钥
  3. 如果私钥或订阅 Token 已泄露,建议全部重置
  4. 以后如需重新安装,建议按顺序:ext4 镜像 → 克隆到大硬盘 → 扩容 → 切换镜像源 → 安装插件

二十一、建议后续动作

  • ☐ 重置 OpenWrt root 密码
  • ☐ 重置 OpenClash 订阅链接
  • ☐ 重建 WireGuard 服务端和客户端密钥对
  • ☐ 导出一份当前系统配置备份

本文最后更新:2026-08-15 | 静静整理发布

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。