7865 字
39 分钟

🚀 飞牛OS虚拟机安装OpenWrt旁路由 | 完整教程+网络配置优化 | 家庭网络管理终极指南

最近我的软路由 R5S 挂掉了,经过一番考虑后,我决定通过飞牛 OS 的虚拟机功能安装 OpenWrt 作为旁路由,继续为家庭网络提供服务。下面是详细的安装与配置步骤。

前言:为什么选择虚拟化方案?#

在当今智能家居时代,稳定的网络连接已经成为生活的必需品。从手机、电脑到智能电视、IoT设备,几乎所有设备都依赖网络正常工作。而软路由作为家庭网络的核心组件,承担着流量管理、安全防护、功能扩展等重要职责。

传统软路由的局限性#

痛,太痛了!

我那用了两年零九个月的R5S软路由,终于在昨天彻底挂掉了。

fnos-vm-install-openwrt-bypass-router 示例图片

这台 R5S 于 2023 年 2 月斥巨资(616 元)购入,陪我度过了无数个日日夜夜、严寒酷暑,始终如一地为我提供网络服务。

或许是因为我多次暴力关机、或许是因为没有为它加装散热、又或许是多次刷入不稳定的固件,如今,它终于在 2025 年 11 月 19 日寿终正寝。

为此我感到无比悲痛。

只是……

生活还要继续,上网更要继续。我的生活已经无法离开网络,同样地,网络也离不开软路由。

我不得不在悲痛之余,迅速寻找替代方案。

虚拟化方案的优势#

非常幸运,前几天我刚买了台小机器并安装了飞牛 OS 作为家庭 NAS。

我干脆通过飞牛 OS 的虚拟机功能,安装一个 OpenWrt 虚拟机作为旁路由。

说干就干,上网是最重要的。

为什么选择虚拟化而非重新购买硬件?

对比项独立硬件软路由虚拟化方案
初始成本¥600-1500¥0(利用现有硬件)
功耗5-15W增加2-5W
占用空间需要单独位置无额外空间需求
管理复杂度独立管理统一管理界面
备份恢复手动备份快照一键恢复
资源利用专用硬件资源共享
扩展性受硬件限制灵活调整配置
故障风险单点故障可快速迁移

虚拟化方案的核心优势:

  1. 💰 成本效益显著

    • 无需购买新硬件,节省600-1000元
    • 利用闲置的CPU和内存资源
    • 降低整体拥有成本(TCO)
  2. ⚡ 管理便捷高效

    • 统一的Web管理界面
    • 支持远程管理和监控
    • 快照功能便于备份和恢复
    • 资源动态调整
  3. 🔧 灵活性强

    • 可随时调整CPU、内存配置
    • 支持多种路由系统测试
    • 易于迁移和升级
    • 可同时运行多个虚拟机
  4. 🌱 环保节能

    • 减少电子垃圾产生
    • 降低总体功耗
    • 延长硬件使用寿命

什么是旁路由?#

在开始教程之前,让我们先了解一些基本概念。

主路由 vs 旁路由#

主路由(Main Router):

  • 负责DHCP服务,为设备分配IP地址
  • 执行NAT转换,实现内网访问外网
  • 作为网络的默认网关
  • 通常直接连接光猫/ modem
  • 故障会导致全网断网

旁路由(Bypass Router):

  • 不提供DHCP服务(可选)
  • 不执行NAT转换
  • 作为辅助网关存在
  • 连接到主路由的LAN口
  • 故障不影响基本网络连接

旁路由的工作原理#

┌─────────────┐
│ 光猫 │
└──────┬──────┘
┌──────▼──────┐
│ 主路由器 │ ← DHCP服务器、NAT、默认网关
│ 192.168.1.1 │
└──┬─────┬────┘
│ │
│ └──────────────┐
│ │
┌──▼──────┐ ┌───────▼────────┐
│ 设备A │ │ OpenWrt旁路由 │ ← 特殊功能服务
│ 1.100 │ │ 192.168.1.32 │
└─────────┘ └────────────────┘
┌─────▼──────┐
│ 设备B │ ← 网关指向旁路由
│ 1.101 │
└────────────┘

工作流程:

  1. 设备B将默认网关设置为旁路由IP(192.168.1.32)
  2. 设备B的网络请求先发送到旁路由
  3. 旁路由处理特殊流量(如代理、广告过滤)
  4. 普通流量转发给主路由(192.168.1.1)
  5. 主路由执行NAT后访问互联网

旁路由的应用场景#

✅ 适合使用旁路由的情况:

  • 只想为部分设备提供特殊功能
  • 希望保持网络稳定性(旁路由故障不影响其他设备)
  • 需要灵活切换不同路由策略
  • 测试新功能而不影响主网络
  • 主路由性能强劲,不愿替换

❌ 不适合使用旁路由的情况:

  • 希望所有设备自动使用特殊功能
  • 主路由性能不足,需要完全接管
  • 网络拓扑复杂,难以配置
  • 对延迟极其敏感的应用

准备工作#

硬件要求#

最低配置:

  • CPU:双核处理器(J1900及以上)
  • 内存:2GB可用内存
  • 存储:10GB可用空间
  • 网络:至少1个千兆网口

推荐配置:

  • CPU:四核处理器(J4125、N5105等)
  • 内存:4GB及以上
  • 存储:SSD存储池
  • 网络:双千兆网口(可选)

软件准备#

必需软件:

  1. 飞牛OS系统(已安装并正常运行)
  2. 虚拟机应用(从应用中心安装)
  3. OpenWrt固件镜像

可选工具:

  • SSH客户端(PuTTY、Terminal等)
  • 文本编辑器(用于修改配置)
  • 网络扫描工具(Advanced IP Scanner)

网络规划#

在开始之前,请规划好您的网络:

示例网络环境:

主路由IP:192.168.1.1
子网掩码:255.255.255.0
DHCP范围:192.168.1.100-200
旁路由IP:192.168.1.32(建议在DHCP范围外)
DNS服务器:192.168.1.32(旁路由)或公共DNS

IP地址选择原则:

  • ✅ 与主路由在同一网段
  • ✅ 不在DHCP分配范围内
  • ✅ 不与现有设备冲突
  • ✅ 便于记忆和管理

详细安装教程#

1. 下载OpenWrt固件#

我直接在 openwrt.ai 自己简单定制并编译了一个固件。

fnos-vm-install-openwrt-bypass-router 示例图片

为什么选择openwrt.ai?#

openwrt.ai平台优势:

  • 🎯 在线定制:图形化界面选择功能
  • ⚡ 快速编译:云端编译,无需本地环境
  • 📦 预装插件:集成常用软件和驱动
  • 🔄 定期更新:保持最新版本
  • 📖 文档完善:详细的使用说明
  • 👥 社区活跃:问题容易得到解答

固件定制步骤#

Step 1: 访问网站

Step 2: 选择硬件平台

  • 根据您的需求选择目标平台
  • 对于虚拟机,选择 x86/64 架构
  • 常见选项:
    • Generic x86/64:通用版本
    • EFI:支持UEFI启动(推荐)
    • Combined:包含分区表

Step 3: 选择功能模块

必选模块:

Base system → 基础系统(默认选中)
Network → 网络功能(默认选中)
LuCI → Web管理界面(强烈推荐)
Luci → zh-cn → 中文语言包(推荐)

推荐模块:

Network → Firewall → 防火墙
Network → VPN → VPN支持
Network → Routing and Redirection → 路由功能
Utilities → Compression → 压缩工具
System → Disk Management → 磁盘管理

可选模块(按需选择):

Network → AdBlock → 广告拦截
Network → Shadowsocks-libev → SS代理
Network → V2ray-core → V2Ray代理
Network → Clash → Clash代理
Network → SmartDNS → DNS优化
Services → AdGuard Home → AdGuard去广告

⚠️ 注意事项:

  • 不要安装过多插件,避免资源浪费
  • 确保选择的插件兼容当前版本
  • 记录安装的插件,便于后续维护
  • 首次建议最小化安装,后续按需添加

根据需求简单选一下功能,然后编译打包下载。

编译成功后直接下载镜像。一般直接下载EFI.img.gz结尾的文件即可。

fnos-vm-install-openwrt-bypass-router 示例图片

固件格式说明:

格式说明适用场景
EFI.img.gzUEFI启动镜像(压缩)现代虚拟机(推荐)
combined.img.gz传统BIOS启动镜像老旧系统
ext4.img.gzEXT4文件系统镜像需要Linux兼容性
squashfs.img.gzSquashFS只读系统节省空间

因为涉及到的基础知识比较多,我不太清楚哪里需要展开,哪里可以带过。如果有不懂的地方,==欢迎留言提问==。我将在第一时间回复,并在后续文章中补充。

2. 上传固件文件到nas#

fnos-vm-install-openwrt-bypass-router 示例图片

直接在飞牛 OS 的文件管理器中上传刚才下载的固件文件。或者通过 Samba、FTP 等方式上传也可以。

上传方法详解#

方法1:Web文件管理器(推荐)

  1. 登录飞牛OS管理界面
  2. 进入”文件管理”应用
  3. 导航到您想存放固件的目录(建议创建专门文件夹)
  4. 点击”上传”按钮
  5. 选择下载的.img.gz文件
  6. 等待上传完成

方法2:Samba共享

Terminal window
# Windows系统
# 在文件资源管理器地址栏输入:
\\飞牛OS-IP地址\共享文件夹
# macOS系统
# Finder → 前往 → 连接服务器
smb://飞牛OS-IP地址/共享文件夹
# 然后复制固件文件到共享目录

方法3:SCP命令(Linux/macOS)

Terminal window
# 从本地上传到飞牛OS
scp openwrt-x86-64-generic-ext4-combined-efi.img.gz \
username@fnos-ip:/vol1/1000/username/固件/
# 输入密码后开始传输

方法4:FTP/SFTP客户端

  • 使用FileZilla、WinSCP等工具
  • 连接飞牛OS的FTP/SFTP服务
  • 拖拽文件上传

推荐的目录结构:

/vol1/1000/username/
├── ISO/ # 系统镜像
│ ├── OpenWrt/ # OpenWrt固件
│ │ ├── openwrt-2025-01-01.img.gz
│ │ └── backup/ # 备份旧版本
│ └── Other/ # 其他系统镜像
├── VM/ # 虚拟机文件
│ └── OpenWrt/ # OpenWrt虚拟机
└── Downloads/ # 下载目录

3. 创建OpenWrt虚拟机#

fnos-vm-install-openwrt-bypass-router 示例图片

打开飞牛 OS 的虚拟机,点击新建虚拟机。没有的话去应用中心下载一个。

安装虚拟机应用#

如果还没有安装虚拟机应用:

  1. 打开飞牛OS”应用中心”
  2. 搜索”虚拟机”或”Virtual Machine”
  3. 点击”安装”按钮
  4. 等待安装完成
  5. 在应用列表中找到并打开

创建虚拟机详细步骤#

fnos-vm-install-openwrt-bypass-router 示例图片

Step 1: 基本信息设置

给虚拟机取个名字,操作系统选Linux,版本随便选。然后点下一步

推荐设置:

虚拟机名称:OpenWrt-Bypass-Router
描述:家庭网络旁路由系统
操作系统:Linux
版本:Other Linux (64-bit)

fnos-vm-install-openwrt-bypass-router 示例图片

Step 2: 系统镜像选择

系统镜像选择刚才上传的固件文件,其他的按自己需求来,基本上是不需要改的。==开机启动建议选择是==。

关键设置:

镜像类型:从文件导入
镜像文件:浏览并选择上传的.img.gz文件
开机自启:是(推荐,确保重启后自动运行)

⚠️ 重要提示:

  • 确保选择正确的镜像文件
  • 开机自启强烈建议开启,避免断电后需要手动启动
  • 其他选项保持默认即可

fnos-vm-install-openwrt-bypass-router 示例图片

Step 3: 资源配置

存储空间可以随意选择。

推荐资源配置:

资源项最小配置推荐配置说明
CPU核心1核2核OpenWrt轻量,1核够用
内存256MB512MB-1GB根据插件数量调整
系统盘4GB8GB留足空间安装插件
存储类型HDDSSDSSD性能更好

具体设置示例:

CPU:2核心
内存:512 MB
系统磁盘:8 GB
磁盘类型:Thin Provision(精简置备,节省空间)
存储池:选择SSD存储池(如有)

fnos-vm-install-openwrt-bypass-router 示例图片

Step 4: 网络配置

点一下添加网卡,选择好网卡,默认配置即可。

网络设置详解:

网卡类型:VirtIO(推荐,性能最佳)
网络模式:桥接模式
桥接网卡:选择连接到LAN的网口
MAC地址:自动生成(或手动指定)
VLAN:不需要(除非有特殊需求)

网卡选择建议:

  • 单网口NAS:选择唯一的网口即可
  • 多网口NAS:选择连接到交换机的网口(通常是eth0或eth1)
  • VLAN环境:如需隔离网络,可配置VLAN ID

如果有同学在这个页面找不到网卡,多半是因为没有开启过对应网口的 OVS

这时需要在设置-网络设置中,点击对应网口左上角的...,然后选择启用 OVS。短暂等待后该网卡即可启用 OVS

fnos-vm-install-openwrt-bypass-router 示例图片

什么是OVS(Open vSwitch)?

OVS是一个开源的虚拟交换机,提供:

  • ✅ 更灵活的网络配置
  • ✅ 支持VLAN和QoS
  • ✅ 更好的虚拟机网络隔离
  • ✅ 高级网络功能支持

启用OVS步骤:

  1. 进入飞牛OS”设置”
  2. 选择”网络设置”
  3. 找到要使用的网口
  4. 点击网口右上角的”…”菜单
  5. 选择”启用 OVS”
  6. 等待30秒左右完成初始化
  7. 返回虚拟机创建页面,网卡应该可见了

硬件直通直接忽略,点下一步。这样你的虚拟机就创建好了。

硬件直通说明:

硬件直通(PCIe Passthrough)允许虚拟机直接使用物理硬件,但对于旁路由来说:

  • ❌ 不需要:虚拟网卡性能已足够
  • ❌ 复杂度高:配置复杂,容易出错
  • ❌ 兼容性差:不是所有硬件都支持
  • ✅ 建议:使用虚拟网卡即可

4. 启动OpenWrt虚拟机#

fnos-vm-install-openwrt-bypass-router 示例图片

刚创建好的虚拟机会是关机状态,点击开关按钮,然后点击开机即可。

启动过程详解#

正常启动流程:

  1. 电源自检(5-10秒)

    • 虚拟机分配资源
    • 加载BIOS/UEFI
    • 检测硬件设备
  2. 系统引导(10-20秒)

    • 读取启动镜像
    • 加载Linux内核
    • 初始化系统服务
  3. 网络配置(5-10秒)

    • 检测网卡
    • 应用网络配置
    • 启动网络服务
  4. 服务启动(5-10秒)

    • 启动LuCI Web界面
    • 加载已安装插件
    • 完成系统初始化

总启动时间:约30-50秒

fnos-vm-install-openwrt-bypass-router 示例图片

开机后点击这个显示器图标,也就是VNC 访问

这样你就可以看到 OpenWrt 的后台界面了。

VNC访问说明#

什么是VNC?

VNC(Virtual Network Computing)是一种远程桌面协议,允许您:

  • 🖥️ 查看虚拟机控制台输出
  • ⌨️ 直接操作虚拟机
  • 🔍 排查启动问题
  • 🛠️ 进行底层配置

VNC使用技巧:

  1. 首次访问可能黑屏

    • 原因:系统还在启动中
    • 解决:等待1-2分钟后刷新页面
  2. 分辨率调整

    • VNC窗口可拖动调整大小
    • 系统会自动适应分辨率
  3. 键盘输入

    • 支持标准键盘输入
    • 特殊键组合可能需要通过菜单发送
  4. 断开重连

    • 关闭VNC窗口不会停止虚拟机
    • 可随时重新连接
  5. 安全性

    • VNC仅在局域网内访问
    • 不建议暴露到公网

5. 配置OpenWrt虚拟机网络#

如果在编译镜像那一步没有选择好你的 IP 段,那么你需要手动配置一下 OpenWrt 的网络。

fnos-vm-install-openwrt-bypass-router 示例图片

执行以下命令

Terminal window
vi /etc/config/network

Vi编辑器基础教程#

对于不熟悉Linux的同学,这里提供详细的vi操作指南:

Vi编辑器三种模式:

  1. 命令模式(默认模式)

    • 刚打开文件时处于此模式
    • 用于移动光标、删除文本等操作
  2. 插入模式

    • i键进入
    • 可以编辑文本内容
    • ESC退出
  3. 底行模式

    • :键进入
    • 用于保存、退出等命令

常用操作:

移动光标:
↑↓←→ 或 h,j,k,l 键
进入插入模式:
i - 在光标前插入
a - 在光标后插入
o - 在新行插入
删除操作:
x - 删除当前字符
dd - 删除整行
保存退出:
:wq - 保存并退出
:q! - 不保存强制退出
查找:
/关键词 - 向下查找
?关键词 - 向上查找

fnos-vm-install-openwrt-bypass-router 示例图片

修改 lan 口内容:

其中 option ipaddr 将后面引号内 IP 改为 OpenWrt 虚拟机的 IP 地址,可以自由发挥,但是==不要跟你内网环境中的其他设备冲突==。

option netmask 子网掩码一般不需要改动。

option gateway 将后面引号内 IP 改为你内网的网关地址,一般是你主路由器的 IP 地址。

配置文件详解:

Terminal window
# 原始配置示例
config interface 'lan'
option type 'bridge'
option ifname 'eth0'
option proto 'static'
option ipaddr '192.168.1.1' # ← 修改这里
option netmask '255.255.255.0' # 通常不改
option gateway '192.168.1.1' # ← 修改为主路由IP
option dns '192.168.1.1' # ← 可改为主路由或公共DNS

修改后的配置示例:

Terminal window
config interface 'lan'
option type 'bridge'
option ifname 'eth0'
option proto 'static'
option ipaddr '192.168.1.32' # 旁路由IP地址
option netmask '255.255.255.0' # 子网掩码
option gateway '192.168.1.1' # 主路由IP(网关)
option dns '192.168.1.1' # DNS服务器

配置要点:

  1. ipaddr(旁路由IP)

    • 必须在主路由同一网段
    • 不能与现有设备冲突
    • 建议在DHCP范围外
    • 示例:192.168.1.32
  2. netmask(子网掩码)

    • 通常为 255.255.255.0
    • 与主路由保持一致
    • 一般不需要修改
  3. gateway(默认网关)

    • 填写主路由的IP地址
    • 旁路由通过此地址访问外网
    • 示例:192.168.1.1
  4. dns(DNS服务器)

    • 可填主路由IP
    • 或使用公共DNS:
      • 阿里DNS:223.5.5.5
      • 腾讯DNS:119.29.29.29
      • Google DNS:8.8.8.8
      • Cloudflare:1.1.1.1

修改完成后按 ESC 键,然后输入 :wq 保存并退出。

然后执行以下命令重启网络服务

Terminal window
/etc/init.d/network restart

然后执行

Terminal window
ip a

fnos-vm-install-openwrt-bypass-router 示例图片

查看一下你的 OpenWrt 虚拟机的 IP 是否配置正确。

验证网络配置:

Terminal window
# 查看网络接口信息
ip a
# 预期输出应包含:
# 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP>
# inet 192.168.1.32/24 brd 192.168.1.255 scope global eth0
# 测试网络连接
ping -c 4 192.168.1.1 # ping主路由
ping -c 4 8.8.8.8 # ping外网
ping -c 4 www.baidu.com # ping域名(测试DNS)
# 查看路由表
route -n
# 预期输出:
# Destination Gateway Genmask Flags
# 0.0.0.0 192.168.1.1 0.0.0.0 UG
# 192.168.1.0 0.0.0.0 255.255.255.0 U

常见问题排查:

Terminal window
# 如果网络不通,检查以下内容:
# 1. 确认配置文件语法正确
cat /etc/config/network
# 2. 检查防火墙规则
iptables -L -n
# 3. 查看系统日志
logread | grep network
# 4. 重启网络服务
/etc/init.d/network restart
# 5. 检查网卡状态
ethtool eth0

6. 通过浏览器访问OpenWrt后台#

如果上面的步骤配置得没有问题,那么你就可以通过浏览器访问 OpenWrt 虚拟机的后台了。地址栏输入你刚才配置的 OpenWrt 虚拟机的 IP 地址即可。

fnos-vm-install-openwrt-bypass-router 示例图片

第一次访问会提示你设置密码,设置好密码后即可登录后台。==请务必牢记密码==。

Web界面初次设置#

访问地址:

http://192.168.1.32

(将IP替换为您实际设置的旁路由IP)

初次登录步骤:

Step 1: 设置管理员密码

  • 系统会提示设置root密码
  • 输入强密码(建议12位以上,包含大小写字母、数字、特殊字符)
  • 确认密码
  • 点击”保存”或”Save”

Step 2: 登录系统

  • 用户名:root
  • 密码:刚才设置的密码
  • 点击”登录”

Step 3: 熟悉界面

  • 顶部菜单栏:系统、网络、服务等主要功能
  • 左侧导航:详细的功能分类
  • 状态页面:显示系统运行状态
  • 概览页面:快速查看关键信息

安全建议:

🔐 密码安全:

  • 使用强密码,避免简单组合
  • 定期更换密码(建议3-6个月)
  • 不要与其他系统共用密码
  • 考虑使用密码管理器

🔒 访问控制:

  • 仅允许可信网络访问
  • 考虑修改默认端口(80→8080)
  • 启用HTTPS(稍后配置)
  • 定期审查访问日志

7. 配置旁路由#

fnos-vm-install-openwrt-bypass-router 示例图片

系统-设置向导-网络设置中勾选旁路由模式,然后填入 IPv4 网关地址(也就是你主路由器的 IP 地址),点击保存并应用即可。

旁路由模式配置详解#

方法1:使用设置向导(推荐新手)

  1. 登录OpenWrt Web界面
  2. 点击顶部菜单”系统”(System)
  3. 选择”设置向导”(Wizard)
  4. 找到”网络设置”(Network Settings)
  5. 勾选”旁路由模式”(Bypass Mode)
  6. 在”IPv4网关”字段填入主路由IP(如192.168.1.1)
  7. 点击”保存并应用”(Save & Apply)
  8. 等待配置生效(约10秒)

方法2:手动配置(高级用户)

如果设置向导不可用或需要更精细的控制:

Step 1: 禁用DHCP服务器

网络 → 接口 → LAN → DHCP服务器 → 常规设置
☐ 忽略此接口(勾选)
保存并应用

Step 2: 配置防火墙

网络 → 防火墙 → 常规设置
输入:接受
输出:接受
转发:接受
保存并应用

Step 3: 配置DNS转发

网络 → DHCP/DNS → 常规设置
☑ 本地服务器(勾选)
本地服务器:填写上游DNS(如192.168.1.1或223.5.5.5)
保存并应用

Step 4: 配置SNAT(源地址转换)

如果需要旁路由处理代理流量:

Terminal window
# SSH登录OpenWrt
ssh root@192.168.1.32
# 添加SNAT规则
iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE
# 保存规则(安装iptables-mod-save包后)
/etc/init.d/firewall save

验证旁路由配置:

Terminal window
# 1. 检查DHCP是否已禁用
uci show dhcp.lan.ignore
# 应输出:dhcp.lan.ignore='1'
# 2. 检查网关配置
route -n
# 默认路由应指向主路由
# 3. 测试DNS解析
nslookup www.baidu.com
# 应能正常解析域名
# 4. 测试网络连通性
ping -c 4 192.168.1.1 # 主路由
ping -c 4 8.8.8.8 # 外网IP
ping -c 4 www.google.com # 外网域名

家中设备使用旁路由#

旁路由跟主路由不同,旁路由并不会分配 IP 地址给家中的设备。所以其他设备如果需要使用旁路由提供的网络服务,需要手动设置设备的网关为旁路由的 IP 地址。

例如我的旁路由 IP 地址是 192.168.1.32,那么我家中其他设备的网关就需要设置为 192.168.1.32

fnos-vm-install-openwrt-bypass-router 示例图片

PC 端可以直接在网络设置中修改网关地址。

方案一:主路由DHCP配置(推荐)#

这是最简便的方案,所有设备自动使用旁路由。

配置步骤:

  1. 登录主路由管理界面(通常是192.168.1.1)
  2. 找到”DHCP服务器”或”局域网设置”
  3. 找到”默认网关”或”路由器”选项
  4. 将网关地址改为旁路由IP(192.168.1.32)
  5. (可选)将DNS服务器也改为旁路由IP
  6. 保存并应用
  7. 重启DHCP服务或重启主路由

优点:

  • ✅ 所有设备自动配置,无需手动设置
  • ✅ 新设备接入自动生效
  • ✅ 集中管理,便于维护
  • ✅ 可随时切换回主路由

缺点:

  • ⚠️ 旁路由故障会影响所有设备
  • ⚠️ 需要主路由支持自定义网关

适用场景:

  • 希望所有设备都使用旁路由功能
  • 旁路由稳定性高
  • 主路由支持自定义DHCP选项

方案二:设备手动配置#

fnos-vm-install-openwrt-bypass-router 示例图片

以 Win10 为例,点击 WiFi 图标,点击对应 WiFi 下方的属性。

fnos-vm-install-openwrt-bypass-router 示例图片

在下方的 IP 设置中点击编辑。IP 分配方式选择手动,然后开启 IPv4。网关地址填写旁路由的 IP 地址,点击保存即可。

其他设备(手机、平板、智能设备等)同理,在对应的网络设置中修改网关地址即可。

Windows系统配置#

Windows 10/11 有线网络:

  1. 右键点击任务栏网络图标
  2. 选择”网络和Internet设置”
  3. 点击”更改适配器选项”
  4. 右键点击以太网 → 属性
  5. 双击”Internet协议版本4 (TCP/IPv4)”
  6. 选择”使用下面的IP地址”
  7. 填写:
    IP地址:192.168.1.xxx(与原IP相同或新分配)
    子网掩码:255.255.255.0
    默认网关:192.168.1.32(旁路由IP)
    首选DNS:192.168.1.32 或 223.5.5.5
  8. 点击”确定”保存

Windows 10/11 WiFi网络:

  1. 点击任务栏WiFi图标
  2. 点击已连接WiFi的”属性”
  3. 找到”IP分配” → 点击”编辑”
  4. 选择”手动”
  5. 开启IPv4
  6. 填写IP、网关、DNS
  7. 点击”保存”

命令行配置(管理员权限):

Terminal window
# 查看网络适配器
Get-NetAdapter
# 设置静态IP和网关
New-NetIPAddress -InterfaceAlias "以太网" `
-IPAddress 192.168.1.100 `
-PrefixLength 24 `
-DefaultGateway 192.168.1.32
# 设置DNS
Set-DnsClientServerAddress -InterfaceAlias "以太网" `
-ServerAddresses 192.168.1.32

macOS系统配置#

macOS有线/WiFi配置:

  1. 系统偏好设置 → 网络
  2. 选择要配置的网络接口
  3. 点击”高级”
  4. 切换到”TCP/IP”标签
  5. “配置IPv4”选择”手动”
  6. 填写:
    IP地址:192.168.1.xxx
    子网掩码:255.255.255.0
    路由器:192.168.1.32
  7. 切换到”DNS”标签
  8. 添加DNS服务器:192.168.1.32
  9. 点击”确定” → “应用”

Android系统配置#

Android手机/平板:

  1. 设置 → WLAN
  2. 长按已连接的WiFi → 修改网络
  3. 显示高级选项
  4. IP设置:从”DHCP”改为”静态”
  5. 填写:
    IP地址:192.168.1.xxx
    网关:192.168.1.32
    网络前缀长度:24
    DNS 1:192.168.1.32
    DNS 2:223.5.5.5
  6. 保存

iOS系统配置#

iPhone/iPad:

  1. 设置 → Wi-Fi
  2. 点击已连接WiFi右侧的 ⓘ
  3. 向下滑动找到”配置IP”
  4. 从”自动”改为”手动”
  5. 填写:
    IP地址:192.168.1.xxx
    子网掩码:255.255.255.0
    路由器:192.168.1.32
  6. 配置DNS:
    • 返回上一级
    • 点击”配置DNS”
    • 改为”手动”
    • 添加服务器:192.168.1.32
  7. 保存

Linux系统配置#

Ubuntu/Debian(图形界面):

  1. 设置 → 网络
  2. 点击有线/WiFi的设置图标
  3. IPv4标签
  4. 方法:手动
  5. 填写地址、网关、DNS
  6. 应用

命令行配置(Netplan):

# 编辑 /etc/netplan/01-netcfg.yaml
network:
version: 2
ethernets:
eth0:
addresses:
- 192.168.1.100/24
gateway4: 192.168.1.32
nameservers:
addresses:
- 192.168.1.32
- 223.5.5.5
# 应用配置
sudo netplan apply

验证配置是否生效#

测试方法:

Terminal window
# 1. 查看当前网关
# Windows
ipconfig | findstr "网关"
# macOS/Linux
netstat -nr | grep default
# 2. 测试网络连通性
ping 192.168.1.32 # 旁路由
ping 192.168.1.1 # 主路由
ping 8.8.8.8 # 外网
# 3. 测试DNS解析
nslookup www.baidu.com
# 4. 访问OpenWrt后台
# 浏览器访问 http://192.168.1.32
# 应能正常登录
# 5. 检查流量是否经过旁路由
# 在OpenWrt后台查看:
# 状态 → 概览 → 接口
# 应能看到数据传输统计

进阶配置与优化#

常用插件推荐#

1. AdGuard Home(广告拦截)

系统 → 软件包 → 更新列表
搜索 adguardhome
安装并配置
监听端口:3000
上游DNS:223.5.5.5, 119.29.29.29

2. PassWall(科学上网)

安装 passwall 插件
配置节点信息
设置路由模式:GFWList或全局
测试连接

3. SmartDNS(DNS优化)

安装 smartdns
配置上游DNS服务器
设置测速和优选
提升域名解析速度

4. FileBrowser(文件管理)

安装 filebrowser
设置访问端口
配置用户权限
方便管理配置文件

性能优化建议#

1. 系统精简

Terminal window
# 卸载不必要的软件
opkg remove luci-app-* # 移除不需要的LuCI插件
opkg clean # 清理缓存

2. 内存优化

Terminal window
# 查看内存使用
free -h
# 清理缓存
sync && echo 3 > /proc/sys/vm/drop_caches

3. 日志管理

Terminal window
# 限制日志大小
vim /etc/config/system
# 设置 log_size = 64
# 定期清理日志
logread -l 100 > /tmp/log.tmp && mv /tmp/log.tmp /var/log/messages

4. 网络优化

Terminal window
# 调整TCP参数
vim /etc/sysctl.conf
# 添加:
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
# 应用配置
sysctl -p

备份与恢复#

备份配置:

Terminal window
# SSH登录OpenWrt
ssh root@192.168.1.32
# 备份配置文件
tar czf /tmp/openwrt-backup-$(date +%Y%m%d).tar.gz \
/etc/config/ \
/etc/firewall.user \
/root/.ssh/
# 下载到本地
scp root@192.168.1.32:/tmp/openwrt-backup-*.tar.gz ./
# 或通过Web界面:
# 系统 → 备份/升级 → 生成备份文件 → 下载

恢复配置:

Terminal window
# 上传备份文件
scp openwrt-backup-20260418.tar.gz root@192.168.1.32:/tmp/
# SSH登录并恢复
ssh root@192.168.1.32
cd /tmp
tar xzf openwrt-backup-20260418.tar.gz -C /
# 重启服务
/etc/init.d/network restart
/etc/init.d/firewall restart

虚拟机快照:

飞牛OS支持虚拟机快照功能:

  1. 在虚拟机管理界面
  2. 选择OpenWrt虚拟机
  3. 点击”快照” → “创建快照”
  4. 输入快照名称和描述
  5. 系统异常时可快速恢复到快照状态

故障排除#

