PVE(Proxmox)创建OpenWrt虚拟机,直通并驱动AX211(CNVI)实现AP和Station模式

前言

在现代网络环境中,无线连接的需求日益增加。OpenWrt作为一个高性能、易于定制的嵌入式操作系统,广泛应用于路由器和其他网络设备。本文将详细介绍如何在Proxmox VE (PVE)上创建OpenWrt虚拟机,并配置Intel AX211 (CNVI)无线网卡,实现接入点(AP)和客户端(Station)模式。

准备工作

1. 硬件准备

  • 一台支持虚拟化的服务器或电脑,已安装Proxmox VE。
  • 一块Intel AX211无线网卡。

2. 软件准备

  • OpenWrt固件镜像文件。官网在线构建,搜索x86,在已安装的软件包内添加kmod-iwlwifi hostapd-common iw iwinfo wireless-tools iwlwifi-firmware-ax210,构建大概5分钟左右,然后下载COMBINED (EXT4)类型固件
  • Proxmox VE。

步骤一:在PVE上创建OpenWrt虚拟机

1. 上传OpenWrt镜像

首先,将下载的OpenWrt固件镜像解压出来得到img扩展的文件,在PVE后台上传即可。

2. 创建虚拟机

登录PVE Web管理界面,按照以下步骤创建新的虚拟机:

  1. 点击顶部的"Create VM"按钮。
  2. 在“General”标签页,填写虚拟机ID和名称。
  3. 在“OS”标签页,不使用任何介质。
  4. 在“System”标签页,保持默认设置。
  5. 在“Hard Disk”标签页,点击左上角删除硬盘。
  6. 在“CPU”标签页,分配合适的CPU资源,通常1~2核,CPU类型选host
  7. 在“Memory”标签页,分配合适的内存资源。
  8. 在“Network”标签页,添加网络接口,选择合适的网络桥接。这里先添加本地一个桥接口作为lan口

点击“Finish”完成虚拟机创建。

3. 启动虚拟机

选择刚创建的虚拟机,点击硬件,添加PCI设备,把AX211选上

如何确定无线网卡的编号呢,在pve节点shell执行如下命令

lspci | grep Wi-Fi

删除CD-ROM等用不到的硬件

在pve节点shell执行如下命令转换固件为启动硬盘,假设创建的VMID为205,固件名为openwrt-23.05.3-04298107b2fa-x86-64-generic-ext4-combined.img

qm importdisk 205 /var/lib/vz/template/iso/openwrt-23.05.3-04298107b2fa-x86-64-generic-ext4-combined.img local-lvm

返回虚拟机硬件,双击添加未使用的硬盘

在选项里面设置好启动顺序,然后点击“Start”按钮启动虚拟机。然后,打开虚拟机的控制台,进行OpenWrt的初步配置。

步骤二:配置OpenWrt虚拟机

1. 登录OpenWrt

第一次启动在控制台可以看到iwlwifi的报错信息

[ 32.633806] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-so-a0-gf-a0-40.ucode failed with error -2
[ 32.633812] iwlwifi 0000:00:14.3: firmware: failed to load iwlwifi-so-a0-gf-a0-39.ucode (-2)
[ 32.634261] iwlwifi 0000:00:14.3: firmware: failed to load iwlwifi-so-a0-gf-a0-39.ucode (-2)
[ 32.634708] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-so-a0-gf-a0-39.ucode failed with error -2
[ 32.634709] iwlwifi 0000:00:14.3: minimum version required: iwlwifi-so-a0-gf-a0-39
[ 32.635165] iwlwifi 0000:00:14.3: maximum version supported: iwlwifi-so-a0-gf-a0-72

记住这个前缀 iwlwifi-so-a0-gf-a0

此时先不管,输入passwd命令设置好密码,将电脑连接桥接的物理网口,电脑设置为192.168.1.X地址段,浏览器此时可以访问192.168.1.1

2. 安装驱动

访问 Intel驱动官网,选择最新的驱动包下载到本地

解压,将所有前缀为 iwlwifi-so-a0-gf-a0 的文件复制到 openwrt 的 /lib/firmware 目录下,可以使用winscp 操作,通常只需要一个ucode文件,但是保险起见,全部复制

