简介
这里使用的是Windows11的双网口主机安装OpenWrt(iStoreOS),通过光猫拨号进行连接,实现两个路由器可以访问不同的网络,详情可以查看下面的网络拓扑图。
系统要求
- Windows 专业版企业版和教育版;
- 具有二级地址转换 (SLAT) 的 64 位处理器;
- CPU 支持 VM 监视器模式扩展(Intel CPU 上的 VT-x);
- 最少 4 GB 内存;
启用Hyper-V
Windows 控制面板-程序-启用或关闭 Windows 功能
勾选Hyper-V|NFS服务|SMB|Windows 虚拟机监控程序平台|适用于 Linux 的 Windows 子系统确定并重启安装功能;
虚拟交换机管理
开始-Windows管理工具-Hyper-V
- 点击右侧虚拟交换机管理器;
- 点击新建虚拟网络交换机,选择外部,点击创建,更改名称随意(假设我网口1设置为 NetWork-A),在外部网络中选择连接至光猫的接口(网口1),并勾选允许管理操作系统共享此网络配置器;
- 依次创建网口2(连接子设备或路由器)为NetWork-B的外部网络,并勾选允许管理操作系统共享此网络配置器;
- 最后创建名称为NetWork的内部网络(用于虚拟机和宿主机通信)。
虚拟网络交换机 | 连接类型 | 连接网口 |
---|---|---|
NetWork-A | 外部网络 | 网口1(光猫或上级路由) |
NetWork-B | 外部网络 | 网口2(子设备) |
NetWork | 内部网络 | |
NetWork-X | 外部网络 | 网口X(子设备) |
如果你还有其他网口依次添加 NetWork-X 对应 网口X
注:两个都勾选允许管理操作系统共享此网络适配器。
此时在控制面板-网络和 Internet-网络和共享中心-更改适配器设置中,会多出三个虚拟网卡:vEthernet (NetWork),vEthernet (NetWork-A)和vEthernet (NetWork-B)。
创建虚拟机
这里使用的是iStoreOS 固件,前往固件下载中心下载x86_64固件(img.gz文件需要解压);使用StarWind Software V2V Image Converter(点击下载) 或 Microsoft Virtual Machine Converter将img镜像转换为.vhdx镜像;
StarWind Software V2V Image Converter镜像转换
- 下载并安装StarWind Software V2V Image Converter;
- 点击Local file-Next 选择下载并解压的img镜像文件,继续选择Local file - Local file - VHD/HDX - VHDX growable image - 选择导出位置 - Convert,镜像转换完成。
创建虚拟机
- Hyper-V 管理器 - 主界面右侧窗口点击新建-虚拟机,进入新建虚拟机向导。
- 点击下一步,输入名称:iStoreOS (任意);
- 选择第一代虚拟机;
- 分配内存;
- 不配置网络;
- 连接虚拟硬盘(上一步转换的vhdx镜像文件);
- 完成!
设置虚拟机
在Hyper-V 管理器选中刚才创建的名为iStoreOS的虚拟机,然后点击主界面右下部分的设置;
- 适量分配内存及处理器数量;
- 添加网络适配器;(添加硬件-网络适配器-点击添加)
- 依次添加网络适配器
NetWork-A NetWork NetWork-B 分别对应 网口1 内部网络 网口2 为eth0 eth1 eth2;
虚拟网络交换机 | 连接类型 | 连接网口 | 虚拟机网口 |
---|---|---|---|
NetWork-A | 外部网络 | 网口1(光猫或上级路由) | eth0 |
NetWork | 内部网络 | eth1 | |
NetWork-B | 外部网络 | 网口2(子设备) | eth2 |
如果你还有其他网口依次添加 NetWork-X 对应 网口X ethx
- 点击三个网络适配器左侧的+,选择高级功能,在右侧MAC地址中勾选启用MAC地址欺骗。
- 点击左侧自动启动操作,在右侧选择始终自动启动此虚拟机,在开机时自动启动。
- 点击确定完成设置。
- 回到Hyper-V管理器,点击点击连接并启动。
- 待出现
iStoreos is ready! Please press Enter to activate this console.
并不再滚动后,按回车键出现OpenWRT版本信息。
OpenWRT基础网络设置
- 在终端中输入命令:
vim etc/config/network
(注意vi和etc之间有个空格,命令不含双引号)并回车显示当前网络设置情况;
- 设置LAN口IP地址为:192.168.1.100 (如果你是光猫拨号,这样设置避免与光猫的192.168.1.1冲突。)
- (光标移动到数字下面按英文键盘上面的对应数字键),编辑完后按
esc
键退出编辑模式。退出编辑后再输入命令:wq
退到命令提示符下(注意wq前面要带英文的冒号),最有在命令提示符下输入命令:reboot
重启OpenWRT系统。 - 重启完成后浏览器访问 192.168.1.100 跳转到OpenWRT管理界面;
- 默认用户
root
- 默认密码
password
设置网络接口
- 网络-接口 中删除 WAN和 WAN6 ,保存并应用;
- 网络-接口-设备 中编辑 br-lan,配置网桥端口 为 eth0 eth1 eth2 保存并应用;
- 网络-接口 中编辑 LAN,常规设置iPv4网关为上级路由的网关(直连光猫拨号为192.168.1.1);
- 网络-接口 中编辑 LAN,高级设置使用自定义的 DNS 服务器(直连光猫拨号为192.168.1.1),也可以添加其他的自定义的 DNS 服务器;
- 保存并应用,此时虚拟机的网络已经配置完成。
宿主机网络设置
Windows 控制面板-网络和 Internet-网络和共享中心-更改适配器设置
分别设置三个网络适配器的iP地址,子网掩码和默认网关及DNS服务器,iP地址为内网iP段(192.168.1.X),子网掩码(255.255.255.0),默认网关设置及DNS服务器为OpenWrt(iStoreOS)的地址;
比如我的网络设置:
- 此时虚拟机与宿主机的网络已连通。
进阶玩法
基础网络配置完成,开始进阶配置更多玩法:
虚拟磁盘设置
挂载一个新的内部磁盘
默认的虚拟磁盘仅允许iStoreOS,我们需要一个新虚拟磁盘挂载运行Docker,易有云及其他的程序防止系统错乱。
- 打开Hyper-V 管理器 关闭正在运行的iStoreOS,打开设置;
- IDE 控制器0 - 硬盘驱动器 添加一个新的虚拟磁盘;
- 点击新建打开 新建虚拟磁盘向导;
- 根据向导创建一个VHDX动态或固定大小的磁盘,并选择虚拟磁盘文件保存位置,最后设置虚拟磁盘大小;
- 虚拟磁盘创建完成!
- 接下来再次启动虚拟机,并通过浏览器访问管理界面;
- 可以看到主界面出现一个新磁盘,点击格式化并挂载;(格式化为EXT4文件系统)
- 挂载完成,挂载目录为/mnt/-1;
- 你也可以更换挂载目录,系统-挂载点 编辑刚才挂载的磁盘;
- 修改挂载点(以 /mnt/data 目录为例),回车并保存;
- 继续保存并应用;
- 重启iStoreOS;
- 重新进入管理页面,系统-磁盘管理 可以看到已经更换挂载目录为 /mnt/data;
更改Docker目录
- 管理页面可以看到Docker目录,点击快速配置迁移到/mnt/data/docker并确定;
- 此时Docker在新加的DATA磁盘运行。
挂载Windows磁盘
将Windows驱动器挂载到iStoreOS中
- 此电脑-右键属性-共享-高级共享,设置共享名及权限,确定并保存;
- 此时浏览器直接访问网络路径可以查看磁盘文件;
- 在管理页面,网络存储-挂载网络共享 中,启用并添加Windows 网络共享磁盘,同理可以挂载更多Windows磁盘;
术语 | 描述 |
---|---|
服务器IP | 控制面板中对应Hyper-V内部网络的静态iP |
共享文件夹 | Windows驱动器的共享名 |
挂载路径 | 要挂载到内部虚拟机的路径 |
挂载参数 | 读写权限 |
用户 | Windows用户名 |
密码 | Windows密码 |
- 挂载成功可以在系统-挂载点 中查看挂载的Windows磁盘;
- 服务-易有云文件管理器 中本地文件管理可以查看挂载目录的文件。
istorex
- 在iStore中安装istorex并打开,可以进入路由模式及NAS模式;
NAS
离线下载
- 打开istorex进入NAS模式;
- 自动弹出设置向导或手动点击NAS套件;
- 配置主目录(可以将下载目录配置到挂载的Windows磁盘)
- 安装下载器
- 此时下载器自动配置完成;
易有云
- 在应用商店安装并打开易有云;下载客户端并扫码登录;
- 配置存储端,设置主目录为外部的Windows磁盘目录,确定开始绑定;
- 安装完成;(访问地址http://istoreosip:8897)
- 此时通过客户端即可查看挂载的目录文件。
DDNSTO路由远程
域名映射,一个浏览器远程访问NAS、路由器、docker等;远程应用,玩转远程下载、远程SSH、远程Windows桌面、远程开机;文件管理,支持访问samba、sftp、webdav等协议。
- 在应用商店安装并打开DDNSTO路由远程;前往官网并扫码登录;
- 获取访问令牌,
- 在服务-DDNSTO 远程控制粘贴访问令牌并启用保存;
- 此时在官网可以查看到目前的设备;
- 添加域名解析,填入主域名及内网服务地址,等待域名生效;
- 此时就可以通过公网访问内网服务了。
关闭iPv6
- 注意: 路由不建议开启 IPV6 和相关服务,偶尔会造成莫名其妙的BUG;
- 在应用商店安装并打开SysTools工具集;
- 系统-System Convenient Tools 选择关闭iPv6并执行;
- 网络-接口-全局网络选项 删除IPv6 ULA 前缀 保存并应用。
OpenClash
- 前往服务-终端,登陆
root
账户(默认密码password
);
- 执行下面命令安装依赖:
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
- 手动安装,选择刚才下载的
ipk
文件;
- 安装完成就可以在 服务-OpenClash 查看装好的程序;
- 更新内核,全局设置-版本更新 检查并更新内核文件;
- 此时OpenClash就安装完成了,你可以前往官方Wiki查看使用手册,网络连接异常时排查原因等。
PassWall
- 前往服务-终端,登陆
root
账户(默认密码password
);
- 执行下面命令安装依赖:
添加新的 opkg 密钥:
wget https://free.nchc.org.tw/osdn/storage/g/o/op/openwrt-passwall-build/passwall.pub
opkg-key add passwall.pub
添加 opkg 存储库:
read release arch << EOF
$(. /etc/openwrt_release ; echo ${DISTRIB_RELEASE%.*} $DISTRIB_ARCH)
EOF
for feed in passwall_luci passwall_packages passwall2; do
echo "src/gz $feed https://free.nchc.org.tw/osdn/storage/g/o/op/openwrt-passwall-build/releases/packages-$release/$arch/$feed" >> /etc/opkg/customfeeds.conf
done
安装包
opkg update
- 手动安装,选择刚才下载的
ipk
文件或终端内继续执行下面命令安装;
opkg install luci-app-passwall
- 服务-PassWall 此时PassWall就安装完成了;
- 先到节点订阅内开启自动更新订阅,在最下边填写并保存订阅节点网址,再手动更新一下节点,到节点列表查看较为延时低的 SS/SSR/V2Ray 节点,可以刷新订阅节点对比一下后点击使用。
- 到基本设置内 -> TCP节点 -> UDP节点选择俩个不同的节点,优先选择延时最低的,TCP默认代理模式选择大陆白名单,UDP默认代理模式选择游戏模式大陆白名单,其他可以不用动,然后打开总开关保存应用。
- 浏览网页只打开 TCP节点 即可,如果不玩游戏或不支持游戏加速的节点,不推荐开启 UDP 节点。
- 在运行状态内点击谷歌链接,查看是否可以正常访问,如果不能访问,更换 TCP节点 进行尝试。
- 如果有些域名不想通过代理访问,可以在访问控制内添加到白名单(白名单域名不走代理通道,对所有模式有效,且优先于黑名单。)
- 更多玩法请自己折腾。
更多
- 你可以在iStore 安装更多应用并折腾,注意在系统-备份/升级中下载当前配置文件的 tar 存档,方便及时恢复;
- iStoreOS稳定运行之后没有出现问题可以在Hyper-V 管理器中导出虚拟机备份;
- 导入保存的虚拟机:在Hyper-V 管理器中选择导入虚拟机,选择下载并解压的虚拟机备份文件或自己导出的虚拟机,就可以创建一个全新的虚拟机运行。
更多玩法请自行搜索相关教程或前往易有云 文档中心学习;
固件及应用下载