复制成功
请遵守本站许可
REPORT
Chapter_Post // Field_Report

Post_Ref: RL-PVE中安装IS

2026.04.08

pve中安装istoreOS用作旁路由

Echo HaoRan
Echo HaoRan
#完成任务
ANALYSIS

概述#

iStoreOS 是基于 OpenWrt 的软路由系统,集成了 iStore 应用商店,适合作为旁路由使用。本文介绍如何在 PVE 中安装 iStoreOS 并配置 OpenClash 实现科学上网。

什么是旁路由#

旁路由是指不作为主路由,而是作为网络中的一个节点,通过特定配置实现网络流量的分流、加速等功能。

优势:

  • 不影响现有网络结构
  • 可随时启停
  • 配置灵活
  • 便于测试和调试

前置条件#

  • Proxmox VE 已安装
  • 至少 2GB 内存
  • 8GB 存储空间
  • 网络环境正常

第一步:下载 iStoreOS 镜像#

官方下载地址#

访问 iStoreOS 官网:https://www.istoreos.com/

或 GitHub Release 页面:https://github.com/istoreos/istoreos/releases

选择合适的版本#

  • x86_64 架构:适用于物理机和虚拟机
  • ARM 架构:适用于 ARM 设备

下载文件示例:istoreos-22.03.6-2024-xxxx-x86-64-squashfs-combined.img.gz

解压镜像#

PRTCL // BASH
Terminal window
gunzip istoreos-22.03.6-2024-xxxx-x86-64-squashfs-combined.img.gz

上传到 PVE#

方法 1:通过 Web 界面上传

  1. 登录 PVE Web 界面
  2. 选择存储(如 local)
  3. 内容 → 上传
  4. 选择解压后的.img 文件

方法 2:通过 SCP 上传

PRTCL // BASH
Terminal window
scp istoreos-*.img root@PVE-IP:/var/lib/vz/template/iso/

方法 3:直接在 PVE 上下载

PRTCL // BASH
Terminal window
cd /var/lib/vz/template/iso/
wget https://github.com/istoreos/istoreos/releases/download/xxx/istoreos-xxx.img.gz
gunzip istoreos-xxx.img.gz

第二步:创建虚拟机#

通过 Web 界面创建#

  1. 点击右上角”创建虚拟机”

  2. 常规设置

    • 节点:选择 PVE 节点
    • VM ID:如 101
    • 名称:iStoreOS
  3. 操作系统

    • 不使用任何介质(Do not use any media)
    • Guest OS 类型:Linux
    • 版本:6.x - 2.6 Kernel
  4. 系统

    • 图形卡:默认
    • 机器:默认 (i440fx)
    • BIOS:默认 (SeaBIOS)
    • SCSI 控制器:VirtIO SCSI
  5. 硬盘

    • 总线 / 设备:VirtIO Block (scsi0)
    • 存储:local-lvm
    • 磁盘大小:8 GB
    • 缓存:Write back
    • 勾选:丢弃(Discard)
  6. CPU

    • 核心:2
    • 类型:host
  7. 内存

    • 内存:2048 MB
    • 最小内存:512 MB(可选)
  8. 网络

    • 桥接:vmbr0
    • 模型:VirtIO (paravirtualized)
    • 防火墙:关闭
  9. 完成但不要启动

通过命令行创建#

PRTCL // BASH
Terminal window
qm create 110 --name iStoreOS --memory 4096 --cores 4 --cpu host --net0 virtio,bridge=vmbr0 --ostype l26
qm set 110 --scsi0 local-data:8,cache=writeback,discard=on

第三步:导入 iStoreOS 镜像#

删除默认创建的磁盘#

PRTCL // BASH
Terminal window
qm set 110 --delete scsi0

导入镜像到虚拟机#

PRTCL // BASH
Terminal window
qm importdisk 110 /var/lib/vz/template/iso/istoreos-xxx.img local-lvm

