【软路由】安装PVE8和Openwrt并直通PCIE设备将网口直通给Openwrt

注意: 本文最后更新于 102 天前,内容可能已不再准确,请酌情参考。

【软路由】安装PVE8和Openwrt并直通PCIE设备将网口直通给Openwrt

前言

既然我们写了esxi的教程,那自然不能漏了PVE的教程,网上很多大佬的教程都不错,本人也才开始正式用pve边搭建边写教程,如果有写的不对的地方欢迎大佬指正。

PVE创建准备

  1. 准备一个至少8G的USB(后续操作会格式U盘所以请确认是否有重要数据)
  2. 自己的PC电脑上准备好Rufus
  3. 准备好SSH工具,当然也可以用PVE自带的。我习惯使用Finalshell
  4. 下载pve镜像,本教程使用的是pve8.2.2镜像
  5. 本教程使用的软路由设备是:研凌N3161 I7-1265U第12代Core
  6. 设备配置为:酷兽3200MHz32GX2 梵想S500PRO1TB朗科SSD固态硬盘1TB
  7. 本次演示我们讲PVE设置为192.168.20.3,然后直通除PVE管理网口以外的所有网口给Openwrt,并将OpenwrtIP设置为192.168.20.1

PVE镜像下载

如果你不知道哪里下载,那我们就去官方下载地址下。用迅雷挺快的,用idm个人体验不是很快。官方下载地址:https://enterprise.proxmox.com/iso/ ,一般选择最新的就行了。

20240708212823520848

PVE引导镜像

  1. 我们插入U盘到电脑上,打开下载好的Rufus引导类型选择,点击右边的选择,找到我们下载好的pve镜像。点击开始
    20240708212818489109
  2. 完成后关闭即可,然后U盘弹出,如果有任何其他弹窗,关闭就行
    20240708212907577990