最后在控制台执行如下命令,等待重启完在web上就能看到wireless选项了

modprobe -r iwlwifi && reboot

步骤三:配置AX211无线网卡

1. 检查无线网卡

确认系统识别到了AX211无线网卡:

2. 配置无线接口

这个简单了就不说了

步骤四:验证配置

1. 检查AP模式

使用其他设备连接到OpenWrt-AP网络,确保可以成功连接并访问网络。

2. 检查Station模式

确认OpenWrt虚拟机能够连接到上级WiFi网络,并获取到IP地址:

总结

通过以上步骤,我们在PVE上成功创建了OpenWrt虚拟机,并配置了Intel AX211无线网卡,分别实现了AP和Station模式。这种配置不仅可以满足家庭网络需求,还可以应用于更复杂的企业级网络环境。希望本文对您在网络设备虚拟化和无线网络配置方面有所帮助。

  • 39
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
img2kvm是一个在PVE下将OW固件添加到VM的工具,可以方便地将固件文件(包括gz方式的压缩格式)快速添加到OW虚拟机中,从而简化让人工操作的麻烦。 若是你的PVE主机能访问Internet,可以直接下载到目录“/usr/bin”或“/usr/local/bin”下,下面是将img2kvm下载到目录“/usr/local/bin”以及增加其可执行权限的命令: wget -P /usr/local/bin http://dl.everun.top/softwares/utilities/img2kvm/img2kvm chmod +x /usr/local/bin/img2kvm 若是PVE主机不能直接访问Internet,可以先下载到电脑中,然后上传到指定的目录“/usr/bin”或“/usr/local/bin”下,然后再通过chmod命令增加可执行权限。 这样完成后,就可以直接使用img2kvm命令了。 img2kvm详细的帮助信息可以通过命令“img2kvm -h”直接获取,旧版本img2kvm帮助信息的主要内容如下: A utility that convert OpenWrt firmware to disk image for KVM guest in Proxmox VE. Copyright (C) 2017-2018 everun.top usage: img2kvm [storage] -h or --help display this help. -V or --version output img2kvm version informaton. Command parameters: img_name the name of OpenWrt image file, e.g. 'openwrt-x86-kvm64-combined-ext4.img'. vm_id the ID of VM for OpenWrt guest, e.g. '200'. vmdisk_name the name of disk for OpenWrt guest, e.g. 'vm-200-disk-1'. storage Storage pool of Proxmox VE, default is 'local-lvm'. 其中,-h可以获得所有的帮助信息,-V可以获得版本信息。 所用的命令格式为: img2kvm [storage] 其具体参数说明如下: img_name:是OW固件的文件名称。一般为“xxx.img”或“xxx.img.gz”的格式。img2kvm可以直接识别并转换“img.gz”压缩格式的固件文件,对于“xxx.img.gz”来说,只需要输入“xxx.img”作为名称即可,不需要再另外加“.gz”。 vm_id:是创建好的OW虚拟机的ID。一般为一组非零开头的数字,如200。 vmdisk_name:是OW虚拟机要使用的磁盘名称。建议采用vm--disk-的命名方式,如vm-200-disk-1。 storage:是指导入使用的存储池的ID,默认为“local-lvm”,这是安装PVE时自动创建的。此项为可选项,若不指定则使用默认值。 v0.1.8版之后的img2kvm对所需的选项参数进行了简化,取消了参数“”,简化后的命令格式如下: img2kvm [storage] 即img2kvm命令后面仅需要加加两个参数:固件的文件名称和需要添加磁盘的虚拟机ID。 其中,固件的文件可以是img的映像格式,也可以是.gz的压缩格式。 例如,将文件名为“openwrt-x86-kvm64-combined-squashfs.img.gz”的固件导入到ID为“123”的VM中的命令为: img2kvm openwrt-x86-kvm64-combined-squashfs.img.gz 123 这里使用了默认的存储池local,故可以省略。 * 增补信息: 当前img2kvm最新的版本为v0.1.10。 最后更新于2019年3月20日。 特注:本下载已获得原作者授权。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值