参数说明:

  • 101:虚拟机 ID
  • /var/lib/vz/template/iso/istoreos-xxx.img:镜像路径
  • local-lvm:存储位置

等待导入完成,会显示类似:

PRTCL // PLAINTEXT
Successfully imported disk as 'unused0:local-lvm:vm-101-disk-0'

附加磁盘到虚拟机#

PRTCL // BASH
Terminal window
qm set 110 --scsi0 local-lvm:vm-101-disk-0

设置启动顺序#

PRTCL // BASH
Terminal window
qm set 101 --boot order=scsi0

或通过 Web 界面:

  1. 选择虚拟机
  2. 选项 → 启动顺序
  3. 将 scsi0 拖到第一位

第四步:配置虚拟机网络#

查看 PVE 网络配置#

PRTCL // BASH
Terminal window
cat /etc/network/interfaces

确认主网桥名称(通常是 vmbr0)

配置虚拟机网络(可选添加第二块网卡)#

如果需要双网卡配置:

PRTCL // BASH
Terminal window
qm set 101 --net1 virtio,bridge=vmbr1

第五步:启动虚拟机#

启动虚拟机#

PRTCL // BASH
Terminal window
qm start 101

或通过 Web 界面点击”启动”

查看控制台#

在 Web 界面点击”控制台”查看启动过程

第六步:访问 iStoreOS#

默认 IP 地址#

iStoreOS 默认 IP:192.168.100.1

修改网络配置(如果无法访问)#

在 PVE 控制台中:

  1. 等待系统启动完成
  2. 按回车进入命令行
  3. 编辑网络配置:
PRTCL // BASH
Terminal window
vi /etc/config/network

修改 lan 接口配置:

PRTCL // PLAINTEXT
config interface 'lan'
option device 'br-lan'
option proto 'static'
option ipaddr '192.168.1.2' # 修改为你的网段
option netmask '255.255.255.0'
option gateway '192.168.1.1' # 主路由 IP
option dns '192.168.1.1'

重要:旁路由配置要点

  • IP 地址:与主路由同网段,但不冲突(如主路由是 192.168.1.1,旁路由设为 192.168.1.2)
  • 网关:填写主路由 IP
  • DNS:填写主路由 IP 或公共 DNS

保存并重启网络:

PRTCL // BASH
Terminal window
/etc/init.d/network restart

访问 Web 界面#

浏览器访问:http://192.168.1.2(根据实际 IP 修改)

默认账户:

  • 用户名:root
  • 密码:password 或无密码

首次登录建议立即修改密码。

第七步:基础配置#

修改密码#

系统 → 管理权 → 密码

配置网络#

网络 → 接口 → LAN → 编辑

确认配置:

PRTCL // PLAINTEXT
协议:静态地址
IPv4 地址:192.168.1.2
IPv4 子网掩码:255.255.255.0
IPv4 网关:192.168.1.1(主路由 IP)
自定义 DNS 服务器:192.168.1.1 或 223.5.5.5

保存并应用

关闭 DHCP 服务器#

网络 → 接口 → LAN → 编辑 → DHCP 服务器

勾选”忽略此接口”(旁路由不需要 DHCP)

配置防火墙#

网络 → 防火墙 → 常规设置

  • 入站数据:接受
  • 出站数据:接受
  • 转发:接受

第八步:安装 OpenClash#

方法 1:通过 iStore 安装(推荐)#

  1. 访问 iStoreOS 主页
  2. 点击”iStore”图标
  3. 搜索”OpenClash”
  4. 点击”安装”
  5. 等待安装完成

方法 2:手动下载安装#

下载 OpenClash#

访问 GitHub Release 页面: https://github.com/vernesong/OpenClash/releases

下载最新版本的 ipk 文件:

  • luci-app-openclash_x.xx.x-x_all.ipk

上传并安装#

通过 Web 界面:

  1. 系统 → 文件传输
  2. 上传 ipk 文件到/tmp
  3. 系统 → TTYD 终端

执行安装:

