晚上十点半,我瘫在电脑前,心血来潮想重温一下《绝地求生》。离开游戏已经大半年,最近的更新据说加入了新地图和载具,还挺心动。我打开Steam,找到PUBG,点击“下载”,然后就去倒了杯水。回来时却发现下载进度条为零,Steam跳出一个窗口:“无法连接至网络,请检查你的互联网连接”。我愣了一下,心想路由器坏了?点开浏览器,百度秒开,B站也流畅,Steam商店也能正常浏览,唯独下载卡住。这就怪了,网明明好好的,怎么Steam就说没网呢?那种刚燃起来的期待感瞬间被浇熄,我决定今晚非得把这问题搞定。
重启、关闭、再试——没有效果的循环
一开始我按正常的思路来:重启Steam,不行;重启电脑,还是不行;关闭Windows防火墙和杀毒软件,问题依旧。我开始怀疑Steam下载服务器是不是抽风了,但检查Steam服务器状态页面,一切正常。然后我清理了Steam下载缓存:在设置->下载->清除缓存,重启后它提示需要重新登录,我满怀期待地登录,再次点击下载,结果同样的提示又出现了。那一刻我真想把电脑砸了,但理智告诉我不能冲动。我坐在电脑前,心里又气又无奈,明明网是通的,凭什么Steam就认为我没网?这种矛盾让排查变得特别烦人。
网络设置的迷思:DNS、IPv6与代理
我在网上看了一下(但没用搜索引擎的段落,自己琢磨)。当时我觉得可能是DNS解析问题,因为Steam下载需要连接到特定的CDN域名,有时候ISP的DNS缓存会搞鬼。于是我把DNS改成了114.114.114.114,还试了谷歌的8.8.8.8,但没有任何变化。接着,我检查了IPv6,听说有些老游戏或平台在IPv6环境下会出问题,于是关闭了IPv6,重启了网络连接,但Steam还是那个暴脾气的“没有网络连接”。之后我又查看了系统代理设置,虽然我平时不用梯子,但我还是确认了Windows的代理是关闭状态。我甚至把虚拟网卡全部禁用,只保留有线网卡,折腾了将近一小时,每次都信心满满地去试,然后又失望地看到那个提示。
转机:Steam下载区域的秘密
就在我几乎要放弃、打算重装Steam时,我突然想到了Steam的下载区域设置。以前我设的是“中国-深圳”,但今晚一直没考虑过是区域的问题。我试着把区域切换到“香港”,重启Steam,心里已经不抱太大希望了。结果一点下载,奇迹出现了:下载速度直接飙到50MB/s,而且跑了十几秒都没有中断。我激动得差点叫出来,原来问题出在Steam的下载区域服务器上!可能是我所在的地区与深圳的Steam下载节点通信不畅,或者节点负载高、连接不稳定,而香港的节点则通畅得多。我马上停止了下载,切换到了“韩国”,速度也很稳定,最后我选择了香港区域完成了整个安装。整个过程没有再到任何网络报错。
反思:为什么“有网”但Steam说没网
平静下来后,我琢磨为什么单纯的下载区域切换就能解决问题。可能Steam检测网络连接时,会尝试与选定的下载节点建立多个端口连接,如果节点离你远、网络中间防火墙过滤或者路由跳数过多导致握手超时,Steam就认为“无法连接”。而浏览器访问网页走的是80/443端口,经过的内容分发网络可能更靠谱,所以看起来“有网”,但Steam的专用连接却失败了。切换到一个更近、更稳定的节点,Steam就能准确感知网络存在。这也解释了很多用户遇到的“Steam能开商店但下载报错”的情况。
安装结束后,深夜一点,我正式进入了绝地求生的新版本。虽然折腾了三个多小时,但当我端着一把M4跳伞时,疲惫瞬间消失了。这次经历让我对Steam的下载机制有了更深的认识,也明白了有时候网络故障不一定是真的断网,而是管道不对。希望我的这些坎坷,能给同样被“没有网络”困扰的同窗一点实际的参考,不再走我这么多弯路。
