Promox VE(PVE) 如何联网及使用wifi

pve一个管理虚拟机和容器的平台,由于是开源免费的,被很多小伙伴用来搭建自己的"all in one"主机。我也看过很多相关文章和教程,看着大家玩的不亦乐乎,再看着自己半退役的笔记本,一颗爱折腾的心躁动不已,开搞!

pve有线联网

安装pve系统(用的版本7.3-1)过程还算顺利,和安装普通的windows,ubuntu大同小异(用的是ventoy制作的启动盘,强烈推荐)。顺利进入系统,发现没有网络,连上有线也不行,网上搜了下也没有类似的问题,还是得看pve官方文档。其中,网络配置(Network Configuration)章节有如下描述


官方的这种骚操作一时间让人不知道该怎么吐槽,好在接着给出了解决方案,修改

/etc/network/interfaces 文件

auto lo
iface lo inet loopback

auto eno0 # 改成自己的网卡名称,下同
iface eno0 inet static
        address 198.51.100.5/29 #改成自己的内网ip, 例: 192.168.31.140/24
        gateway 198.51.100.1 #改成自己的路由器网关,例: 192.168.31.1
        post-up echo 1 > /proc/sys/net/ipv4/ip_forward
        post-up echo 1 > /proc/sys/net/ipv4/conf/eno0/proxy_arp


auto vmbr0
iface vmbr0 inet static
        address  203.0.113.17/28
        bridge-ports none # 这里修改成none,不桥接
        bridge-stp off
        bridge-fd 0

修改保存后,直接简单粗暴reboot(如果想只是重启网络,官方推荐的是ifupdown2),成功连接上有线网,IP就是配置文件中设置的 192.168.31.140

pve无线联网

到这里,还没无线网什么事,不过有线网有了,搞wifi就方便多了。先查看下各网卡的情况


查询网卡信息

我的笔记本无线网卡是不需要装驱动的,所以列表中直接展示出了无线网卡名称,如果你的网卡列表中没有无线网卡的信息,说明pve系统发现不了你的无线网卡,应该是缺少驱动(我的台式机 微星MAG B660M MORTAR WIFI 主板自带的无线网卡就无法被发现,必须装驱动才可以)。

root@mypve:~# ifup wlp7s0                       //激活无线网卡

连接wifi需要wpa-psk格式的密钥,可以通过如下命令生成(如果找不到对应命令,就安装下wpasupplicant)

root@mypve:~# wpa_passphrase "wifi名称" "wifi密码"
//下面是输出信息
network={
        ssid="wifi名称"
        #psk="wifi密码"   //这句是注释掉的
        psk=2c************************76    //生成的psk
}

再次编辑配置文件

/etc/network/interfaces

auto lo
iface lo inet loopback

auto enp6s0 # 改成自己的网卡名称,下同
iface enp6s0 inet manual

#下面的无线网卡的配置一定要配置在虚拟网络 vmbr0的前面,否则,流量会先走vmbr0
auto wlp7s0 
iface wlp7s0 inet static
        wpa-ssid wifi名称    # 这里填wifi名称
        wpa-psk  psk    # 这里改成上一步生成的 psk
        address  192.168.31.252/24 # 改成自己的内网ip
        gateway  192.168.31.1 # 改成自己的路由器网关
        
auto vmbr0
iface vmbr0 inet static
        address  203.0.113.17/28
        bridge-ports none # 这里修改成none,不桥接
        bridge-stp off
        bridge-fd 0

修改保存,再次reboot,进入系统,就可以看到无线网卡也有IP,此时就可以拔掉有线网了

虚拟机通过NAT模式联网