PRTCL // BASH
Terminal window
opkg update
opkg install /tmp/luci-app-openclash_*.ipk

或使用 iStore 命令:

PRTCL // BASH
Terminal window
is-opkg install /tmp/luci-app-openclash_*.ipk

安装依赖#

PRTCL // BASH
Terminal window
opkg update
opkg install coreutils-nohup bash iptables dnsmasq-full curl ca-certificates ipset ip-full iptables-mod-tproxy iptables-mod-extra libcap libcap-bin ruby ruby-yaml kmod-tun kmod-inet-diag unzip luci-compat luci luci-base

第九步:配置 OpenClash#

访问 OpenClash#

服务 → OpenClash

下载内核和数据库#

配置设置 → 版本更新#

点击以下按钮下载:

  • ✓ 下载 Dev 内核(开发版,推荐)
  • ✓ 下载 Meta 内核(Meta 版本)
  • ✓ 下载 GeoIP 数据库
  • ✓ 下载 GeoSite 数据库

等待下载完成(可能需要几分钟)

导入订阅配置#

配置订阅#

配置设置 → 配置文件订阅

  1. 点击”添加”

  2. 填写:

    • 配置文件名称:自定义名称
    • 订阅地址:你的订阅链接
    • 自动更新:启用(可选)
    • 更新间隔:选择合适的时间
  3. 保存配置

  4. 点击”更新配置”

手动导入配置文件#

如果有本地配置文件:

  1. 配置设置 → 配置文件管理
  2. 上传配置文件(.yaml 格式)
  3. 选择上传的配置文件

基础设置#

模式设置#

配置设置 → 模式设置

  • 运行模式:Fake-IP(增强)模式(推荐)
  • 或选择:Redir-Host(兼容)模式

DNS 设置#

配置设置 → DNS 设置

PRTCL // PLAINTEXT
启用自定义 DNS:✓
NameServer:
- 223.5.5.5
- 119.29.29.29
FallBack DNS:
- 8.8.8.8
- 1.1.1.1

IPv6 设置#

配置设置 → IPv6 设置

  • 禁用 IPv6 类型 DNS 解析:✓(如果不需要 IPv6)

流量控制#

配置设置 → 流量控制

  • 仅允许内网:✓
  • 绕过中国大陆 IP:✓(根据需求)

启动 OpenClash#

全局设置

  • 启用 OpenClash:✓
  • 点击”保存并应用”

等待启动完成,查看运行日志确认无错误。

第十步:客户端配置#

方法 1:修改设备网关(推荐)#

在需要使用旁路由的设备上:

Windows:

  1. 控制面板 → 网络和共享中心
  2. 更改适配器设置
  3. 右键网卡 → 属性 → IPv4
  4. 修改:
    • IP 地址:自动或手动
    • 默认网关:192.168.1.2(旁路由 IP)
    • DNS 服务器:192.168.1.2

Android/iOS:

  1. WiFi 设置 → 高级选项
  2. IP 设置:静态
  3. 网关:192.168.1.2
  4. DNS:192.168.1.2

macOS:

  1. 系统偏好设置 → 网络
  2. 高级 → TCP/IP
  3. 路由器:192.168.1.2
  4. DNS → 添加:192.168.1.2

方法 2:在主路由配置 DHCP(全局生效)#

登录主路由管理界面,修改 DHCP 设置:

  • 默认网关:192.168.1.2(旁路由 IP)
  • DNS 服务器:192.168.1.2

保存后,所有通过 DHCP 获取 IP 的设备都会使用旁路由。

方法 3:使用策略路由#

在主路由上配置策略路由,指定某些设备或 IP 段走旁路由。

第十一步:验证配置#

检查网络连接#

PRTCL // BASH
Terminal window
ping baidu.com
ping google.com

检查 DNS 解析#

PRTCL // BASH
Terminal window
nslookup google.com

访问测试网站#

浏览器访问:

查看 OpenClash 状态#

服务 → OpenClash → 运行状态

