软路由日记(一)

警告
本文最后更新于 2023-02-03,文中内容可能已过时。

在学校疫情期间买了一个 j4125 的软路由,一直等到回家过了很久才到手,因为买的是裸机,还有些配件是在别的店买的,回家以后发现地址只能在区以内修改,只能取消订单重新下了单。

最后的配件列表如下:

  • DDR4 8G * 2
  • 128G msata * 1
  • 金士顿 480G sata * 1 (送的有sata的电源线和数据线,要注意下电源线用那种带拐角的,不然不好插上去)
  • DV 12V5A 电源 5.5mm

原来咸鱼上买了假三星内存条回来插上发现不能用,所以把笔记本上的两根 8G 换下来了,然后又觉得电脑单根有点卡,所以又下了一单,哈哈哈现在电脑上是假三星 32G。电源是发货最慢的,我把家里路由器机顶盒的电源找了个遍,发现都插不上去,重要的是同样是圆口的插孔,还分好多不一样的尺寸,这个是最大的 5.5mm 的,最后出去找了一家买监控的店,在压箱货里面找到了一个非常非常塑料感的电源,卖了我 30 块,我现在还记得我进去的时候老板正在玩魔兽骑着坐骑跑路。

再安利两个视频,我前期了解主要通过这两个 up 的视频学习的。

保姆级J4125英特尔2.5G安装PVE+Ikuai+Openwrt

用U盘直接给J4125软路由安装OpenWrt固件,超简单小白也看得懂

需要准备:

  • U盘一个。制作引导盘,安装完成以后可以恢复
  • 键盘。安装向导需要一些配置
  • 网线。安装完成以后可以访问 web页面配置

软件安装包:

插上U盘,打开 Restful 写入镜像文件,设备选择U盘盘符,引导类型选择镜像文件,然后右边选择下载好的 PVE 镜像文件,其他的配置默认即可。

确认以后会有一个弹窗选择 DD 镜像模式写入。用个网上找的图片

引导盘算制作好了。如果引导盘安装完成以后想要恢复成原来U盘,插上U盘,注意一下识别的盘符,引导类型选择为非可引导重新格式化一下即可,文件系统 FAT32 不能写入超过 2G 大小的文件,所以我一般选 NTFS。

因为安装的时候需要配置 PVE 网络的网关,既然用了软路由肯定是要用 OpenWrt、爱快这种路由系统装到虚拟机里,所以在安装之前先规划一下虚拟机的 IP 分配问题。以我安装的 OpenWrt 为例。

我打算把软路由作为旁路由使用,不会影响家里爸妈用网体验,自己只需要本地改一下 WIFI 的网关为软路由地址即可。因为我家的入户路由所在的 IP 段是 192.168.1.0/24 ,所以我选择一个其他的网段如 192.168.5.0/24,避免和主路由所在的网段搞混。选择 PVE 系统的 IP 为 192.168.5.2,OpenWrt 虚拟机的 IP 为 192.168.5.3,其他虚拟机顺延。所以在安装 PVE 系统的时候网关需要填为 OpenWrt 准备的虚拟机地址 192.168.5.3,PVE 地址也需要修改为对应的。

所以最后的结果就是:

PVE 主系统:192.168.5.2

OpenWrt:192.168.5.3

Xbantu:192.168.5.4

……

如果是直接作为主路由拨号使用,网关同样要填上 OpenWrt 的地址,因为要用 OpenWrt 拨号。

U盘插上软路由,注意一下启动界面提示的进入 BIOS 界面的按键,我的是 F7,如果不一样问客服或者搜一搜。选择U盘作为引导盘启动安装系统,找一下自己的U盘名称。

1675410562364.png

接下来进入PVE的安装界面。我已经装好系统了没图,可以看着上面推荐的视频里来,界面依次是:

  1. 选择默认的硬盘。
  2. 输入国家、时区、键盘语言。
  3. 设置管理员的密码、确认密码,设置邮箱。

这个邮箱我暂时还没有用到,可能 PVE 官方远程管理用得上,先填一个能使用的吧。

  1. 设置管理网卡口、域名、虚拟机 IP 段、网关、DNS。

网卡的选择是用于管理 PVE 虚拟机的网卡。比如我的软路由有四个物理网卡,我选择其中一个物理插上网线用来管理 PVE 及其虚拟机,其他三个物理网卡分配给其他虚拟机使用,通常是不可以直接访问 PVE 管理面板的。下拉列表有网卡真实的 MAC 地址,看最后两位一般是有顺序的,我也是大致对应软路由上的物理网口,应该是从小到大吧,我选择了第四个最后一个网口最为 PVE 的管理网口。

域名可能和 PVE 官方的远程管理有关。虚拟机 IP 段就是 PVE 管理的虚拟机可获得的 IP 范围。DNS 不多说了。

网关的设置,在虚拟机网段规划分配章节中有说明,填上。

  1. 确认填写信息

确认安装后稍等一段时间,PVE 会自动重启,系统选择 Proxmox VE GUN/Linux,之后会进入 PVE 系统的登陆页面。

1675733810414.png

登陆的用户名是 root,密码是刚刚安装时填写的密码。上面的信息是 PVE 的 Web 控制台地址,图中的地址可能和我的不一样,这个和前面设置的 IP 段有关。

安装完成以后,使用网线连接软路由,并配置自己电脑的有线网卡保证和软路由在同一个网段。比如我前面规划我的 IP 网段为 192.168.5.0/24,电脑随便填一个不会冲突的 IP,网关和 DNS 可以填为 OpenWrt 预留的地址。

1675733453093.png

之后可以直接访问安装成功时提示的 PVE Web 控制台地址和端口,即使没有证书也要使用 https 访问,浏览器高级选项中有继续访问。用户名是 root 密码就是安装时填写的。下面可以选择语言为简体中文。可能会有一个其他提示直接跳过即可。

1675734606058.png

为了方便一些虚拟机可以直通硬件设备,比如 NAS 直通硬盘,提高工作效率,所以需要对 PVE 设置并开启硬件直通。

前面步骤连上软路由,使用 Shell 连接 PVE 系统,以上面为例地址为 192.168.5.2,用户名密码同上面。虚拟的相关技术不太懂,本人也是跟着操作的。

偶然发现一篇文章讲了一些相关内容,内核大佬请看 [转]关于Linux grub配置iommu=pt intel_iommu=on

注意 Intel 和 AMD 的CPU 一些参数不一样,我使用的 J4125 是 Intel 的。修改的文件都是 /etc/default/grub ,需要修改的参数是 GRUB_CMDLINE_LINUX_DEFAULT,默认值应该是

text

GRUB_CMDLINE_LINUX_DEFAULT="quiet"

根据 CPU 不同需要修改成

  • Intel CPU

text

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt"
  • AMD CPU

text

GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt"

注意参数之间的空格,修改之后保存退出,执行指令 update-grub 更新一下引导程序,出现 done字样就算成功。

接下来增加一些模块,修改 /etc/modules文件,添加#号下面的几个模块。

text

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.

vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd

然后执行指令 update-initramfs -u -k all 对模块的升级。没有出现 Error 字样就算成功了,之后 reboot 重启一下。

这一篇就先写到 PVE 的安装和配置直通,下一篇打算写自己经历的固件的选择和安装。软路由老早就装好了,当时也没截图凭借一些其他的教程写了自己的经过,自己挖的坑一定要填上!