Featured image of post OpenWrt 实战:x86 软路由 + OpenClash 科学上网

OpenWrt 实战:x86 软路由 + OpenClash 科学上网

在 VMware ESXi / Workstation 上跑 x86 OpenWrt 软路由:StarWind V2V 转换、x86_64-squashfs-efi 镜像、OpenClash 订阅

一、为什么 2024 年要装 x86 软路由

家用路由器固件一般分两派:

  • 原厂固件(TP-Link / 华为 / 小米)—— 功能弱,但稳定
  • 第三方固件
    • 梅林(Asuswrt-Merlin):基于华硕开源的 Asuswrt,专为华硕路由器定制
    • OpenWrt:开源、原生 Linux、功能极强,x86 软路由用得最多

x86 软路由 vs 硬路由:

维度硬路由x86 软路由
性能弱(几百 MHz MIPS)强(多核 x86_64)
功能原厂固件OpenWrt 全功能
硬件成本低(200-2000)中(一台 NUC / J4125 准系统 500-1500)
维护简单需要 Linux 基础
科学上网部分支持OpenClash / PassWall 全支持

本文只讲 x86 软路由——把 OpenWrt 跑在 VMware ESXi / Workstation 虚拟机里。

本文写于 2024-10-15。示例基于 DHDAXCW/OpenWRT_x86_x64 的 2024.06.13 Lean 版。梅林固件是华硕路由器的固件选择,文末简单介绍。

二、下载 OpenWrt x86_64 镜像

社区维护的集成 Lean / immortalwrt 的 x86 镜像最常用:

1
https://github.com/DHDAXCW/OpenWRT_x86_x64/releases/download/2024.06.13-Lean/2024.06.13-openwrt-x86-64-squashfs-efi.img.gz

两个关键参数:

  • x86-64:64 位 x86 架构
  • squashfs:只读压缩文件系统 + overlay 写入(生产环境用)
  • efi:UEFI 启动(现代机器用)

老的 BIOS 机器下 x86-64-generic-squashfs-combined.img.gz 版本。

三、转换镜像格式

VMware / ESXi 用的 VMDK 文件,要用 StarWind V2V Converterimg 转成 vmdk

1
https://www.starwindsoftware.com/tmplink/starwindconverter.exe

步骤:

  1. 解压 2024.06.13-openwrt-x86-64-squashfs-efi.img.gz → 得到 .img
  2. 打开 StarWind V2V Converter
  3. 源格式:Local file → 选 .img
  4. 目标格式:VMware growable image (VMDK)
  5. 输出文件:2024.06.13-openwrt-x86-64-squashfs-efi.vmdk
  6. .vmdk 拷到虚拟机的存储目录(VMware 默认是 D:\soft\Virtual Machines\openwrt\

四、在 VMware 里创建虚拟机

4.1 选兼容性

  • ESXi:兼容性选 ESXi 6.7 或更高
  • Workstation:Workstation 17.x 即可

4.2 系统类型

  • 客户机操作系统:Linux
  • 版本:Other Linux 5.x or later kernel (64-bit)
  • 固件:UEFI关键,否则启动不了 efi 镜像)

4.3 硬件配置

  • CPU:1-2 核
  • 内存:512 MB-1 GB(OpenWrt 占用很小)
  • 硬盘:删掉默认的"新硬盘",选现有虚拟磁盘 → 选刚才转换的 vmdk
  • 网络:选 VM Network(同物理网段)或自定义网络

4.4 启动

开机 → 自动进 OpenWrt。

五、配置网络

OpenWrt 默认 LAN 口是 br-lan(桥接 br-lan),DHCP 启用,默认 IP 192.168.1.1

5.1 改 IP

如果跟现有路由器网段冲突,先改 IP。这里改成 192.168.132.250

1
2
3
4
5
6
7
8
9
vi /etc/config/network

