先说说我为什么突然搞这么个东西,上个月家里宽带莫名其妙断了一天,我正开着几个爬虫脚本跑数据,结果回来一看全挂了,更气人的是,远程连公司内网的VPN也断了,第二天被老板点名说昨晚紧急处理线上问题找不到我,那一刻我脑子里闪过一个念头:我是不是该在自己家里放一台永远在线的机器?
说干就干,但问题来了:家门口电信给的公网IP是动态的,而且80端口早就被封了,租云服务器?配置稍微像样点的,一个月两百起步,还不算带宽超额的附加费,于是我开始研究一个听起来很“极客”的东西——住宅VPS,说白了,就是你把自己家里的宽带跑成一个能公网访问的服务器,用内网穿透或者SD-WAN技术把它挂出去,我一直觉得这玩意儿就是个噱头,直到我亲自搭完跑了一周测试。
先亮测试环境,我家是电信千兆入户,路由是小米AX9000,核心机是一台2019年攒的ITX小主机,配置是i5-9400F、16G内存、500G NVMe固态,系统装的是Ubuntu 22.04 LTS,穿透工具用的是frp,服务端搭在一台5美元每月的廉价海外VPS(搬瓦工,DC3机房)上,测试工具:iperf3打带宽,mtr看路由hops,curl配合自己写的小脚本测HTTP吞吐,对标的竞品是阿里云轻量应用服务器(2核2G,5M带宽)和腾讯云轻量(同配置),为什么选这两个?因为我实测过,这俩是国内云厂商里同价位最能打的。
在家搭了个微型机房后,我发现这玩意儿比云服务器香多了
延迟表现让我有点意外,住宅VPS因为走的是本地电信直连,基本没有虚拟化层带来的抖动,跑三次mtr取平均值,本地回环延迟0.2ms,从frp中转服务器到我家机的延迟是17ms——注意,中间跳了12个hops,但因为最后一跳是电信的内网穿透,实际体感还行,对比阿里云轻量,同样从北京拨测,阿里云延迟在28ms左右,差距不大,阿里云有一次测到了42ms,而住宅VPS的延迟极其稳定,最差也没超过21ms,这点上,家庭数据中心在稳定性上居然赢了。
带宽测试才算真正拉开差距,iperf3打上行,住宅VPS直接跑满了我家宽带上限:934Mbps,注意,这是真实吞吐,不是云服务商标注的“峰值带宽”,阿里云5Mbps的轻量服务器,实测上行稳定在4.7Mbps左右,差了快200倍,当然你可能要说公网访问受限于frp中转的带宽,我那个搬瓦工只有1Gbps共享,实际跑出来上行大概在80Mbps左右——但即便如此,也碾压了传统轻量云,下载方面,住宅VPS因为走本地电信,从公网拉文件到家里机,跑出了450Mbps的下载速度,阿里云轻量下行被限速到5Mbps,完全不是一个量级。
吞吐测试更有意思,我本地搭了一个Nginx,挂了一个10MB的文件,用curl从公网机器上反复wget,住宅VPS平均请求耗时0.6秒,而阿里云轻量因为上行窄,平均耗时直接到了2.1秒,也就是说,同一个文件,从你家自己的机子取,比从云上取快三倍还多,有人会说“云服务器可以多线程啊”,没错,但这又绕回了带宽上限问题——你一个5Mbps的管道,线程再多也一样堵。
当然不能只吹住宅VPS,竞品对比里,阿里云和腾讯云在稳定性上确实有优势,我跑了一周的7x24小时ping监控,阿里云丢包率0.02%,几乎是零,住宅VPS这边,因为我用的是frp依赖那台海外中转机,中间出过一次约40分钟的断连——搬瓦工那台机被机房重启了,动态公网IP问题也有隐患,虽然可以用DDNS自动更新,但如果你家宽带有严格NAT4,有些端口可能根本通不了,还有个现实问题:你家机子一旦断电或者重启,得手动重新启动穿透服务,不像云服务器开机就在线。
总结一下我的真实感受:住宅VPS最适合什么场景?第一,跑数据采集和备份——家里带宽快、存储大、流量根本不花钱,跑一天爬虫下来数据直接落本地,不用操心云盘容量,第二,做自建网盘和NAS网关,内网访问速度秒杀任何云盘,第三,当测试环境,特别是需要大量读写硬盘的场景,家庭数据中心的NVMe速度吊打所有云服务器的云盘IO,但如果你跑的是电商网站、在线支付这类需要高可用保障、随时挂不了的业务,别碰住宅VPS,老老实实上云。
最后说句掏心窝的:家庭数据中心的门槛比很多人想象的低,一套二手ITX小主机加一个frp配置,成本不到一千块,但你能获得一台带宽跑满、存储自控、延迟稳定的私人服务器,云厂商的那些“轻量服务器”,说白了就是阉割版,而你自己搭的才是真正的数据中心——虽然它可能在你家客厅角落里发出一丁点风扇声音,反正我用了两周后,已经把那台阿里云轻量停机了,省下的月费,够我加两条内存了。



发表评论