接着用另一台在同一网段(和pve电脑连接的同一路由,IP是192.168.31.*)的电脑通过pve自带的后台管理UI连接到pve后台管理服务(https://192.168.31.252:8006),先安装一个ubuntu测试下网络连接是否正常

注意:必须是https协议的,不要直接输IP,敲回车,会默认http连接,导致连接失败

下载好以后,点击左上角的 “create CT” 按钮


创建完成后,通过UI控制台进入虚拟机ubuntu系统,此时是无法连接网络的,vmbr0网卡既没有桥接,也没有NAT,这是必然的,由于桥接方式一开始就行不通,这次我们需要把vmbr0配置成NAT方式,官网推荐配置如下


我们照葫芦画瓢,把pve系统的(注意不是Ubuntu虚拟的)网络配置文件

/etc/network/interfaces

修改成下面这样

auto lo
iface lo inet loopback

auto enp6s0          # 有线网卡没有网线,可以不用管了                                                                                                                                          ifup on the     
iface enp6s0 inet dhcp

auto wlp7s0
iface wlp7s0 inet static
        wpa-ssid wifi名称 # wifi名称
        wpa-psk  psk # 之前生成的psk
        address 192.168.31.252/24
        gateway 192.168.31.1

auto vmbr0
iface vmbr0 inet static
        address 10.10.10.1/24
        bridge-ports none
        bridge-stp off
        bridge-fd 0
        post-up echo 1 > /proc/sys/net/ipv4/ip_forward
		   # 下面两句记得把网卡名称wlp7s0改成自己的
        post-up iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o wlp7s0 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '10.10.10.0/24' -o wlp7s0 -j MASQUERADE

修改保存成功后,直接reboot

通过端口转发直连虚拟机

ubuntu虚拟机可以上网后,又发现一个问题,与pve电脑同一网段的电脑无法直连。这真是一个大问题,看了官方文档也没找到这块,只能网上找大神了。这里要再次感谢B站“嘉哥_来了”几个通宵的研究,帮我解决了直接虚拟机的问题。废话不多说,接着搞!

整体思路就是通过网卡端口转发的方式直连虚拟机,首先在pve系统(注意不是Ubuntu虚拟机)创建一个新文件,名字随便取

/root/iptablesNat.sh

#!/usr/bin/env bash
# 这句话的作用就是通过网卡wlp7s0把通过12222端口访问的流量转到IP为10.10.10.3的22端口
# 这样我们通过 ssh -p 12222 root@192.168.31.252 连接时,就能连接到Ubuntu虚拟机了
# 注意修改成自己的网卡名
iptables -t nat -A PREROUTING -i wlp7s0 -p tcp --dport 12222 -j DNAT --to 10.10.10.3:22
# 想转发几个端口就写几个转发语句 192.168.31.252:6666 -> 10.10.10.3:178
iptables -t nat -A PREROUTING -i wlp7s0 -p tcp --dport 6666 -j DNAT --to 10.10.10.3:178

保存后,接着修改pve系统的配置文件

/etc/network/interfaces

auto lo
auto lo
iface lo inet loopback

auto enp6s0                                                                                                                                                ifup on the     
iface enp6s0 inet dhcp

auto wlp7s0
iface wlp7s0 inet static
        wpa-ssid wifi名称 # wifi名称
        wpa-psk  psk # 之前生成的psk
        address 192.168.31.252/24
        gateway 192.168.31.1

auto vmbr0
iface vmbr0 inet static
        address 10.10.10.1/24
        bridge-ports none
        bridge-stp off
        bridge-fd 0
        post-up echo 1 > /proc/sys/net/ipv4/ip_forward
        post-up bash /root/iptablesNat.sh  # 新增这句,文件就是上面新创建的文件,改成自己的
		   # 下面两句记得把网卡名称wlp7s0改成自己的
        post-up iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o wlp7s0 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '10.10.10.0/24' -o wlp7s0 -j MASQUERADE

修改保存后,直接reboot,就可以愉快的连接Ubuntu虚拟机了

参考资料:

【Proxmox VE Administration Guide】

https://pve.proxmox.com/pve-docs/pve-admin-guide.html

【Proxmox(pve)使用无线网卡WIFI6-AX210教程-哔哩哔哩】

https://b23.tv/K4Xqecx

展开阅读全文

页面更新:2024-05-05

标签:网段   端口   网卡   虚拟机   名称   发现   官方   系统   电脑   网络

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top