config interface 'lan'
    option ifname 'eth0'
    option proto 'static'
    option ipaddr '192.168.132.250'
    option netmask '255.255.255.0'
    option gateway '192.168.132.2'
    option dns '114.114.114.114'

坑提醒:VMware Workstation 的 VMnet8 (NAT) 网关默认是 192.168.132.2,改 IP 跟它对得上才能上网。

5.2 重启网络

1
/etc/init.d/network restart

5.3 验证

1
2
3
ping 192.168.132.2
ping 8.8.8.8
ping baidu.com

六、Web 访问

浏览器开 http://192.168.132.250

  • 默认用户名:root
  • 默认密码:password第一次登录必须改

七、配置 SSH 公钥登录

7.1 客户端生成密钥

1
2
ssh-keygen -t ed25519 -C "lwd@<your-host>"
# 生成 ~/.ssh/id_ed25519 和 ~/.ssh/id_ed25519.pub

7.2 把公钥推到 OpenWrt

方式 1:Web UI

  • System → Administration → SSH-Keys → 把 id_ed25519.pub 内容粘进去 → Save

方式 2:命令行

1
2
3
4
5
6
7
8
ssh root@192.168.132.250
# 输入默认密码登录

# 在 OpenWrt 上
vi /etc/dropbear/authorized_keys
# 把 id_ed25519.pub 内容粘进去
chmod 600 /etc/dropbear/authorized_keys
/etc/init.d/dropbear restart

7.3 免密登录

1
2
ssh root@192.168.132.250
# 直接进

八、装 OpenClash(科学上网)

OpenClash 是 OpenWrt 上最流行的"科学上网"客户端之一——支持订阅、规则、TUN 模式。

8.1 装

1
2
3
4
5
6
7
8
# 装依赖
opkg update
opkg install coreutils-nohup bash iptables dnsmasq-full curl ca-certificates ipset ip-full libcap libcap-bin

# 下载 OpenClash ipk
# 社区下载页:https://github.com/vernesong/OpenClash/releases
wget https://github.com/vernesong/OpenClash/releases/download/v0.46.065/luci-app-openclash_0.46.065_all.ipk
opkg install luci-app-openclash_0.46.065_all.ipk

8.2 配置订阅

Web UI:服务 → OpenClash → 配置订阅

订阅 URL 示例(仅作格式示例,请用你自己的订阅):

1
https://sub.xeton.dev/sub?target=clash&filename=SSRDOG.yaml&new_name=true&url=https%3A%2F%2F<your-subscription-url>&insert=false&config=https%3A%2F%2Fraw.githubusercontent.com%2FACL4SSR%2FACL4SSR%2Fmaster%2FClash%2Fconfig%2FACL4SSR_Online.ini

把 URL 粘到订阅管理 → 点"下载配置" → 启动 OpenClash。

8.3 验证

服务 → OpenClash → 运行状态:

  • 内核已启动:Yacd / Dashboard 显示连接数
  • 访问 Google:通

九、远程访问 OpenWrt

9.1 Web 远程

路由器防火墙放行 80 / 443 端口(如果走公网访问):

1
2
# 改 /etc/config/firewall
# 把 lan zone 的 input 改成 ACCEPT

9.2 SSH 远程

  • 路由器 22 端口映射到公网
  • 生产环境强烈不推荐——OpenWrt 默认密码 password 是公开的

十、典型坑速查

现象原因处理
VMware 启动卡住选了 BIOS 启动改成 UEFI 启动
转换 VMDK 失败选错源格式选 Local file 而非 Physical disk
改 IP 后 SSH 断VMnet 网段不匹配确认 IP 跟宿主 VMnet 网段匹配
Web UI 进不去浏览器缓存清缓存或换无痕模式
OpenClash 启动失败没装依赖走 §8.1 装依赖包
装了 OpenClash 但所有流量都走代理规则不匹配改 ACL4SSR 规则为 Online 全量版