安装PVE

  1. 我们首先把软路由或者小主机连接上键盘鼠标,HDMI线连接显示器,如果你是笔记本,可能你需要准备一根HDMI采集卡利用obs来采集画面了,背后的网口我们拿eth0用网线接入电脑
  2. 通电,通电后我们一直按键盘的F2,选择你的U盘作为启动项,(因为我的设备原因,图就没有了。)接着就会出现PVE的页面。我们选择第一个
    20240708213334798605
  3. 会出现跑码进度,让他跑完
    20240708213359901572
  4. 跑完后就出现协议,鼠标点击右下角继续
    20240708213449934947
  5. 这里就会出现下图所示,红框内就是选择安装的,看你需求,自行选择。完毕后继续鼠标点击右下角
    20240708213546815761
  6. 接着会让你选择国家键盘等,我们在Country这里输入C,就会出现列表,找到China就是咱们中国,然后会自动选择上海的时区,其他不管,继续右下角。
    20240708213814975392
    20240708213819907748
    20240708213834737451
  7. 然后会让你输入你的pve管理密码。这里输入后下一个框还需要再次输入确认一遍,最下面就是邮箱,填写你的邮箱。
    20240708213942147715
  8. 会让你设置网关和PVE管理地址,基于我们前面一开始的准备,所以我们需要把PVE的管理地址设置为:192.168.20.3,网关则设置为Openwrt的IP地址。记得把Hostname(FQDN)更改为pve.lan(如果你根据流程来,那你可以跟我图内一样。)
    20240708214317735133
  9. 完事后会让我们确认信息。继续我们会开始安装PVE
    20240708214503324321
    20240708214524300586
  10. 注意:跑完进度只有短暂几秒钟时间让你拔掉U盘,不然就会重复一开始要重新填写参数等操作。所以请务必准备好,一旦出现下面的界面,要迅速去拔掉U盘。他会倒计时后自动重启,这样就正式安装到你指定的磁盘内。完成后,就会显示IP地址(就是你设置的PVE管理地址,端口号都是8006
    20240708214705790251
    20240708214718916286

登录PVE并直通PCIe设备

  1. 首先我们打开我们电脑的控制面板-网络和Internet-网络和共享中心,找到以太网。打开,点击弹窗出来的属性,选择Internet协议版本4,选择使用下面的IP地址。输入ip(IP段要跟你设置的PVE一致,如果你设置的PVEIP是192.168.1.1那你这里就需要保持192.168.1.x,这里的X可以自定义,但是前面要一致),子网掩码默认,默认网关就是你前面给PVE设置的网关。
    20240708215111214929
  2. 完事后我们确认,在浏览器输入PVE的IP和端口,记得带上https://否则不行噢,一般会出现不安全的提示,点击高级,继续即可
    https://ip:8006
20240708215521646787
  1. 因为各个版本的不同,可能界面有所不同,进入后我们输入PVE设置的密码。语言选择中文
    20240708215704908024
  2. 无效订阅提示,关闭即可
    20240708215956430840
  3. 我们用SSH工具连接PVE,这里使用的是FinalShell,当然你也可以用PVE自带的SSH工具
    20240708220102853024
  4. 连接完毕后,我们依次输入下面的命令(注意是依次!不是全部):
    • 开启核显SR-IOV 直通Pcie设备:
      sed -i '/^GRUB_CMDLINE_LINUX_DEFAULT/c\GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream i915.enable_guc=3 i915.max_vfs=7"' /etc/default/grub
      echo -e "vfio\nvfio_iommu_type1\nvfio_pci\nvfio_virqfd" | tee -a /etc/modules
      update-grub
      update-initramfs -u -k all
      reboot
    • 不开启核显SR-IOV 直通Pcie设备:
      sed -i '/^GRUB_CMDLINE_LINUX_DEFAULT/c\GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream"' /etc/default/grub
      echo -e "vfio\nvfio_iommu_type1\nvfio_pci\nvfio_virqfd" | tee -a /etc/modules
      update-grub
      update-initramfs -u -k all
      reboot
20240708220326657279
  1. 输入后我们会重启PVE,等他重启后,点击右下角的⚡标志,重新连接。输入下面命令查看成功与否
    lspci
20240708220459357713

安装Openwrt并直通网卡

  1. 我们点击PVE页面的PVE展开,点击local(pve),选择ISO镜像,点击上传
    20240708220631916249
  2. 选择你下载的img结尾的Openwrt镜像并上传
    20240708220704662661
  3. 上传后我们会得到一个地址,下图所示红框内复制出来记录下来。
    20240708220737685350
  4. 我们创建虚拟机,点击右上角的创建虚拟机,弹窗出来的常规选项,节点默认VM ID这里也默认名称自定义。下面有一个开机自启动,打勾下一步。
    20240708220929238517
  5. 操作系统这里选择不使用任何介质
    20240708221014254882
  6. 系统和磁盘这里默认下一步
    20240708221028136468
    20240708221040893520
  7. CPU这里我们根据你设备性能分配。因为我只是拿来拨号和特殊上网等操作,所以不需要太大的CPU和内存使用,所以我只分了2核心足以。别我们选择host,下一步
    20240708221214732000
  8. 内存这里我用处不大,给了1024MB=1G足够
    20240708221248957906
  9. 网络这里我们模型选择Intel E1000,下一步
    20240708221335863202
  10. 最后确认,完成即可
    20240708221353574970
  11. 我们还不急着开机,因为还没配置完毕,我们选择Openwrt虚拟机,点击硬件,找到CD/DVD驱动器,选择,上面选择移除
    20240708221513387598
    20240708221521903762
  12. 还是硬件,找到硬盘,选择点击上面的分离。分离后会多出一个未使用的磁盘0,选择,上面的移除即可
    20240708221553439026
    20240708221620188329
  13. 我们选择硬件上面的添加PCI设备,出现弹框,点击原始设备,设备这里选择往下拉,找到除了第一个网卡,依次选择,勾选所有功能。添加。然后重复此步骤,把除了第一个网卡剩下的所有都直通分配给Openwrt.
    20240708221708740394
    20240708221715448679
    20240708221857961211
    20240708221904926188
  14. 以上操作完毕后,我们去ssh终端,输入下面命令,注意:这里的100就是前面创建Openwrt的VM ID,如果你是其他的自行替换,后面的/var/lib/vz/template/iso/xxxxx,这串就是让你前面上传镜像后红框内地址,自行替换噢!!最后面加上空格,注意是空格local-lvm
    qm disk import 100 /var/lib/vz/template/iso/xxxxx local-lvm
20240708222228016062
  1. 回车后会跑进度,等完毕后会有如下图提示,我们可以找到PVE页面的Openwrt硬件选择,是否多出一个未使用的磁盘,且同名的信息。
    20240708222328086616
  2. 我们双击这个磁盘,把总线/设备,这个选择改成sata,添加就行
    20240708222445065155
  3. 再接着我们去Openwrt点击选项,找到引导顺序,选择后点击上面的编辑取消第一个选项,找到刚改的sata,打勾,OK
    20240708222536174664
    20240708222612362591
  4. 接着我们点击右上角的启动,这样就启动了Openwrt,再点击控制台。进入SSH页面
    20240708222708422985
    20240708222719372478

配置OpenWrt

  1. 出现跑码,等结束大概页面就如下图,各个固件有些差距,不过大致一样。然后我们输入代码进入编辑network文件
    vi etc/config/network
    20240624151232463201
  2. 进入后你会看到大致如图所示的页面,你找到config interface'lan'这段,然后找到这段里面的option ipaddr,把里面默认的可能是10.10.10.10也可能是其他的,根据固件不同,可能默认也不同,更改成你pve设定的网关!如果你一直连续看教程,那当初你设定pve的时候设置的网关是192.168.20.1,所以此处就设置成192.168.20.1。怎么设置呢?我们按键盘的i键,进入编辑模式,用键盘的上下左右,让光标移到IP那段,正常删除重新填写即可。填写完毕后,记得按键盘的ESC,然后输入:wq,回车
    20240624150042287044
  3. 上述操作完毕后,我们在一开始的界面,输入reboot,意思就是重启Openwrt,到此Openwrt,安装完毕了。
    20240624152146808150

OpenWrt拨号或者旁路由

  1. 我们已经成功安装完毕OpenWrt,然后我们输入刚才设置的IP进入OpenWrt管理页面,输入您的帐号和密码,帐号默认root,密码也默认是root。
  2. 进入后一开始应该是让你选择你需要的联网模式,选择您对应的。拨号就协议那里选择pppoe即可,然后输入你的宽带帐号和密码。注意网线要连接光猫。
    20240708223404643830
  3. 上述完毕后我们就去设置一下密码,点击系统管理权,设置一个路由密码,就是Openwrt的登录密码。建议别用默认的。不安全
  4. 接着我们去配置网口,我们进入首页,找到网络接口状态,找到网口配置,然后进入,如果你是跟我一样的多网口,那你就查看wan口是否是亮的,一般来说你的eth0设置的是PVE管理口,那你其他的就可以拿一个来当wan口来连接光猫进行拨号,或者连接路由器,当旁路由。除此之外的两个口全在lan口那一栏打勾,相当于都充当lan口,这样直接插到剩下的网口,都是可以当lan口并且有网络!
    20240708223458211430
    20240708223509928788
  5. 然后我们点击网络-接口-设备-br-lan右边的配置
    20240708223600382425
  6. 常规设备选项网桥端口除了wan口其他eht2,eth3...等都打勾并保存,保存并应用
    20240708223611112279
  7. 我们就可以在接口处看到已经网桥了除wan口以外的所有lan口
    20240708223757594491
  8. 我们再去系统软件包里更新一下软件包,到时候就可以搭配Openwrt第三方的插件来玩Openwrt,例如魔法上网,例如Lucky,或者动态解析等。
    20240708223822735620
阅读剩余
THE END