我的家里还有一台闲置的台式机,于是我打算将其改造为一台服务器。
网络
首先要获取一个公共可访问的 IP 地址,这里使用 IPv6(IPv4 要额外买,家庭宽带就附带了公开的 IPv6 地址)。根据需求,修改家庭网络结构。
我家里的 2 个路由器都不支持 IPv6,也不能刷成 openwrt。为了使用 IPv6,就只能把下游的 2 个路由器改为桥接模式,光猫使用路由模式。2 个路由器实际上变成了 AP。
如果希望更高的可定制度,或者有其它需求(如 openclash),可以将光猫改为桥接模式,由路由器接管网络。如果要修改光猫为桥接,需要打客服电话,要网关的超级管理员账号和密码(客服可能不知道,会给你宽带师傅的联系方式)。
ipv6 prefix delegation 与 DDNS
光猫的 IPv6 的获取方式是 prefix delegation,过一段时间可能会发生变化,类似于 DHCP。为了解决地址变化的访问问题,需要使用 DDNS。
我原先使用的 DNS 服务商是 namecheap,它们居然不提供 IPv6 的 DDNS 服务!之后我使用了 Duck DNS(免费的DDNS) 作为替代。
主机改造
家里的这台老主机是 2018 年,我中考结束后买的。配置如下。
CPU | RAM | GPU | 存储 | 操作系统 |
---|---|---|---|---|
i5-7500 | 8GB | 1050TI | 机械500GB(主板支持6*SATA) | win10 |
考虑到家人可能还会使用这台机器,就不修改操作系统了。软件安装就不赘述了,和云平台的基本一致。
Github Action
GitHub Actions 提供的官方 Runner 不支持 IPv6,只支持 IPv4。我的个人主页 blog 网页是使用 Github Action 部署的,现在新加了家庭服务器(仅 IPv6),因此需要修改 blog 的部署流程。经过搜索,发现可以使用 fscarmen/warp-on-actions
,套一层 Cloudflare Wrap(免费的 VPN),利用 Cloudflare 的 IPv6。
当然也可以使用自己的服务器作为 runner,但是我没有选择这么做。