十一、梅林(Asuswrt-Merlin)固件简介

梅林固件是 Asuswrt-Merlin(开发者 Eric Sauvageau / RMerl)的华硕路由器定制固件——基于华硕开源的 Asuswrt。

跟 OpenWrt 的区别:

  • 梅林只在华硕路由器上能装(型号限制)
  • 梅林支持软件中心(koolshare)、屏蔽广告游戏加速定时任务挂载硬盘等家用功能
  • OpenWrt通用 x86 / ARM / MIPS 多平台

笔者 2021-04 那台 华硕 RT-AC86U(京东 629 元入手)刷的是梅林 + koolshare 软件中心。

11.1 装

  1. 确认型号在梅林支持列表:https://www.asuswrt-merlin.net/download
  2. 官方固件先升级到最新官方版本
  3. 在路由管理界面 http://192.168.1.1 → 系统管理 → 固件升级 → 上传 .trx 文件
  4. 等 2-3 分钟重启,别断电

11.2 装软件中心

  • 刷 koolshare 改版梅林(梅林改版
  • 在 koolshare.cn 论坛下载软件中心离线包
  • 软件中心 → 离线安装 → 选 .gz

11.3 常用功能

  • 屏蔽广告(koolshare 软件中心 → 广告屏蔽)
  • 科学上网(梅林自带 VPN 客户端 + koolshare 第三方插件)
  • 游戏加速(WTFast / UU 加速器插件)

十二、下一步

  • 想做更专业的科学上网 → OpenClash → 走 Yacd / Dashboard 控制面板
  • 想监控所有设备流量 → OpenWrt + Prometheus + Grafana
  • 想做企业级 SD-WAN → OPNsense / pfSense(基于 FreeBSD,UI 更好看)
  • 想玩极致性能 → 准系统 J4125 / N5105 + 双 2.5G 网卡 + OpenWrt 主路由
  • 不想折腾 → 买 R5S / R68S 之类的现成软路由盒

参考资料


2024+ 视角:写于 2024-10,半年后 OpenWrt 23.05 + MetaROUTER 的新生态

本文写于 2024-10-15——半年后(2025 年中)OpenWrt 生态又有了几个大变化:

一、OpenWrt 23.05 正式版(2024-06 推出)

  • OpenWrt 23.05(“Wavefunction”)2024-06-06 正式发布,替代 22.03 系列的快照版
  • Linux Kernel 5.15 LTS(22.03 用了 5.10)。
  • 新的 firewall4(nftables 替代 iptables):官方推荐——fw4 用 nftables 后端,但兼容旧 iptables 语法。
  • odhcpd 升级:IPv6 行为更稳定。
  • Image Builder 改动make menuconfig 后编译流程有变。
1
2
3
4
5
6
7
8
# 看自己跑的是哪个版本
cat /etc/openwrt_release
# DISTRIB_ID='OpenWrt'
# DISTRIB_RELEASE='23.05.0'
# DISTRIB_REVISION='r23809-234f1a2efa'
# DISTRIB_TARGET='x86/64'
# DISTRIB_ARCH='x86_64'
# DISTRIB_DESCRIPTION='OpenWrt 23.05.0 r23809-234f1a2efa'

二、OpenClash 的"接班人":MetaROUTER + mihomo

  • OpenClash 2023 年起作者(vernesong)维护节奏放缓,社区开始转向 mihomo(Clash Meta 的 Go 重写版):
1
2
3
# mihomo 内核(替代 clash premium / OpenClash Yacd)
opkg install mihomo
# 配置 /etc/mihomo/config.yaml(与 Clash Premium 配置格式兼容)
  • Meta 路由(2024 社区项目):把 OpenWrt 整体做成"智能网关"——内置广告拦截、内网 DNS、智能分流。
  • sing-box(2023 推出,Clash 团队重组后的新项目)也是 2024 主流选择:
1
2
3
opkg install sing-box
# /etc/sing-box/config.json
# 模式:tun(透明代理)

三、x86 软路由的"新主流"硬件

2024-2025 x86 软路由盒子的"主流配置"已经升级:

年代主流配置价格
2018-2020J1900 / J3455(4 网口)¥300-500
2021-2022J4125 / N4100(4 网口 2.5G 萌芽)¥500-800
2024-2025N100 / N305 / i3-N305(双 2.5G / 4×2.5G)¥800-1500
2024 高端Intel N100 + 4×i226-V 2.5G 网卡¥1200-2000
  • N100(4 核 4 线程,6W TDP)2024 是"软路由甜点 CPU"。
  • Intel N305(8 核 8 线程,15W TDP):带 2.5G 网卡 + WiFi 6。
  • R86S / R5S / N100 准系统是 2024-2025 的"现成方案"。

四、VMware Workstation 的"免费替代"

  • VMware Workstation Pro 17.5+(2024-05)已对个人用户免费(之前是付费)。
  • 更激进的免费替代
    • VirtualBox 7.x(2024-2025 仍是 Oracle 维护,跨平台免费)
    • Proxmox VE 8.x(2023+)—— 开源 KVM 虚拟化,Web 界面,2024 自托管玩家首选
    • KVM + Cockpit(Linux 原生,RHEL / Ubuntu 默认装)—— 2024 系统管理员的标准动作
1
2
3
4
# Proxmox 装(Debian 12 base)
echo "deb [signed-by=/etc/apt/keyrings/proxmox-release.gpg] http://download.proxmox.com/debian/pve bookworm pve-no-subscription" > /etc/apt/sources.list.d/pve.list
apt update && apt install proxmox-default-kernel
# 然后通过 https://<ip>:8006 访问 Web

五、AI + 路由:eBPF + 智能 QoS

  • 2024 OpenWrt + eBPF 实现"应用级智能 QoS":

    • 自动识别视频会议流量(Zoom/Teams/Webex)→ 优先保障
    • 自动识别 P2P / BT 流量 → 限速
    • 自动识别游戏流量(LOL/Steam)→ 低延迟队列
  • 应用:QCA / OpenWrt nss(Qualcomm 加速) + eBPF 内核态 QoS。

六、IPv6 + 软路由的"原生融合"

  • 2024 大陆运营商IPv6 全面普及(电信 / 联通 / 移动均默认下发 IPv6)。
  • OpenWrt 23.05 的 odhcpd 自动处理 IPv6 PD(前缀委派)+ SLAAC
  • 常见应用
    • 内网 IPv6 设备直连公网(NAT66 仍推荐
    • DDNS 同步 IPv6 到域名(dynv6 / afraid.org / DNSpod)
    • ip6tables 防火墙规则
1
2
3
# 看 OpenWrt IPv6 状态
ip -6 addr show
ip -6 route show

七、安全加固的"必做清单"(2024 视角)

  • 2024 OpenWrt 软路由最常见的入侵途径还是默认弱密码(password):
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
# 必做:改 root 密码
passwd
# 必做:改 Web UI 端口
uci set uhttpd.main.listen_http='0.0.0.0:88'
uci commit uhttpd
/etc/init.d/uhttpd restart

# 必做:禁 SSH 密码登录
uci set dropbear.@dropbear[0].PasswordAuth='off'
uci set dropbear.@dropbear[0].RootPasswordAuth='off'
uci commit dropbear
/etc/init.d/dropbear restart
  • 公网暴露 SSH = 自杀——所有公网 SSH 都被自动化扫端口,通过 Cloudflare Tunnel / Tailscale Funnel 暴露更安全。
  • OpenWrt 内核 5.x 的安全特性Lockdown LSMCFI(Control Flow Integrity)已在 23.05 启用。
使用 Hugo 构建
主题 StackJimmy 设计