问题1:虚拟机无法启动#

症状: 点击开机后无反应或立即停止

排查步骤:

Terminal window
# 1. 检查OVS是否启用
# 飞牛OS设置 → 网络设置 → 确认网口已启用OVS
# 2. 检查BIOS虚拟化
# 重启NAS,进入BIOS
# 确认 Intel VT-x 或 AMD-V 已启用
# 3. 查看虚拟机日志
# 飞牛OS虚拟机管理 → 选择虚拟机 → 查看日志
# 4. 检查资源占用
top
# 确认CPU和内存充足
# 5. 尝试重建虚拟机
# 删除现有虚拟机,重新创建

问题2:无法访问Web界面#

症状: 浏览器无法打开 http://192.168.1.32

解决方法:

Terminal window
# 1. 确认IP地址正确
# VNC登录OpenWrt,执行:
ip a
# 2. 检查防火墙
# SSH登录OpenWrt:
iptables -L -n
# 确认80端口未被阻止
# 3. 测试网络连通性
ping 192.168.1.32
# 4. 检查LuCI服务
/etc/init.d/uhttpd status
/etc/init.d/uhttpd restart
# 5. 清除浏览器缓存
# 或使用无痕模式访问
# 6. 尝试其他浏览器
# Chrome、Firefox、Edge等

问题3:网络不通#

症状: 配置网关后无法上网

排查清单:

Terminal window
# 1. 检查网关配置
# 设备上执行:
# Windows: ipconfig
# macOS/Linux: route -n
# 确认网关指向192.168.1.32
# 2. 检查OpenWrt网关
# SSH登录OpenWrt:
route -n
# 确认默认路由指向192.168.1.1
# 3. 测试逐跳连通性
ping 192.168.1.32 # 旁路由
ping 192.168.1.1 # 主路由
ping 8.8.8.8 # 外网
# 4. 检查DNS
nslookup www.baidu.com 192.168.1.32
# 5. 检查防火墙
# OpenWrt后台:
# 网络 → 防火墙 → 确认为"接受"
# 6. 检查主路由
# 确认主路由工作正常
# 暂时将设备网关改回主路由测试

问题4:VNC黑屏或无响应#

解决方法:

  1. 等待系统启动

    • OpenWrt启动需要30-50秒
    • 耐心等待后再刷新
  2. 重启虚拟机

    飞牛OS虚拟机管理 → 选择OpenWrt → 重启
  3. 检查资源分配

    • 确保分配了足够的CPU和内存
    • 建议至少2核CPU、512MB内存
  4. 重新安装固件

    • 可能是固件损坏
    • 重新下载并创建虚拟机
  5. 尝试其他访问方式

    • 使用SSH代替VNC
    • 通过网络访问Web界面

问题5:性能卡顿#

优化方案:

Terminal window
# 1. 检查资源使用
top
# 查看CPU和内存占用
# 2. 关闭不必要插件
# OpenWrt后台:
# 系统 → 软件包 → 卸载不需要的插件
# 3. 增加资源配置
# 飞牛OS虚拟机管理:
# 编辑虚拟机 → 增加CPU核心或内存
# 4. 优化网络
# 减少并发连接数
# 限制带宽使用
# 5. 清理系统
opkg clean
rm -rf /tmp/*
reboot

总结#

飞牛 OS 虚拟机安装 OpenWrt 作为旁路由的过程其实并不复杂,关键是要理解旁路由的工作原理以及如何配置网络。

通过这种方式,我成功地替代了已经挂掉的 R5S 软路由,继续享受稳定的网络服务。

核心要点回顾:

  1. 🎯 选择合适的固件:根据需求定制功能,避免过度安装
  2. 🔧 正确配置网络:IP地址、网关、DNS缺一不可
  3. 🌐 理解旁路由原理:旁路由不分配IP,需手动指定网关
  4. 💾 做好备份工作:定期备份配置,便于快速恢复
  5. 🛡️ 注意安全设置:强密码、访问控制、定期更新

虚拟化方案的优势:

  • ✅ 节约成本,无需购买新硬件
  • ✅ 统一管理,操作便捷
  • ✅ 灵活配置,易于调整
  • ✅ 快照备份,安全可靠

同样地,希望这篇文章能帮助到有需要的朋友们。如果在操作过程中遇到任何问题,欢迎在评论区留言,我会尽力帮助大家解决。

祝大家上网愉快!

推荐阅读#

🚀 飞牛OS虚拟机安装OpenWrt旁路由 | 完整教程+网络配置优化 | 家庭网络管理终极指南
https://971918.xyz/posts/docs/fnos-vm-install-openwrt-bypass-router/
作者
九所长
发布于
2025-11-20
许可协议
CC BY-NC-SA 4.0