1280 字
6 分钟
我的 Homelab 架构更新:万兆内网 / 对外服务优化 / 硬件升级 / 弱电线路改造

从上次记录我的Homelab架构已超过了半年,本篇具体讲软硬件更新与遇到的问题。

硬件与基础设施#

升级万兆内网和配置全屋WIFI#

我的服务器和入网设备均放置于地下室,使用一根室内光纤(运营商入网常见)和一根超六类(CAT 6A)屏蔽网线从地下室拉回家里,这两根线均插入希力威视SR-ST3408F万兆交换机。

在家里安装了10G全光交换机TP-LINK ST1008F绿联75291千兆PoE电交换机,分别插入上来的光纤与网线

光链路设备选择#

在家中五个位置预留了同样的光纤到弱电箱。光模块选择了7对HUAWEI LTF2305-BH+ 10G-1270TX/1330RX-10km-SM-eSFP-BBUHUAWEI LTF3205-BH+ 10G-1330TX/1270RX-10km-SM-eSFP-RRULC单模单芯BIDI模块 此处只有商家图片不宜展示

交换机为上述的TP-LINK ST1008F,非网管

网卡选择了希力威视SR-PT01-82599-F,使用Intel 82599芯片

全屋WIFI设备选择#

五个位置也同时预留了相同的超六类网线。选择了PoE交换机(上述)+AP方案,AP选择TP-LINK TL-7AP5102HI-PoE 薄款(方)易展版 ,配置了相同的SSID与密码并开启802.11r

频段调整:

位置2.4G5G
阳台136
主卧6149
次卧1152(DFS)
客厅1157
书房644

但这款AP的FAT模式仅支持802.11r,并没有802.11k802.11v,效果并不是很优秀,没有选择AC+AP的原因是购买的TP-LINK TL-R5009PE-AC不支持交换机模式,即使用上级路由DHCP。

更换Proxmox VE 主机硬件#

原本使用浪潮SA5212M4机架式服务器,但碍于两台同时工作的噪音和地下室温度,我将其更换为家用硬件和塔式机箱,当时服务重心在另一台戴尔R730XD上,我希望先转移大部分服务,最后将另一台也替换为家用硬件。

硬件列表#

CPU: AMD Ryzen Threadripper 3970X

RAM: KINGBANK DDR4 3200 32G x2

GPU: NVIDIA GeForce RTX 3080 LHR

Disk: GreatWall GW3500 1TB & GreatWall GW600 1TB

配置网卡#

在更换硬件后由于网卡名称更换,需要重新配置

我的主板有两块板载网卡,需要先找到插入网线的网卡名称:

Terminal window
# 查看所有网卡
ip link

找到类似enp…或者eth…的物理网卡,我这里有enp68s0enp70s0,下一步检查是否有网络接入:

Terminal window
# 使用ethtool检测
ethtool enp68s0
ethtool enp70s0

Link detected: yes表示有网络接入,下一步修改/etc/network/interfaces

Terminal window
# 编辑配置文件
nano /etc/network/interfaces

默认是vmbr0桥接物理网卡的,在vmbr0下更改bridge-ports为刚才有链路的网卡名称enp70s0,同样在上面修改iface enp70s0 inet manual

修复Intel 82599网卡问题#

更换光网卡后光模块一直是无发光仅收光的状态,先使用命令重启临时使用:

Terminal window
ip link set enp33s0 down && sleep 2 && ip link set enp33s0 up

然后允许网卡支持非Intel认证的模块:

Terminal window
echo "options ixgbe allow_unsupported_sfp=1" > /etc/modprobe.d/ixgbe.conf
update-initramfs -u

软件服务与网络优化#

在以前ESXi中有一台被排除代理的虚拟机,运行大部分的服务,我将这些服务迁移到了单独的LXC上。另外我以前的内网穿透方案是cloudflare tunnel,看到这篇文章Netlify、Vercel反代网站后我更改了部分服务的穿透方案。 我会展示部分服务更改回源方案和迁移的过程。

Umami迁移#

我使用Docker安装并使用PostgreSQL,先进入到PostgreSQL容器备份数据库并拷贝:

Terminal window
# umami-db为容器名
docker exec -t umami-db pg_dump -U umami umami > umami_backup.sql
# 拷贝到另一个服务器
scp umami_backup.sql user@new-server:/path

复制compose文件到新服务器:

Terminal window
# 编辑compose文件
nano docker-compose.yml
# 启动容器以初始化数据库
docker compose up -d
# 删除已有的表
docker exec -it umami-db psql -U umami -d umami -c "DROP SCHEMA public CASCADE; CREATE SCHEMA public;"
# 关闭Umami容器防止读写数据库
docker compose stop umami
# 导入备份的sql文件
docker exec -i umami-db psql -U umami -d umami < umami_backup.sql
# 重启Umami
docker compose start umami

使用lucky配置IPv6 DDNS与Acme申请证书并配置反向代理#

安装可参考官方文档,这里会使用lucky配置DDNS、Acme申请证书和反向代理,最后达成回源部分也保持https加密

配置DDNS#

在WebUI左侧选择动态域名-添加任务,选择对应的DNS托管商,开启{ipv6Addr},选择通过网卡获取,添加同步记录,写入你的域名:

配置Acme#

左侧选择SSL/TLS证书,选择添加证书,添加方式选择ACME,选择你的DNS托管商,其他按照提示填写即可:

配置反向代理#

左侧选择Web服务,添加Web服务规则,自定义端口,开启TLS(域名会自动匹配刚才的TLS证书),添加子规则,服务类型选择反向代理,前端地址填写对应域名(无需端口),后端地址填写内网Web服务的IP+端口,其余保持默认:

配置Netlify回源#

参考上述文章Netlify、Vercel反代网站,注意将url改为https(上面开启了TLS)

我的 Homelab 架构更新:万兆内网 / 对外服务优化 / 硬件升级 / 弱电线路改造
https://www.xie.today/posts/homelab-2/
作者
RATING3PRO
发布于
2026-05-29
许可协议
CC BY-NC-SA 4.0

评论