SteamCDN

steam 通过 steamserver.net 这个顶级域名和它的二级域名判断你当前所处的国家/地区,当你启动 steam 时进行抓包可以看到有相关域名的连接信息。

steam 启动后我们打开 steam 控制台

Windows:

  1. Win + R
  2. steam://open/console

Linux:

  1. 打开终端
  2. steam steam://nav/console

在控制台输入 user_info 后会弹出三段内容,其中最后一段是与下载有关的信息,就像这样

            
                InstallPath: /home/ubuntu/.local/share/Steam/ubuntu12_32 
                Universe: Public 
                Server Time: Sat Feb  8 22:22:24 2025 
                IPCountry: CN 
                Offline Mode: no
                CellID: 49
            
            

集中注意力不难发现 IPCountry 后有大写字母 CN 字样,因为此时 steamserver.net 这个域名使用了中国大陆的网络进行连接

此时我们进行下载 CS2 并监测流量,结果如下

CN img

很轻易就能看出来 Steam 选择了 dl.steam.clngaa.com 和 xz.pphimalayanrt.com 这两个域名来分发游戏内容。第一个域名显然是属于 steam 的,但如果你注意力不够集中,可能看不出来这两个域名是中国的,前往 itdog 测试发现这两个域名都会被解析为中国大陆的 IP (部分比较先进的软件可以直接显示这个域名属于中国大陆)

现在我们让这个域名经过香港的网络进行测试,结果和预期的一样显示了 HK

            
                InstallPath: /home/ubuntu/.local/share/Steam/ubuntu12_32 
                Universe: Public 
                Server Time: Sat Feb  8 22:38:30 2025 
                IPCountry: HK 
                Offline Mode: no
                CellID: 33
            
            

再次下载 CS2 并监测流量,结果如下

HK img

这次的连接整齐划一的为 cache*-hkg1.steamcontent.com 这显然就是 steam 在香港的 CDN 域名。