检查:

  • 运行状态:运行中
  • 连接数:有数据
  • 上传 / 下载:有流量

查看节点延迟#

服务 → OpenClash → 节点配置

点击”延迟测试”查看各节点延迟

常见问题和解决方案#

无法访问 iStoreOS 管理界面#

检查网络配置:

PRTCL // BASH
Terminal window
# 在 PVE 控制台中
ip addr show

确认 IP 地址正确

重置网络配置:

PRTCL // BASH
Terminal window
uci set network.lan.ipaddr='192.168.1.2'
uci set network.lan.gateway='192.168.1.1'
uci set network.lan.dns='192.168.1.1'
uci commit network
/etc/init.d/network restart

OpenClash 无法启动#

查看日志:

服务 → OpenClash → 日志

常见原因:

  • 内核未下载:重新下载内核
  • 配置文件错误:检查配置文件语法
  • 端口冲突:修改监听端口

重启 OpenClash:

PRTCL // BASH
Terminal window
/etc/init.d/openclash restart

无法访问外网#

检查网关配置:

PRTCL // BASH
Terminal window
ip route show

应该显示默认路由指向主路由

检查 DNS:

PRTCL // BASH
Terminal window
cat /etc/resolv.conf

测试主路由连接:

PRTCL // BASH
Terminal window
ping 192.168.1.1

部分设备无法使用#

检查设备网关:

确保设备网关指向旁路由 IP

检查防火墙:

网络 → 防火墙 → 流量规则

确保没有阻止规则

OpenClash 订阅更新失败#

手动更新:

PRTCL // BASH
Terminal window
# SSH 登录 iStoreOS
cd /etc/openclash
wget -O config.yaml "你的订阅链接"
/etc/init.d/openclash restart

检查网络:

PRTCL // BASH
Terminal window
curl -I https://www.google.com

虚拟机性能问题#

优化 CPU:

PRTCL // BASH
Terminal window
qm set 101 --cpu host

启用 VirtIO:

确保网卡和磁盘都使用 VirtIO

增加资源:

PRTCL // BASH
Terminal window
qm set 101 --memory 4096
qm set 101 --cores 4

高级配置#

配置多个网卡#

添加第二块网卡用于管理:

PRTCL // BASH
Terminal window
qm set 101 --net1 virtio,bridge=vmbr1

在 iStoreOS 中配置:

PRTCL // BASH
Terminal window
vi /etc/config/network

添加:

PRTCL // PLAINTEXT
config interface 'wan'
option device 'eth1'
option proto 'dhcp'

配置端口转发#

网络 → 防火墙 → 端口转发

添加规则转发特定端口到内网设备

安装其他插件#

通过 iStore 安装:

  • AdGuard Home(广告拦截)
  • KMS 服务器
  • 文件浏览器
  • Samba 共享
  • Docker

配置 OpenClash 规则#

自定义规则#

配置设置 → 规则设置 → 自定义规则

添加规则示例:

PRTCL // YAML
# 直连规则
- DOMAIN-SUFFIX,cn,DIRECT
- DOMAIN-KEYWORD,baidu,DIRECT
- GEOIP,CN,DIRECT
# 代理规则
- DOMAIN-SUFFIX,google.com,PROXY
- DOMAIN-SUFFIX,youtube.com,PROXY
- DOMAIN-KEYWORD,github,PROXY
# 拦截规则
- DOMAIN-SUFFIX,ad.com,REJECT

策略组配置#

配置设置 → 策略组设置

自定义策略组:

  • 自动选择:根据延迟自动选择节点
  • 故障转移:主节点失败时切换
  • 负载均衡:分散流量到多个节点

配置流媒体解锁#

配置设置 → 流媒体解锁

选择支持流媒体的节点,配置规则:

PRTCL // YAML
- DOMAIN-SUFFIX,netflix.com,流媒体
- DOMAIN-SUFFIX,hulu.com,流媒体
- DOMAIN-SUFFIX,disneyplus.com,流媒体

定时任务#

系统 → 计划任务

