在家庭或实验室环境中,将 OpenWrt 部署为虚拟路由器是一种灵活、高效的方案。本文记录了在 Proxmox VE(PVE)中以虚拟机方式安装 OpenWrt 的完整流程,提供下载镜像、配置虚拟机、导入磁盘及网络配置等关键步骤。
环境准备
本文基于 Proxmox VE 8.x 的环境,硬件为 x86‑64 主机,使用 OVMF(UEFI)启动方式。安装过程中需要在宿主机有 Shell 使用权限。
下载并解压 OpenWrt 镜像
1. 前往 OpenWrt 官方下载页面,在“稳定发行版”中选择 x86/64 目标架构,下载 generic‑ext4‑combined‑efi.img.gz 压缩镜像。
2. 将文件上传到 PVE 的宿主机或使用 wget 直接下载。例如,以 23.05.3 版本为例:
wget https://downloads.openwrt.org/releases/23.05.3/targets/x86/64/openwrt-23.05.3-x86-64-generic-ext4-combined-efi.img.gz
3. 在宿主机的 Shell 中解压缩镜像:
gunzip openwrt-23.05.3-x86-64-generic-ext4-combined-efi.img.gz
解压后得到 .img 镜像文件。
4. (可选)使用 qemu-img 调整镜像大小,确保有足够的存储空间:
qemu-img resize -f raw openwrt-23.05.3-x86-64-generic-ext4-combined-efi.img 2G
创建虚拟机
1. 在 PVE 管理界面点击“创建虚拟机”,设置名称。
2. 操作系统介质选择“无”,不要挂载任何安装介质。
3. 在“磁盘”选项卡中点击删除按钮,移除默认创建的磁盘,因为稍后会导入 OpenWrt 镜像。
4. 根据需要配置 CPU 和内存,一般 1 核 CPU 和 512 MB 内存即可满足基本需求。
导入并挂载 OpenWrt 镜像
1. 将解压后的 .img 文件上传到存储(例如 local‑lvm)。在 PVE 的 shell 中执行以下命令,将镜像导入为虚拟磁盘并关联到新建虚拟机的 VMID(示例中 VMID 为 106):
qm importdisk 106 /var/lib/vz/template/iso/openwrt-23.05.3-x86-64-generic-ext4-combined-efi.img local-lvm
此命令会创建一个未使用的磁盘。
2. 在虚拟机的硬件列表中选择“未使用的磁盘”,点击“编辑”,将总线/设备改为 SATA,并点击“添加”。
3. 在“选项”中调整启动顺序,把添加的 sata0 磁盘设置为第一启动项。
配置网络
1. 启动虚拟机,通过 console 进入 OpenWrt 系统。首次启动无需安装过程,系统会自动启动。
2. 修改网络配置以便通过局域网访问。编辑 /etc/config/network 文件,将 LAN 接口配置为静态 IP,并设置网关、子网掩码和 DNS,例如:
vi /etc/config/network
config interface 'lan'
option device 'br-lan'
option proto 'static'
option ipaddr '192.168.2.9'
option gateway '192.168.2.1'
option netmask '255.255.255.0'
option ip6assign '60'
list dns '223.5.5.5'
如果您的网络段不同,请根据实际环境调整 ipaddr 和 gateway 地址。
3. 保存后执行 /etc/init.d/network restart 重启网络服务。
4. 通过浏览器访问分配的 IP 地址(例如 http://192.168.2.9),使用默认用户名 root、无密码登录。
结束语
通过上述步骤,您可以在 Proxmox VE 中快速部署一个基于 OpenWrt 的虚拟路由器。该方法无需传统安装过程,只需导入官方镜像并适当配置网络,即可享受 OpenWrt 带来的强大功能与灵活性。