网络环境比较复杂,拓扑如下
1.png

有一点需要说明,ESXI Manager和iLO原本打算放WAN口然而没有出口交换机做一层转换会和软路由冲突,只能把WAN接到软路由上然后这俩放路由器网段,不放在OpenWRT网段是因为经过测试这两似乎都是先于虚拟机启动,如果依赖DHCP重试不稳定性太强了可能获取不到IP进而无法访问,不过这样也好避免暴露外网……

学校有一个好,免费上下行对等千兆网,静态IP,阿里云拉满也不过200M,1W+一个月。。。不过考虑到以后毕业服务器会搬家里,NAT内网穿透用作备份吧,为此专门注册一个分站备案,尽量减少VPS的奇怪流量以免和谐。

OpenWRT

参考这里,不过我WAN口和ESXI Manage口是分离的,所以新建了单独的WAN和LAN交换机,其他的问题不大。

插件装了openconnect, v2ray, smartdns和frpc,照教程搞就行。

IPV6 DNS如果不想配可以考虑禁止否则windows下找不到主机

如果采用dnsmasq转发smartdns,内网域名解析需要关闭 [DHCP and DNS]-[Rebind protection]

NAS

群辉直接不考虑,翻了翻CVE,RCE一把我这要用估计没几天就被朋友日了,加上功能没有啥刚需都有开源项目可以替代,所以还是用我熟悉的Debian自己搞一套吧,等闲下来可以自己写一套管理系统,在此之前还是敲命令来的安心。

技术详情:

  • 文件系统:zfs,no raid
  • 网盘程序:nextcloud
  • 文件共享:samba, nfs

zfs

读文档:https://wiki.debian.org/ZFS

记得先加deb源

deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-backports main contrib

nextcloud/samba/nfs

读文档:

Debian下NFS有好用的包 sudo apt install nfs-kernel-server

Service - LinuxGSM

游戏服务器

csgo

读文档:https://linuxgsm.com/lgsm/csgoserver/

注意两点,因为我加了get5 mod作为比赛服,务必记得在 /lgsm/config-lgsm/csgoserver 中加上

gametype="0"
gamemode="1"

启用竞技模式

如果需要自定义地图参考:https://github.com/GameServerManagers/LinuxGSM/issues/684
注意里面的参数是过时的,要用这三个

wsapikey=""
wscollectionid=""
wsstartmap=""

这里可以添加管理员:https://wiki.alliedmods.net/Managing_your_sourcemod_installation#Adding_yourself_as_an_admin

Service - 各式服务

除了LNMP和LinuxGSM,其他各种服务基本可以扔docker里了,这里有一堆好玩的: