PVE 使用 WiFi

9,200 阅读2分钟

引子

家里的老笔记本废物利用一下,安装 PVE 这里记录下使用折腾 WiFi 的过程,虽然 WiFi 稳定性和速度都有点差,但是可以放在不起眼的角落里。

具体的 PVE 安装这里不在赘述,可以去官方下载 ISO 镜像,做成启动盘按照向导一步步安装即可,我比较推荐国内用户使用科大的镜像库,mirrors.ustc.edu.cn/proxmox/iso… 秒下。

方案

由于无线网卡受物理和协议限制,没有办法使用桥接,所以最终决定使用 NAT 方案。 或者我折腾的方式不对?总之 NAT 解决了我的问题,并且使用也相对方便,仅需要配置一下静态路由,如果配合 nebula 这样的工具,打洞远程访问也比较方便。

安装

参考官方 WLAN 文档

结合 debian 的 wlan 配置有多种工具可选,这里选择个人比较喜欢的一种

安装完 PVE 后需要先有线联网,安装下面的包,因为 ISO 安装默认没有无线管理的包。

apt install wpasupplicant iw wireless-tools

配置

vi /etc/wpa_supplicant/wpa_supplicant.conf

如果有多个 ssid,建议都配置,或者你可能把设备移动到不同的地方,这样就能自动连上了

ctrl_interface=/run/wpa_supplicant
update_config=1

network={
  ssid="wifi-1"
  psk="password"
  priority=5
}

network={
  ssid="wifi-2"
  psk="password"
  priority=4
}
 vi /etc/network/interfaces

如果你的机器有多个网卡,可能内容有点不同

auto lo
iface lo inet loopback

#iface enp0s25 inet manual

auto vmbr0
iface vmbr0 inet static
        # 和 wifi 不是一个网段,自定一个,这个地址是虚拟机的网关
	address 10.1.1.1/24
        bridge-ports none
        bridge-stp off
        bridge-fd 0

allow-hotplug wlp2s0
iface wlp2s0 inet dhcp
    wpa_conf /etc/wpa_supplicant/wpa_supplicant.conf

重载配置

wpa_cli -i wlp2s0 reconfigure

查看无线连接信息

iwconfig wlp3s0
iw dev wlp3s0 info

开启 ip 转发 /etc/sysctl.conf

net.ipv4.ip_forward = 1

设置 nftables vi /etc/nftables.conf

#!/usr/sbin/nft -f
flush ruleset
table ip nat {
  chain postrouting {
    type nat hook postrouting priority 0; policy accept; masquerade
  }
}
systemctl enable nftables.service
systemctl start nftables.service

使用

配置完上面后,就可以使用无线的地址访问 PVE 宿主机了,有线可以拔掉。

开 vm 的时候就选上面配置的 10.1.1.1/24 网段,由于没有 DHCP 服务,需要手工分配 IP。其他设备要想直接访问到 PVE 内部的虚拟机还需要做一个静态路由规则,在路由器上增加一条静态路由规则,将 10.1.1.1/24 网段的下一跳指向 PVE 宿主机即可。