外观
fnOS 虚拟 iStoreOS 软路由:安装、主旁路由配置与排错(转载整理)
约 3936 字大约 13 分钟
2026-10-06
原作者:Slark / 一起玩 NAS!。本文将fnOS 虚拟 iStoreOS 软路由、iStoreOS 路由模式设置和iStoreOS 常见问题合并、改写为一篇流程笔记,省略了原文截图和部分资源下载说明。原站标注 CC BY-NC 4.0;本文沿用该许可,具体界面与固件版本请以原文和设备实际情况为准。
生成说明:本文由 OpenAI Codex 辅助整理,并经校对后发布,整理时间为 2026/10/06。
想在一台 fnOS 设备上同时运行 NAS 和软路由,可以借助 fnOS 虚拟机安装 iStoreOS。这里按实际操作顺序,把三篇教程中的安装、主路由与旁路由配置,以及常见故障放到一起。本文沿用原教程的 Intel N100、双网口、PE ISO 写盘 场景;不同硬件、fnOS 或 iStoreOS 版本的界面可能不同。
开始前,记录 fnOS 当前 IP、网关、两块物理网卡的名称和插线位置;备份重要数据及网络配置。准备一台能直接接到现有路由器的电脑,以便网络配置失误时继续登录 fnOS。作为主路由时,iStoreOS 虚拟机关机或 fnOS 宕机都会影响经它上网的设备。
先选网络模式
| 模式 | 虚拟机网卡 | 适用情况 | 关键设置 |
|---|---|---|---|
| 主路由 | fnOS 虚拟网卡作 LAN;另将一块空闲物理网卡直通作 WAN | 准备让 iStoreOS 承担家庭网络的路由与地址分配 | 两个网口的连接和 LAN/WAN 角色必须对应;客户端从 iStoreOS 获取地址 |
| 旁路由 | 一块连接现有局域网的虚拟网卡即可 | 保留现有主路由,让指定设备经 iStoreOS 上网 | 关闭旁路由 DHCP;需要使用它的设备再单独修改网关和 DNS |
原作者的示例设备是 Intel N100 双 2.5G 网口主机:enp2s0 已接入 fnOS 网络,供虚拟交换机及 iStoreOS LAN 使用;空闲的 enp3s0 则直通给虚拟机作 WAN。这些名称只属于示例,实际操作应按自己设备的网卡和 PCIe 地址核对。若只做旁路由,跳过物理网卡直通。
可以把两种连接方式理解为:
主路由:上级网络/光猫 → 直通物理网卡(iStoreOS WAN)
iStoreOS LAN(OVS 虚拟网卡)→ 家庭局域网/fnOS 管理网络
旁路由:现有主路由 ── 同一局域网 ── fnOS 的 OVS 虚拟网卡 ── iStoreOS
└─ 需要走旁路由的设备单独指定网关和 DNS主路由模式需要先规划 LAN 地址段:例如上级网络已使用 192.168.1.0/24,就不要把 iStoreOS LAN 也设为同一网段。旁路由模式则应与现有主路由保持同一网段,并为 iStoreOS 选一个不冲突的固定地址。
准备 fnOS 虚拟化环境
开启 IOMMU
做主路由且要直通网卡时,CPU、BIOS 和内核都需要支持并开启 IOMMU。旁路由不直通物理网卡,可跳过这一节。先检查主板 BIOS 中与 VT-d/IOMMU 相关的设置,再在 fnOS 中查看硬件直通状态。原教程以 Intel 平台为例,通过 SSH 登录 fnOS 并切换至 root 后编辑 GRUB 配置:
nano /etc/default/grub找到 GRUB_CMDLINE_LINUX_DEFAULT="..." 这一行,在引号内原有参数后增加 intel_iommu=on,保留原有参数并用空格分隔。在 nano 中按 Ctrl+X、Y、回车保存。随后执行:
update-grub
reboot重启后,检查 fnOS 是否显示 IOMMU 已开启,再按系统提示启用硬件直通选项。如果仍显示未开启,先复查 BIOS 与 GRUB 参数是否生效,再继续创建虚拟机。其他 CPU 平台或 BIOS 菜单名称可能不同,不应照抄 Intel 参数。
配置虚拟交换机
建议先为 fnOS 管理网口设置稳定的 IP,并记下当前网络配置。在 fnOS 网络设置中找到正在联网的网口,点右侧 ··· → 启用 OVS。原教程的已连接网口为 enp2s0,它在虚拟机中会成为一块虚拟网卡,并承担 iStoreOS 的 LAN;另一块状态为未连接的 enp3s0 稍后作为 WAN 直通。
启用 OVS 后先检查 fnOS 管理页面是否还能访问,确认管理 IP 没有意外变化,再继续下一步。不要把承载 fnOS 管理连接的网卡直通给虚拟机,否则 fnOS 自身可能失去网络。旁路由只需 OVS 提供的虚拟网卡。
准备镜像并创建虚拟机
原教程使用的 iStoreOS 固件是 img,而当时的 fnOS 虚拟机以 ISO 作为启动镜像。其解决思路是:用可启动的 PE ISO 进入虚拟机,再用其中的写盘工具把 iStoreOS img 写入虚拟硬盘。准备材料包括 iStoreOS x86_64 固件、PE ISO 和 img 写盘工具;原作者还提供了已打包镜像的入口。下载前核对来源、架构和版本。
若自行制作,按原作者的 PE ISO 打包教程:先取得可启动的 PE ISO;把写盘工具与解压后的 iStoreOS img 放进同一个文件夹;用 UltraISO 打开 PE ISO,添加目录后保存。制作结果应是一张既能启动 PE、又能在 PE 文件管理器中找到写盘工具和固件文件的 ISO。单纯修改 img 的扩展名不会把它变成可启动 ISO。
在 fnOS 中创建存放 ISO 的文件夹并上传启动镜像,然后新建虚拟机:
- 虚拟机名称可填
iStoreOS;操作系统选 Linux,版本按原教程选择 6.x - 2.6 Kernel。 - 启动镜像选择刚上传的 PE ISO。添加一块 SATA 虚拟硬盘;原文示例为 4 GB,若计划安装较多应用,应根据固件和使用需求增加容量。
- 网络部分保留 OVS 自动提供的虚拟网卡。做旁路由可直接创建。做主路由则在硬件直通步骤中找到预留物理网卡的 PCIe 设备,点添加硬件。原文的
03:00.0仅是示例,必须确认所选设备确为闲置网卡。 - 创建完成后,在虚拟机配置里再次核对:一块 SATA 虚拟硬盘、一块 OVS 虚拟网卡;主路由还应多一块直通网卡。随后启动虚拟机,打开 fnOS 提供的 VNC 控制台。
- PE 启动后打开此电脑,找到随 ISO 打包的 iStoreOS 文件夹,运行
img 写盘工具。在映像档选择istoreos.img,写入目标选择刚创建的 SATA 虚拟硬盘,再点开始。写盘会覆盖目标盘,应根据容量和盘符重新确认,不能仅凭默认选中项操作。 - 写盘完成后关闭虚拟机,在虚拟机编辑页面移除 PE 启动镜像。再次启动,确认 VNC 显示 iStoreOS 启动,而不是又回到 PE。如果回到 PE,检查是否忘记移除 ISO;如果没有可启动设备,检查写盘目标及虚拟硬盘连接。
以上步骤的按钮位置和设备截图见原安装教程。若 fnOS 或镜像格式已有变化,以当前系统实际可用的导入方式为准。
配置 iStoreOS 路由模式
原教程给出的初始登录账户是 root、密码是 password。首次登录后应立即修改默认密码。主路由配置建议通过 VNC 控制台完成:一旦修改接口和 LAN 地址,浏览器连接可能中断,VNC 通常仍可用于纠错。
主路由:确认 LAN/WAN 对应
主路由的前提是虚拟机中能看到两块网卡:连接局域网的 OVS 虚拟网卡,以及作为上联网口的直通网卡。先从 VNC 控制台查看接口:
ip -br link
ip -4 addr
ip route对照 fnOS 中虚拟网卡与直通网卡的 MAC 地址、物理网线的连接位置,核实哪块是 LAN、哪块是 WAN。原作者的配置截图中,eth0 是 OVS 虚拟网卡(LAN),eth1 是直通网卡(WAN)。这只是其虚拟机的枚举结果,不保证每台机器相同。
在 VNC 中编辑 /etc/config/network;使用 vi 时按 i 进入编辑,修改后按 Esc 并输入 :wq 保存。修改前先留一份备份:
cp /etc/config/network /etc/config/network.bak
vi /etc/config/network按原图,核心映射如下。仅在实际网卡顺序与原图一致时才使用 eth0/eth1;如果 WAN 使用 PPPoE 或静态地址,wan 的协议及认证信息也应按上级网络要求调整。
config interface 'wan'
option device 'eth1'
option proto 'dhcp'
config interface 'wan6'
option device 'eth1'
option proto 'dhcpv6'
config device
option name 'br-lan'
option type 'bridge'
list ports 'eth0'
config interface 'lan'
option device 'br-lan'
option proto 'static'
option ipaddr '192.168.2.1'
option netmask '255.255.255.0'这些是相关配置段的示意,不要把整份 /etc/config/network 覆盖成这段文字。192.168.2.1/24 是原作者的 LAN 示例,须避开上级网段与已有设备地址。保存后重启虚拟机,并按下面顺序检查:
- WAN 侧网线连向上级网络,LAN 侧连向交换机或电脑;先确认虚拟机仍能从 VNC 进入系统。
- 在 iStoreOS 的网络 → 接口中查看 WAN 是否取得上级地址、网关和 DNS;若使用拨号,检查拨号状态及凭据。
- 将电脑接到 LAN 一侧,确认它得到与 iStoreOS LAN 同网段的 IP,默认网关为 iStoreOS LAN 地址。若没有获取到地址,检查 LAN 口、DHCP 服务和地址池。
- 先测试访问 iStoreOS 管理页,再测试 IP 连通性和域名解析。能访问 IP 却打不开域名时,优先排查 DNS。
如果改错导致无法通过网络登录,可在 VNC 中用备份文件恢复原配置,再重启或重新加载网络;不要在管理连接已经中断时反复猜测网卡编号。
旁路由:使用网络向导
只有一块虚拟网卡时,iStoreOS 启动后可先从现有主路由获取 IP。在主路由设备列表里查到该 IP,用浏览器打开 iStoreOS 管理页:
- 先在现有主路由的设备列表里找到 iStoreOS 获取的 IP,用浏览器打开它,登录后进入首页的 网络向导 → 配置为旁路由 → 自动配置。
- 点击 当前 IPv4 上游信息(点此刷新),等待向导读取现有主路由的网络信息,再点 自动填写。
- 逐项核对旁路由的 IP 地址、上游网关、DNS 服务器:旁路由 IP 应处于现有 LAN 网段且没有冲突;上游网关通常是现有主路由地址,不能错误地填成旁路由自己的 IP。
- 关闭 提供 DHCPv4 服务,开启 NAT,点击保存配置,然后进入控制台。关闭 DHCP 是为了避免和现有主路由同时向同一局域网发放地址。
- 暂时不要修改全网设备。先选一台测试设备,设置与局域网匹配的静态 IPv4 地址、子网掩码,把网关和 DNS设为旁路由 IP。原文以 fnOS 的网络设置页面为例。测试成功后再逐台切换。
例如现有主路由是 192.168.2.1/24,旁路由可使用空闲的 192.168.2.186,测试设备可使用空闲的 192.168.2.143/24,并以 192.168.2.186 为网关与 DNS。这些仅是示例,地址不能与 DHCP 地址池中的其他设备冲突。完成后验证:测试设备能访问现有主路由、旁路由管理页和互联网;拔掉或关闭旁路由时,测试设备的网络会受影响,这能帮助确认流量确实经过旁路由。
常见问题与检查顺序
主路由下客户端无法上网
先区分故障发生在哪一段:
| 现象 | 优先检查 |
|---|---|
| VNC 里也看不到 iStoreOS 正常启动 | 虚拟硬盘是否写入成功、PE ISO 是否已移除、虚拟硬盘是否还连接着 |
| 电脑接 LAN 后得不到 IP | 接线、虚拟网卡与 br-lan 的映射、LAN DHCP 是否启用、地址池是否正确 |
| 能登录 iStoreOS,但所有外网 IP 都无法访问 | WAN 网线、直通网卡映射、WAN 获取地址或拨号状态、默认路由 |
| 能访问外网 IP,域名打不开 | DNS 服务器和客户端获得的 DNS 配置 |
| 旁路由能上网,指定设备不能 | 该设备的静态 IP、网关、DNS、旁路由 NAT 及地址冲突 |
原作者特别提到主路由 DHCP 分配失败的情况。先用网线将电脑接到 iStoreOS LAN,检查是否能获得地址。若没有,可暂时把电脑手动设成与 iStoreOS LAN 同网段的空闲 IP,再登录后台。进入 网络 → 接口 → lan → 编辑,在高级设置中填写自定义 DNS(原文示例 114.114.114.114、223.5.5.5),保存后到 DHCP 服务器 → 高级设置勾选强制,最后点保存并应用。这是原文针对其环境给出的处理方法;如果实际问题是 LAN/WAN 映射错误,单改 DNS 或强制 DHCP 不能解决。
代理插件在哪里安装
原文说明 iStoreOS 本身不预装代理插件,分别提供 KoolCenter 22.03 的软件包和 KoolCenter 24.10 的软件包。先在 iStoreOS 中核对版本,再按原文的上传安装截图手动安装;完成后到 服务 菜单查找。不要跨版本混用安装包,插件来源与后续更新也应自行核对。
旁路由后的 NAS 端口转发
如果 NAS 的网关指向旁路由,而且确有可用于入站访问的公网 IP,原文采用两级转发:主路由 → iStoreOS 旁路由 → NAS。其示例地址为主路由 192.168.2.1、旁路由 192.168.2.147、NAS 192.168.2.143。假设要开放 NAS 上某服务的 TCP 端口,先在主路由将公网入口端口转发到 192.168.2.147 的对应端口;再在 iStoreOS 网络 → 防火墙 → 端口转发 中将该端口转发到 192.168.2.143 的服务端口。实际地址、协议和端口应按自己的服务填写,原文规则截图见常见问题页。
排查时从外网测试,不要仅用局域网回环结果判断;确认公网地址确实落在自家主路由上、NAS 服务正在监听、两级转发的协议及端口一致,且 NAS 的默认网关仍指向旁路由。只开放确需远程访问的服务,并使用服务本身的认证和加密连接。
配错网口或地址后如何回退
如果主路由网络切换后管理页面失联,先回到 fnOS 的虚拟机 VNC,查看 ip -br link 和 /etc/config/network。前面若已建立备份,可在确认备份内容正确后恢复:
cp /etc/config/network.bak /etc/config/network
reboot旁路由失联时,先在现有主路由的设备列表里查找 iStoreOS 是否拿到新 IP;测试设备可暂时将网关和 DNS 改回原主路由地址,以恢复联网。确认虚拟机、地址和向导配置后再切回旁路由。
资料来源
- Slark:fnOS 虚拟 iStoreOS 软路由
- Slark:iStoreOS 路由模式设置
- Slark:iStoreOS 常见问题
本文按操作顺序重组并改写原文内容;原文图片、下载入口及后续更新请访问对应页面。