添加定时任务:

PRTCL // BASH
Terminal window
# 每天凌晨 3 点更新订阅
0 3 * * * /usr/share/openclash/openclash.sh
# 每周日凌晨 4 点重启
0 4 * * 0 reboot

备份和恢复#

备份 iStoreOS 配置#

系统 → 备份 / 升级 → 备份 / 恢复

  1. 点击”生成备份”
  2. 下载备份文件(.tar.gz)

备份 OpenClash 配置#

PRTCL // BASH
Terminal window
# SSH 登录
cd /etc/openclash
tar -czf openclash-backup.tar.gz *

下载备份文件

恢复配置#

系统 → 备份 / 升级 → 备份 / 恢复

  1. 上传备份文件
  2. 点击”恢复备份”
  3. 等待系统重启

备份整个虚拟机#

在 PVE 中:

PRTCL // BASH
Terminal window
# 停止虚拟机
qm stop 101
# 备份虚拟机
vzdump 101 --storage local --mode stop
# 或通过 Web 界面:备份 → 立即备份

性能优化#

启用 BBR 加速#

PRTCL // BASH
Terminal window
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p

验证:

PRTCL // BASH
Terminal window
sysctl net.ipv4.tcp_congestion_control

优化 DNS 缓存#

PRTCL // BASH
Terminal window
uci set dhcp.@dnsmasq[0].cachesize='10000'
uci commit dhcp
/etc/init.d/dnsmasq restart

调整连接数限制#

PRTCL // BASH
Terminal window
echo "net.netfilter.nf_conntrack_max=65535" >> /etc/sysctl.conf
sysctl -p

优化虚拟机配置#

PRTCL // BASH
Terminal window
# 启用 CPU host 模式
qm set 101 --cpu host
# 优化网络
qm set 101 --net0 virtio,bridge=vmbr0,queues=4
# 优化磁盘
qm set 101 --scsi0 local-lvm:vm-101-disk-0,cache=writeback,discard=on,iothread=1

安全建议#

  1. 修改默认密码:首次登录后立即修改
  2. 关闭不必要的服务:系统 → 启动项
  3. 配置防火墙:只开放必要端口
  4. 定期更新:系统 → 软件包 → 更新列表
  5. 使用 HTTPS:系统 → 管理权 → HTTPS 证书
  6. 限制管理访问:只允许内网访问管理界面
  7. 定期备份:配置定时备份任务

监控和维护#

查看系统状态#

状态 → 概览

监控:

  • CPU 使用率
  • 内存使用率
  • 网络流量
  • 磁盘使用

查看实时日志#

状态 → 系统日志

或使用命令:

PRTCL // BASH
Terminal window
logread -f

查看网络连接#

PRTCL // BASH
Terminal window
netstat -an | grep ESTABLISHED

查看 OpenClash 连接#

服务 → OpenClash → 连接

实时查看活动连接和流量

故障排除命令#

PRTCL // BASH
Terminal window
# 重启网络
/etc/init.d/network restart
# 重启 OpenClash
/etc/init.d/openclash restart
# 重启防火墙
/etc/init.d/firewall restart
# 查看路由表
ip route show
# 查看 DNS
cat /etc/resolv.conf
# 测试 DNS 解析
nslookup google.com
# 查看端口监听
netstat -tlnp
# 查看进程
ps | grep clash
# 查看内核日志
dmesg | tail -50

参考资料#

R P
Rhine Lab Pioneer Division
Auth_Verified: 2026.04.08
// END OF POST

订阅

通过 RSS 订阅本站,新文章发布时第一时间收到通知。

Follow
Classified
Chapter_06
Protocol_Ref: CC-BY-NC-SA-4.0

pve中安装istoreOS用作旁路由

Author: CHONGXIReleased: 2026.04.08

Licensed under CC BY-NC-SA 4.0

评论

© 2025-2026 EchoSpace
Powered by Astro & echohaoran Non-Collaborative_Entity // Protocol_V.4.21