为什么现在我拼命补网络基础知识?因为我深刻意识到,如果不学这玩意儿,在AI时代处处被卡。。。

第一层,🪜,很多人虽然有,但是玩不明白——某些时候网络卡了,为什么卡了?代理和VPN是一个东西吗?手机和电脑选择VPN能选同一个吗?听人说VPS可以建稳定的VPN,是真的吗,怎么弄?

第二层,Claude,A➗相信大家都不陌生,虽然老是被封号,但是偶尔舔着也要用,而且说实话,Claude桌面端是我最最最喜欢的AI学习工具,交互真的赏心悦目。所以为了不被封号,就要了解底层防止被封的网络原理才行。

第三层,涉及到本地模型和AI Native组织建设,还可能有局域网、Nas这些东西加进来,所以最底层的IP、DNS这些也必须了解。

第四层,大量的好用工具。比如公众号批量抓取工具、视频号批量抓取工具,一般都要设置代理,如果不懂这些原则,就不知道能不能并行抓取?如果切换代理会对电脑使用有什么影响?

第五层,如果想要出海赚美金,学习网络底层原理更是重中之重。 DNS解析是域名领域最常见的名词之一,IP地址、网络请求、网络带宽、CPU、内存更是网站遭遇DDoS攻击时必须搞清楚的东西,因为烧的都是钱呐。

还有很多很多需要用到网络底层基础知识的地方,这篇文章不可能一次性把这么多问题解决完,但是我会用这篇文章,以最通俗易懂的方式让你了解清楚去解决这些现实问题,所需要具备的最基础的网络名词概念。

一、IP是什么

IP(Internet Protocol) 是互联网通信使用的一套地址规则;而IPv4 和 IPv6 是这套规则的两个版本。

IP 的作用是让网络中的设备可以互相找到对方。比如,你打开一个网站时,本质上是你的设备在向网站服务器发送请求:我现在要访问你,请你把网页内容发给我。

那网站服务器接收到请求后,怎么知道数据要发回哪里?这就需要靠 IP 地址来锁定坐标。

IP 地址有三个重要的概念需要理解:

类型含义
内网 IP局域网内部使用的地址
公网 IP互联网上对外可见的地址
出口 IP目标网站最终看到的那个 IP
局域网补充解释:在小范围内,将多台设备连接在一起组成的私有局部网络,比如公司对讲机。

如果你家里有电脑、手机、iPad,这些是在你家局域网里面,所以IP都是内网IP,一般显示成不同的IP地址:

电脑:192.168.1.10
手机:192.168.1.11
iPad:192.168.1.12
路由器:192.168.1.1

但它们访问外部网站时,是从同一个公网IP出口,所以网站看到的可能都是同一个IP:123.45.67.89。整个IP变化流程就是:

电脑 192.168.1.10
→ 路由器 192.168.1.1
→ 公网出口 IP 123.45.67.89
→ 目标网站

此外,IP地址代表的是你这次上网时使用的网络出口地址,是变化的。

比如你在家里连 Wi-Fi,上网时网站看到的可能是你家宽带的公网 IP;你切换到手机流量,网站看到的 IP 可能就变成了移动运营商的 IP;你使用代理、VPN、VPS 时,网站看到的 IP 又可能变成代理服务器、VPN 节点或 VPS 的 IP。

1、IPv4是什么?

IPv4 是 Internet Protocol version 4,也就是第 4 版互联网协议。IPv4 地址通常长这样:

192.168.1.1
8.8.8.8
1.1.1.1
255.255.255.255

IPv4 的官方规范中,IPv4是32位二进制——地址长度是 4 个 八位组(八个二进制位),也就是 4 组 8 位,共 32 位,类似:

11000000101010000000000100000001

但是人们其实不方便直接看这种形式,所以把它拆成 4 段:

8 位 . 8 位 . 8 位 . 8 位

每一段 8 位二进制,转换成十进制后,就是我们看到的样子:

192.168.1.1

以 192.168.1.1 为例:

192       .168       .1         .1
11000000  .10101000  .00000001  .00000001

为什么经常听见有人说 IPv4 地址数量有限,那是因为 IPv4 本质上是一个 32 位二进制数字。每一位二进制只能是0或1,所以 IPv4 的理论总数量是:2^32 = 4,294,967,296,也就是大约42.9 亿个。

而且这 42.9 亿个地址里,并不是全部都能作为公网 IP 使用。因为有一部分地址被保留给内网、回环(稍后会讲)、广播、文档示例等特殊用途。

内网 IPv4 是只在局域网内部使用的地址。常见内网地址有三大段:

10.0.0.0 ~ 10.255.255.255
172.16.0.0 ~ 172.31.255.255
192.168.0.0 ~ 192.168.255.255

家用路由器最常见的是:

192.168.0.x
192.168.1.x

比如:

192.168.1.1     路由器
192.168.1.10    电脑
192.168.1.11    手机
192.168.1.12    iPad

我之前一直很好奇一个问题,看下大家有没有和我一样的:为什么很多人电脑上都显示有 192.168.1.1 这个 IP 地址?

其实192.168.1.1 是一个私有内网地址,它不是公网地址,所以不需要在全球唯一。这就像酒店 A 有 101 房间,酒店 B 也有 101 房间,只要它们在不同酒店里,就不会冲突。

还有个特殊名词,回环地址。IPv4 里最常见的回环地址是:127.0.0.1。它通常也叫:localhost(经常vibe coding的朋友们肯定知道这还有不少梗——localhost: 3000。。。)

回环地址的意思就是自己访问自己,比如你在浏览器输入:http://127.0.0.1:3000,代表着你从浏览器访问当前这台电脑上运行的 3000 端口服务(端口后续会讲)。它不会访问互联网,也不会访问路由器,只在你本机内部完成通信。

2、IPv6 是什么?

IPv6 是 Internet Protocol version 6,也就是第 6 版互联网协议。它出现的一个重要原因,就是 IPv4 地址数量不够用。

IPv4 只有 32 位,而 IPv6 是128 位,地址数量是:2^128=340,282,366,920,938,463,463,374,607,431,768,211,456,所以这下不愁IP不够用了。。。

IPv6 不再使用 IPv4 那种“点分十进制格式”,而是采用“十六进制 + 冒号分隔”。一个完整的 IPv6 地址长这样(分成8组):

2001 : 0db8 : 85a3 : 0000 : 0000 : 8a2e : 0370 : 7334

每一组是 4 个十六进制字符。十六进制字符包括:

0 1 2 3 4 5 6 7 8 9 a b c d e f

IPv6 的标准文本形式通常写成 x:x:x:x:x:x:x:x,也就是 8 组十六进制数,用冒号分隔。

因为IPv6 太长了,所以允许简写。比如这个完整地址:2001:0db8:0000:0000:0000:0000:0000:0001,可以先省略每组前面的 0,变成这样:2001:db8:0:0:0:0:0:1。

而且如果中间有连续的 0000,还可以用 :: 省略:

2001:db8::1

这里的“::”表示中间省略了一串连续的 0。但是要注意:一个 IPv6 地址里,:: 最多只能出现一次。

3、内网 IP 是怎么变成公网出口 IP 的?——NAT

上面的流程是这样的:电脑 192.168.1.10 → 路由器 → 公网出口 IP 123.45.67.89 → 目标网站。

所有要离开局域网的流量都会先交给路由器(它在家里这个角色也叫默认网关),而“内网 IP 变公网出口 IP”这个动作,就是路由器在做 NAT(Network Address Translation,网络地址转换)。

为什么必须转?因为内网 IP 不能直接在全球互联网上使用。比如你的电脑是 192.168.1.10,这个地址在你家能用,但世界上可能有无数台设备的 IP 也是 192.168.1.10,网站没法根据这个地址判断数据该返回给谁。

所以数据离开你家时,路由器会把源 IP 从内网地址换成你家的公网出口地址。假设你家的公网 IP 是 123.45.67.89:

转换前:
源 IP:192.168.1.10
目标 IP:网站服务器 IP
 
经过 NAT 后:
源 IP:123.45.67.89
目标 IP:网站服务器 IP

网站最终看到的是 123.45.67.89,而不是 192.168.1.10。

那家里好几台设备共用同一个公网 IP,网站返回数据时,路由器怎么知道该交给电脑还是手机?

答案是:路由器会记录每一条连接的对应关系,不仅看内网 IP,还会结合端口来区分。这种方式更具体地叫 PAT(端口地址转换),日常通常也归到 NAT 里。

比如路由器内部可能记录:

内网设备内网连接对外连接
电脑192.168.1.10:50001123.45.67.89:61001
手机192.168.1.11:50002123.45.67.89:61002
平板192.168.1.12:50003123.45.67.89:61003

网站把数据返回给 123.45.67.89:61002 时,路由器一查记录,就知道这份数据属于手机。

除了路由器NAT之外,有时候运营商还会再做一次 NAT,这叫 CGNAT(运营商级 NAT)。原因还是 IPv4 地址不够用,运营商让很多家庭用户进一步共享少量公网 IPv4。这时可能出现两层转换:

电脑内网 IP
→ 家用路由器 NAT
→ 运营商内部地址
→ 运营商 CGNAT
→ 真正的公网出口 IP
→ 网站

这种情况下,你在路由器后台看到的 WAN 地址(广域网地址,指路由器连接外部网络时用的 IP)可能并不是真正的公网 IP,因为网站最终看到的是运营商做完 CGNAT 后的出口 IP。

CGNAT 还会带来一些实际影响:

  • 从公网主动连接家里的设备更困难(想远程访问家里的 NAS 就不容易);
  • 路由器端口映射可能无法直接生效;
  • 路由器显示的地址和查询 IP 网站显示的地址不一样。

4、想在外面访问家里的 NAS?——端口映射、内网穿透、组网

人在外面,怎么访问家里 NAS 上的文件、本地 AI 服务?

为什么从外面访问家里设备这么难?因为家里设备大多是内网 IP(比如 192.168.1.10),在公网上没有意义。要从外面访问,必须让公网上的设备能找到并连进你家的内网设备。分两种情况——有公网 IP 和没公网 IP:

方案一:有公网 IP——端口映射 + DDNS 如果你的宽带运营商给你分配了公网 IP(不是 CGNAT),就可以在路由器后台做端口映射:把路由器的某个公网端口,转发到内网某台设备的某个端口。

公网:http://你家公网IP:8080
→ 路由器(端口映射)
→ 内网:192.168.1.100:3000(NAS 上的服务)

但家庭宽带的公网 IP 通常是动态的,过段时间会变,所以还需要 DDNS(动态域名解析)——把域名固定指向你当前这个变化的公网 IP。你只需要记域名就行,IP 变了 DDNS 自动更新。

方案二:没公网 IP——内网穿透 大部分家庭宽带是 CGNAT,根本没有真正的公网 IP,端口映射无从谈起,这时就需要内网穿透:在你家内网装一个客户端,主动连出去到一台有公网 IP 的中转服务器,把你的内网服务”借道”暴露出去。

外面的人 → 公网中转服务器(有公网IP) → 你家的穿透客户端 → NAS 服务

常见工具:frp、cpolar、花生壳、ngrok。缺点是多一跳,速度和稳定性受中转服务器影响。

方案三:组网——Tailscale、ZeroTier Tailscale这个方案我用来做自动创建公众号文章(以后的文章会分享)。

组网就是把多台设备拉进一张”虚拟局域网”,让它们像在同一张内网里一样互相访问,无论实际在哪。它用 P2P 直连(Peer-to-Peer,两台设备之间直接建立连接传输数据) + 中继兜底(如果直连不上,就自动改走一台中转服务器转发),比内网穿透更灵活,而且天然加密。

手机(在外地)⇄ 虚拟局域网 ⇄ 家里 NAS

优点:不用把任何端口暴露到公网,安全性好;手机、电脑、NAS 全都能互相访问。适合”AI Native 组织”把设备和本地模型连成一张网。

二、客户端、服务器、网站是什么?

互联网里到底是谁在和谁通信?答案就是客户端和服务器。

互联网里最常见的通信模型,可以简单理解成这样:

客户端  →  请求  →  服务器
客户端  ←  响应  ←  服务器

你打开网页、刷视频、登录账号、发评论、调用 AI,本质上都可以这样理解——你这边的软件向远方的服务器发请求,服务器处理后把结果返回给你。

1、客户端是什么?

客户端(Client):主动发起请求的一方。你平时用的浏览器、手机 App、电脑软件、小程序、游戏客户端、命令行工具、代码脚本,都可能是客户端。

比如你用 Chrome 打开一个网站,Chrome 就是客户端。你用手机刷 X,X App 就是客户端。你用 Codex 调用 GPT,Codex 这个软件就是客户端。你写一段 Python 代码去请求某个 API,这段代码程序也可以是客户端。

这里有一个很容易混淆的点!客户端不一定是你的电脑或手机本身,它通常是运行在设备上的某个软件。

比如你用 Mac 打开 Chrome 访问网站,Mac 是设备,Chrome 才是这次访问里的客户端。你用 iPhone 打开 YouTube,iPhone 是设备,YouTube App 是客户端。

客户端主要负责三个事情:接收你的操作,把你的操作变成网络请求,再把服务器返回的结果展示给你。

比如你在一个网站里输入一句话,然后点击“发送”。你看到的是自己点击了一个按钮,但背后其实要经历三个步骤——浏览器这个客户端把你的输入内容发给服务器,服务器处理后返回结果,浏览器再把结果显示在页面上。

2、服务器是什么?

服务器(Server):它可以提供网页、图片、视频、登录功能、搜索功能、评论功能、支付功能、文件下载、AI 生成结果等各种服务。

比如你打开 YouTube,YouTube 的服务器会返回页面、视频、评论和推荐内容。你打开 X,X 的服务器会返回时间线、推文、图片、视频和互动数据。你打开 ChatGPT,OpenAI 的服务器会接收你的问题,处理后返回回答。

所以服务器本质上就是:一台或一组专门提供服务的机器,以及运行在这些机器上的程序。这里还要注意,“服务器”有两层意思:

第一层是我们常说的服务器,指一台等待别人来访问,并提供服务的一方,真实的机器。比如云服务器、VPS、机房里的物理服务器。这时候它更像是一台远程电脑。

第二层是Web 服务器、数据库服务器、代理服务器、邮件服务器,更多是在说某种服务程序或系统。(后面解释代理服务器)

3、网站是什么?

很多人会以为网站就是一个网页,但其实网站是一整套在线服务

我们平时看到的页面只是网站的表层,一个网站背后通常包括前端、后端、数据库、服务器和网络环境。

前端是你能看到和操作的部分,比如页面、按钮、输入框、图片、动画。

后端是服务器上处理业务逻辑的部分,比如判断你有没有登录、检查会员权限、处理支付、保存评论、调用 AI 模型。

数据库是专门存数据的地方,比如用户账号、文章内容、评论、订单、聊天记录、会员状态。

举个例子,你打开一个 AI 工具网站,看到输入框和生成按钮,这是前端。你点击“生成”之后,后端会接收你的请求,检查你有没有权限,可能还会调用模型。另外,你的账号信息、历史记录、剩余次数,通常存在数据库里。

所以网站不是单独一个页面,而是由前端、后端、数据库和服务器共同组成的一套服务。

小网站可能一台服务器就能跑起来,而大型平台就复杂得多。像 YouTube、X、TikTok、淘宝、OpenAI 这种平台,背后往往有很多服务器一起工作:网页服务器、登录服务器、数据库服务器、图片服务器、视频服务器、推荐系统、风控系统、缓存系统、CDN 节点(CDN后续会讲到)等等。

4、请求和响应是什么?

客户端和服务器之间最核心的动作,就是请求和响应。

请求,就是客户端对服务器说:“我需要某个东西”或者“请你帮我做某件事”。

比如你打开首页,客户端是在请求首页内容。你点击登录,客户端是在请求服务器验证账号密码。你刷新时间线,客户端是在请求最新内容。

响应,就是服务器处理完以后返回的结果。

比如服务器返回网页内容、登录成功、登录失败、视频数据、AI 生成结果,或者告诉你没有权限、请求失败等等。

5、服务器靠什么跑起来?——CPU、内存、硬盘、GPU

服务器由什么组成?选 VPS、租服务器、判断本地能不能跑 AI 模型时,都会遇到服务器的组件词,甚至涉及AI硬件相关的投资,你肯定得懂这些。。。

CPU(中央处理器):服务器的大脑,负责执行所有计算和逻辑,比如处理请求、跑程序、转发数据。核心数越多、主频越高,能同时干的活越多。建网站、跑后端逻辑,主要看 CPU。

GPU(图形处理器):本来是显卡用来做图像渲染的,但因为擅长”大量简单计算同时做”(并行计算),也被拿来跑 AI 训练和推理。AI 大模型的数学本质是海量矩阵运算,GPU 就是为此设计的。你听到的”4090 跑本地模型""买 H100 训练”,说的就是 GPU。

内存(RAM):服务器的”临时工作台”。数据要处理之前先放进内存,速度极快但断电就清空。内存越大,能同时接待的请求、同时跑的进程越多。你感觉到Codex多跑几个任务电脑就很卡,多半是内存的问题,建议用tw93大佬的Mole来自查。

硬盘(存储):服务器的”仓库”,永久保存数据(系统、文件、数据库)。SSD(固态硬盘)快但贵,HDD(机械硬盘)慢但便宜,现在新服务器基本都上 SSD。

6、CDN:网站怎么让全球用户都快?

CDN(Content Delivery Network,内容分发网络)负责解决这个问题:一个网站在一个地方,但用户在全世界,怎么让全世界用户访问网站都很快?

答案是”就近开店”:网站把内容(图片、视频、JS 文件等)复制到全球各地的很多服务器上,用户访问时,自动连离自己最近的那台,而不是每次都跑去源站。

没有 CDN:北京用户 → 美国源站(慢)
有 CDN:北京用户 → 北京边缘节点(快) → 没缓存时再回源站取

关键点:

  • 边缘节点:部署在世界各地的 CDN 缓存服务器,离用户近;
  • 智能调度:靠 DNS 和全局负载均衡把用户引导到最近的节点(这正好对应前面”同一个域名在不同地区解析出不同 IP”);
  • 缓存:静态内容(图片、视频)在边缘节点缓存,重复访问直接命中,不用回源。

7、网站最大的敌人之一:DDoS 攻击

DDoS(Distributed Denial of Service,分布式拒绝服务攻击):攻击者用大量被控制的电脑/设备(僵尸网络),同时向目标网站发送海量请求,把服务器的带宽(网络单位时间能传的数据量,第四节会细讲)、CPU、内存打满,导致正常用户访问不了。

大量僵尸设备 → 同时狂发请求 → 网站带宽/CPU/内存被打满 → 正常用户进不来

为什么”烧的都是钱”?

  • 网站可能按量计费带宽/流量,被灌爆 = 天价账单;
  • 要么买更高配置的服务器扛(花钱),要么买高防服务(花更多的钱),要么业务瘫痪损失收入。

三、域名、URL、DNS 是什么?

1、三者的概念和关系

概念大白话
域名网站好记的名字,比如 openai.com
URL一个完整的网址,比如https://openai.com/chatgpt
DNS把域名翻译成 IP 的系统

IP 是机器真正使用的地址,但人类不喜欢记 IP(比如你不可能每天记一串数字来访问网站),所以互联网引入了域名。

域名就是给服务器起一个人类容易记的名字。你记 openai.com 就可以,不需要记它背后的服务器 IP。但计算机最终还是要靠 IP 通信,所以中间需要一个“翻译系统”,把 openai.com 翻译成服务器的 IP。这个翻译系统就是 DNS。关系:域名 → DNS 查询 → IP 地址 → 连接服务器

2、域名是什么

域名就是互联网上网站的名字,用来代替复杂难记的IP地址,但是域名不等同于URL,而且域名有自己的层级结构。比如www.example.com 这个域名,可以拆成三层:

www.example.com
│   │       │
子域名 二级域名 顶级域名

.com 是顶级域名,也叫 TLD,常见的还有 .net、.org、.cn、.ai、.io 等。 example 是二级域名,通常是你真正注册和拥有的部分。 www 是子域名,很多网站会用 www,也有的网站不用。

另外,域名和 IP 并不是一一对应的,一个域名可以对应多个 IP,而且非常常见。

大型网站往往不会只有一台服务器,一个域名背后可能对应多个 IP,用来做负载均衡、容灾、CDN 加速和就近访问。

比如你在美国访问某个网站,DNS 可能给你返回美国附近的服务器 IP;你在新加坡访问,DNS 可能给你返回新加坡附近的服务器 IP。所以同一个域名,在不同地区、不同网络、不同时间,解析出来的 IP 可能不一样。

反过来,一个 IP 也可以对应多个域名,一台服务器或者一个公网 IP 上,可能托管多个网站。

比如 a.com、b.com、c.com 都可能指向同一个服务器 IP,服务器收到请求后,会根据你请求里带的域名,判断你到底要访问哪个网站。

所以域名和 IP 不是绝对一对一关系:一个域名可以解析到多个 IP,一个 IP 也可以承载多个域名。

3、URL 是什么?

URL 就是我们平时说的“完整网址”。域名只是 URL 的一部分,URL 比域名更完整,因为它不仅说明你要访问哪个网站,还说明用什么协议、访问哪个页面、带什么参数,比如这个网址:

https://www.example.com/articles?id=123#comments

可以拆成这几部分来理解:

部分示例含义
协议https://用什么方式通信
域名www.example.com访问哪个网站
路径/articles访问网站里的哪个页面
参数?id=123给服务器的额外信息
锚点comments页面内的某个位置

4、DNS 是什么?

DNS 的全称是 Domain Name System,中文一般叫“域名系统”。

它的核心作用是负责把域名翻译成 IP 地址。因为人类输入的是域名,但网络通信最终要靠 IP,比如你输入 youtube.com,浏览器需要先知道 youtube.com 对应哪个 IP,这个查询过程就叫 DNS 解析。

但是有一个点千万注意!域名→IP只是DNS这个域名信息数据库的一种,不是全部,所以不能完全把DNS等同于把域名解析成IP,后面DNS记录那块就有非域名解析。

大概过程是:

你输入 youtube.com

浏览器询问 DNS:youtube.com 对应哪个 IP?

DNS 返回一个 IP

浏览器连接这个 IP 对应的服务器

要搞清楚完整真实的DNS查询流程,就需要搞明白这几个概念👇

1)缓存是什么?

缓存就是临时记住以前查过的结果,方便下次直接使用。

比如你刚访问过www.example.com ,系统已经查到它对应某个 IP,如果短时间内你再次访问这个网站时,浏览器或系统可能会直接使用之前查到的结果,而不是重新完整查一遍。

这样做有两个好处:第一,访问更快;第二,减少 DNS 系统的压力。

而浏览器缓存,就是浏览器自己临时记住的 DNS 查询结果。

如果浏览器自己没有结果,它通常会去问操作系统(操作系统就是你的 Windows、macOS、iOS、Android 这一层),操作系统也可能保存 DNS 查询结果。

比如你刚才不是用 Chrome,而是用另一个 App 访问过同一个域名,这个域名的解析结果可能已经被操作系统记住了,那 Chrome 再访问时,就可以从系统那里拿到结果。

不过缓存不能永久有效。每条 DNS 记录(后续会讲)通常会有一个 TTL,也就是缓存有效时间(这条解析结果可以被缓存多久)。如果 TTL 是 300 秒,那解析结果大概可以缓存 5 分钟,过期之后,系统需要重新查询。这也是为什么刚修改完域名解析的时候,不会立刻在全世界生效——因为很多地方还在使用旧缓存,等 TTL 过期后才会刷新。

2)本地 DNS和递归DNS 是什么?

如果浏览器和操作系统都没有答案,设备就要去问一个 DNS 服务器。

这个 DNS 服务器通常叫本地 DNS,也叫递归 DNS 解析器。

这个本地 DNS 可能来自你的宽带运营商(路由器接入运营商自动分配的),也可能是你自己手动设置的公共 DNS(公开的域名解析服务,为了更快更稳定),比如 Google DNS、Cloudflare DNS 等。

比如你连家里 Wi-Fi,路由器或运营商通常会自动告诉你的设备:“你查域名时,就去问这个 DNS 服务器。”

递归DNS就是指你问它一个域名,它负责帮你一路查到底,最后把 IP 结果带回来。比如你问本地 DNS:www.example.com 是哪个 IP?

如果它自己缓存里有答案,它直接告诉你,如果它没有答案,它会自己去问根 DNS、顶级域名 DNS、权威 DNS(这些下面马上讲),这就叫递归查询。

3)为什么要设置公共 DNS?比如 Google DNS、Cloudflare DNS

默认情况下,你的设备使用的 DNS 通常由宽带运营商自动分配,这叫运营商 DNS(也叫 ISP DNS),它”够用”,但不算好用。

而公共 DNS 是指由公司或组织公开提供的免费 DNS 服务,比如 Google 的 8.8.8.8、Cloudflare 的 1.1.1.1,任何人都可以手动把设备的 DNS 改成它们。

换公共 DNS,主要有这几个好处:

第一,更快、更稳。

运营商 DNS 通常被几百万用户共用,高峰期可能变慢,甚至整个服务挂掉(表现是”网页打不开,但微信能发”)。

而Google 和 Cloudflare 用 anycast 技术在全球部署了大量节点,你的查询会自动交给最近的节点处理,速度快、可用性高。

第二,避免运营商”动手脚”。

运营商经常在你的 DNS 查询结果上做文章,最常见的几种:

  • 404 劫持:你输错一个域名,正常应该提示”找不到网站”,运营商 DNS 却跳转到它自己的广告页面;
  • 篡改解析结果:把某些域名解析到它想让你去的 IP;
  • DNS 污染:对部分境外域名返回一个错误的 IP。 换成公共 DNS 后,这些由运营商DNS做的手脚就绕开了。

第三,隐私。

每一次 DNS 查询,等于一条”你准备访问哪些网站”的记录。用运营商 DNS,这些记录都在运营商手里。

而Google 和 Cloudflare 都有公开的隐私政策,Cloudflare 还承诺 24 小时清空日志。

第四,更安全。

公共 DNS 通常支持 DNSSEC(用来验证解析结果有没有被篡改)。Cloudflare 还提供带过滤功能的地址,比如 1.1.1.2 自动拦截恶意软件、1.1.1.3 再拦截成人内容。

第五,解决实际问题。

网页打不开、域名解析失败、网站频繁跳转,切换到公共 DNS 经常能直接解决。

第六,配合代理使用。

用代理时,如果 DNS 查询仍然走本地运营商,会有两个问题:一是可能被污染,二是把”你要访问哪些海外网站”暴露给运营商。

代理软件里的 Fake-IP、远程 DNS 这些设置,本质就是在处理这个问题(具体在上一篇《Clash Verge 教程》的 DNS 设置里讲过)。

常见公共 DNS 地址可以先记住这几个:

服务商IPv4 地址特点
Google DNS8.8.8.8 / 8.8.4.4全球部署,速度快
Cloudflare1.1.1.1 / 1.0.0.1隐私保护较好,有过滤版本
阿里 DNS223.5.5.5 / 223.6.6.6国内访问速度快
DNSPod119.29.29.29国内访问速度快

4)根 DNS、顶级域名DNS、权威DNS 是什么?

如果递归 DNS 自己也不知道答案,它就要从 DNS 的最上层根 DNS 开始。

根 DNS 不会直接告诉你www.example.com 的最终 IP,它更像一个总目录,只告诉你下一步该去哪里查。

比如你要查www.example.com,根 DNS 会看最后的 .com,然后告诉递归 DNS:“你要查 .com 域名,去问负责 .com 的顶级域名 DNS。”

负责顶级域名的 DNS,就叫顶级域名 DNS,也可以叫 TLD DNS。

比如你查www.example.com,递归 DNS 会去问 .com 的顶级域名 DNS。.com 的顶级域名 DNS 也通常不会直接告诉你最终 IP,它会告诉你:“example.com 这个域名的权威 DNS 在哪里,你去问它。”

权威 DNS 是真正保存某个域名解析记录的地方。

比如 example.com 的权威 DNS 里可能保存着:www.example.com 应该指向哪个 IPv4 地址,哪个 IPv6 地址。

所以递归 DNS 最后会问权威 DNS:“www.example.com 到底对应哪个 IP?”,权威 DNS 才会返回最终答案,然后递归 DNS 把这个答案带回给你的设备,你的浏览器拿到 IP 后,才可以真正连接服务器。

5、DNS 记录是什么?

DNS记录就是DNS查询最终要查到的那个“答案”——判断域名应该解析到哪里的对照表。

域名要解析到哪里,不是凭空决定的,而是由 DNS 记录配置的。你买了一个域名之后,可以在域名服务商或 DNS 服务商那里配置解析记录。最常见的记录有几类:

记录类型作用大白话什么时候会用到
A 记录把域名指向一个 IPv4 地址告诉全世界:这个域名对应的服务器 IP 是这个。“域名解析成 IP”,指的就是它建网站最常用,让 example.com 打开你的服务器
AAAA 记录把域名指向一个 IPv6 地址跟 A 记录一样,只是地址是 IPv6服务器用的是 IPv6 地址时
CNAME 记录把一个域名指向另一个域名让一个域名“等于”另一个域名,不直接写 IP,而是写“我等于 xxx.com”让www.example.com 和 example.com 打开同一个网站
MX 记录配置邮箱服务器给域名设一个“收信前台”:发到你这个域名的邮件,交给哪台邮件服务器。注意:它指向的不是 IP,而是另一台邮件服务器做企业邮箱,用 @你的域名 收发邮件
TXT 记录放验证信息,比如域名所有权、邮箱安全验证在域名下贴一张“身份纸条”,让外部平台查得到,用来证明“这个域名真的是我的”平台让你验证域名所有权时,比如 Google Search Console、微信、邮箱服务商
拿我的个人网站yichen.homes举个例子,可以看到我红色框出来这一部分就是DNS记录类型。

四、协议、HTTP/HTTPS 和端口是什么?

1、协议是什么?

协议(Protocol)就是:通信双方共同遵守的一套规则。

两个人交流,得用同一种语言——一个说中文、一个说法语,就没法沟通。网络通信也一样,客户端和服务器之间不能乱发数据,必须提前约定好:请求怎么写、响应怎么回、错误怎么表示、数据怎么传。这套约定好的规则,就叫做协议。

其实你天天都在用协议。比如你打开浏览器访问网站会用到 HTTP 或 HTTPS,远程登录服务器会用到 SSH,收发邮件也会有对应的邮件协议。

如果没有协议,客户端就算找到了服务器,也不知道怎么向服务器要页面,服务器也不知道怎么把结果返回给你。

2、HTTP 是什么?

HTTP 的全称是 HyperText Transfer Protocol(超文本传输协议),是网页世界里最重要的协议之一。

大白话说,HTTP 就是浏览器和网站服务器之间传输网页内容的规则:你打开一个网页时,浏览器按 HTTP 的规则向服务器发请求,服务器再按同样的规则返回响应。最基础的模型就是:

浏览器 → HTTP 请求 → 网站服务器
浏览器 ← HTTP 响应 ← 网站服务器

所以 HTTP 的核心就两个动作:请求和响应。请求就是客户端对服务器说“我要什么”,响应就是服务器对客户端说“这是结果”。

HTTP 请求里可能带着你要访问的路径、浏览器信息、语言偏好、登录状态等;HTTP 响应里则装着网页内容、状态码等信息。

状态码是服务器告诉你的访问结果。看到 404,一般是页面不存在;403 是服务器拒绝访问;500 是服务器内部出错。

3、HTTPS 是什么?

HTTPS 可以理解成 HTTP 的安全版本。

普通 HTTP 本身不加密,如果有人在你和网站之间的网络里监听,理论上能看到你们传了什么内容。而HTTPS 在 HTTP 外面加了一层安全保护(主要是 TLS,负责加密、身份验证和防篡改,TLS后面会讲),让中间人就算截获了数据,也看不懂内容。

访问 HTTPS 网站时,浏览器会先和服务器建立连接,再做一次 TLS 握手,握手完成后,双方才会在这条加密通道里传输 HTTP 内容。

和 HTTP 比,HTTPS 主要多做三件事:

  • 加密:传输的内容会被加密,截获了也看不懂;
  • 防篡改:数据在传输过程中不容易被偷偷修改;
  • 身份验证:浏览器通过网站证书确认,你访问的确实是它声称的那个网站。

所以现在登录账号、支付、发消息、访问邮箱或网盘,基本都走 HTTPS。

不过 HTTPS 不等于完全隐身——它保护的是你和网站之间传输的内容,而你的出口 IP、访问时间、连了哪个服务器等网络层信息,仍然可能被相关节点看到。

以后看到网址开头是http://,就是普通 HTTP;看到https://,就是加密保护后的 HTTP。

4、端口是什么?

一台服务器上往往同时跑着很多服务:网页服务、远程登录、数据库、邮件……IP 只能帮你找到这台服务器,但不能告诉你要访问哪个服务。

这时候就需要端口——一台机器上不同服务的入口编号。你可以把服务器想象成一栋大楼:IP 是楼的地址,端口是楼里的房间号,只知道大楼地址还不够,还得知道要去哪个房间。

端口就是一个数字,服务程序会占着一个端口等别人来连接,这叫监听端口。常见端口可以先了解这几个:

端口常见用途
80HTTP 网页服务
443HTTPS 网页服务
22SSH 远程登录服务器
3306MySQL 数据库
5432PostgreSQL 数据库
3000 / 5173 / 8080本地开发或测试服务常见端口

另外,常见协议都有默认端口:HTTP 默认是 80,HTTPS 默认是 443。

所以你平时访问https://openai.com 没写端口,浏览器也知道该连 443。 看到 localhost:3000,就是浏览器在访问你自己电脑上 3000 端口跑的服务。 如果某个服务不用默认端口,就要在 URL 里写出来,比如https://example.com:8443。

5、TCP 和 UDP:数据怎么运?

前面打开网站的流程里有个”建立 TCP 连接”,这里来展开讲讲。

数据在网络里不是一整坨飞的,而是切成一个个”数据包”传输。但光有数据包还不够,谁来保证它们不丢、不乱序?这就是传输层协议的事,最常见的是 TCP 和 UDP 两种。

TCP(可靠):发送前先”三次握手”确认双方在线,发送后每个包都要对方确认收到,没收到就重发,还会保证顺序。网页、文件、API 调用都用 TCP,因为丢了任何一个包,内容就不完整了。

UDP(快):不确认、不重传,发了就不管。所以更快、延迟更低,但可能丢数据。适合语音、视频通话、在线游戏。

6、网络质量三要素:带宽、延迟、丢包

判断一个网络/节点好不好,就看这三个指标:

带宽(Bandwidth):单位时间内能传多少数据,常用 Mbps(兆比特每秒)。注意下行 vs 上行:下载看下行,上传(发视频、跑视频生成)看上行,家庭宽带上行通常远小于下行;

延迟(Latency):一个数据包从发出去到收到回应的时间,单位毫秒(ms),常用 ping 测。延迟高 = 响应慢。对 AI 交互、实时应用尤其重要,比如你发送提示词,看ChatGPT隔多久才回复。

丢包(Packet Loss):发送的数据包中有多少没到达,用百分比表示。丢包高 = 卡顿、重传、掉线。国际线路高峰期的卡,很多是丢包导致的。

7、打开一个网站时,到底发生了什么?

最后把前面的内容串起来。你在浏览器里输入https://example.com/articles,然后按下回车。表面上看只是“打开网页”,背后其实发生了一整套流程:

输入 URL
→ 解析 URL:拆出协议(https)、域名(example.com)、路径(/articles)
→ DNS 查询 IP:把 example.com 解析成服务器 IP
→ 确定端口:HTTPS 默认走 443
→ 建立 TCP 连接
→ 进行 TLS 握手,建立加密通道
→ 发送 HTTP 请求:告诉服务器要访问 /articles
→ 服务器处理请求,返回响应
→ 浏览器渲染页面

一句话概括整个过程:域名 → DNS 解析成 IP → 找到服务器 → 通过端口找到服务 → 按照协议通信。

8、网站协议 vs 代理协议

这一部分我们一直在讲”网站协议”——浏览器和目标网站之间使用的规则,比如 HTTP、HTTPS。但”协议”这个词还有一个容易混淆的场景:代理协议。

代理协议是你的应用程序和代理服务器之间使用的规则,常见的有 HTTP 代理、SOCKS5 代理。它们可能同时存在。比如你通过 SOCKS5 代理访问一个 HTTPS 网站:

浏览器
→ 使用 SOCKS5 规则连接代理服务器
→ 代理服务器连接 HTTPS 网站

在这里,SOCKS5 是你和代理服务器之间的代理规则,而 HTTPS 是浏览器和目标网站之间的网页通信规则。所以 SOCKS5 和 HTTPS 不是互相替代的关系,它们保护的是不同路段。这两种代理协议的具体区别,第六部分”代理的常见形式”会讲。

五、网站到底能看到你哪些信息?

当从客户端发送的请求到达服务器后,网站能知道些什么?很多人会以为网站只能看到 IP,但实际上,网站看到的是一组信息:网络信息 + 浏览器和设备环境 + Cookie 与账号状态 + 访问行为。

想要使用Claude的朋友要打起十二分精神了解这一块的底层原理,因为Anthropic通常不会只根据其中一个因素判断你,而是把这些信息组合起来分析。

1、网站首先能看到你的出口 IP 和它属于哪个网络

当你直接访问网站时,服务器通常能看到你的公网出口 IP——如果你使用代理,网站通常看到代理服务器的 IP;如果你使用 VPN,网站通常看到 VPN 服务器的 IP;如果你通过 VPS 访问,网站通常看到 VPS 的 IP。

网站拿到 IP 后,还可以查询它的相关属性,例如国家、地区、城市、运营商、网络类型,以及是否有异常使用记录。

不过,IP 定位不是 GPS。一个 IP 显示在洛杉矶,不代表用户一定坐在洛杉矶;它可能只是运营商或服务器的出口位于那里。

网站不仅看 IP 数字本身,还会看这个 IP 属于哪个网络。

这里有一个概念:ASN(Autonomous System Number),可以理解成一个大型网络组织的编号。

互联网不是由单一公司管理的,而是很多运营商、云厂商、大学、企业和数据中心的网络互相连接形成的,每个大型独立网络通常都有自己的 ASN。

所以平台查到一个 IP 后,可能知道它属于哪个网络组织;也可能知道它更像家庭宽带、移动网络,还是数据中心;还可能知道这个网络是否经常被代理、爬虫或自动化程序使用。

2、网站能从请求里看到什么?

浏览器向网站发送 HTTP 请求时,请求里会附带一些信息,帮助服务器理解你的环境和需求,这些信息常放在 HTTP 请求头里。一个简化后的请求大概长这样:

GET /articles HTTP/1.1
Host: example.com
User-Agent: Chrome
Accept-Language: zh-CN
Cookie: session=xxxxx

网站可能从中知道: 浏览器和系统的大概类型(Chrome、Safari、Firefox,Windows、macOS、Android 或 iOS); 语言偏好(简体中文、英语、日语); 来源页面(你是从 Google 搜进来的,还是从另一个网站点进来的); 以及有没有带登录 Cookie。

不过现代浏览器为了减少隐私泄露,会缩减或模糊部分信息,所以网站得到的不一定是精确的设备型号和系统版本。

3、Cookie 和本地存储怎样识别你?

Cookie 是网站保存在你浏览器里的一小段数据。网站第一次访问时,可能给你一个随机编号:“以后你再来时,把这个编号带给我。”

你下次访问时,浏览器会把 Cookie 一起发给网站。这样即使你的 IP 变了,网站仍可能认出这是同一个浏览器。

类似的,Local Storage 等本地存储数据也不会因为换 IP 就消失。

4、浏览器指纹:网站还能读出哪些关于你的信息?

网页里的 JavaScript 能读到很多浏览器环境信息:屏幕分辨率和窗口大小、系统时区、浏览器语言、设备内存、显卡渲染特征、已安装字体的部分特征……

单独看其中一个,很难确定你是谁——屏幕是 1920×1080 的人很多,用 Chrome 的人也很多。

但如果把很多特征组合起来,就可能形成一个相当独特的环境特征,这就是浏览器指纹。

比如一个环境可能是:美国出口 IP + 中国时区 + 浏览器首选简体中文 + macOS + 特定屏幕尺寸 + 特定显卡渲染结果 + 曾经保存过某个站点数据。

平台会看这些信息是否自然、是否稳定、前后是否发生异常变化。

除了浏览器指纹,还有两类额外的识别信号:

TLS 指纹:访问 HTTPS 网站时,浏览器在握手阶段会表达自己支持哪些加密算法、TLS 版本和扩展。不同浏览器、脚本、爬虫工具的”说法”不完全一样,网站可以据此判断这个请求到底像不像正常 Chrome 发出的。

WebRTC 泄露:WebRTC 是浏览器里用于音视频通话和点对点通信的技术,在某些环境下可能暴露额外的网络地址信息,这就是常说的”WebRTC 泄露”。

不过现代浏览器已经加了隐私保护,比如局域网地址有时会被隐藏或替换成随机名称,具体能看到什么取决于浏览器、系统、权限和网络配置。

5、网站能知道你使用了哪个 DNS 吗?

普通情况下,网站收到的 HTTP 或 HTTPS 请求里,并不会直接写着”这个用户使用的是哪台 DNS 服务器”。

所以网站通常不是只看一次普通网页请求,就能知道你的电脑把 DNS 设置成了运营商 DNS、Google DNS,还是 Cloudflare DNS。

但网站可以通过一种间接方式判断:假设一个网站让你的浏览器访问一个临时生成的特殊域名,比如 abc123.test.example.com。

这个域名以前从没被查过,所以浏览器、操作系统和递归 DNS 里通常都没有缓存,你的设备必须向递归 DNS 发起查询。

递归 DNS 随后会去询问这个域名的权威 DNS,如果这个权威 DNS 也由网站控制,网站就能在权威 DNS 的记录里看到:“是哪台递归 DNS 来查询了这个特殊域名?”

需要注意,权威 DNS 看到的通常是递归 DNS 服务器的地址,不一定是用户设备的真实公网 IP。

比如你的设备用运营商提供的递归 DNS,权威 DNS 看到的可能是运营商 DNS 服务器;用公共 DNS,看到的可能是公共 DNS 服务的某个解析节点。

6、平台怎样综合这些信息做风控?

成熟的平台通常不会因为某一个信号就立刻判定异常,而是把上面这些信息综合起来看,常见信号分四类:

  1. 网络环境:出口 IP、国家和城市、ASN、运营商、IP 类型、代理特征、历史滥用记录、连接速度和网络变化频率。
  2. 设备与浏览器环境:浏览器、系统、时区、语言、屏幕尺寸、字体、图形渲染、TLS 指纹和其他浏览器特征。
  3. 账号状态:Cookie、登录令牌、账号注册地区、绑定手机号、支付方式、历史登录设备和以往使用地点。
  4. 行为特征:登录时间、点击速度、访问频率、操作顺序、内容偏好、是否短时间大量请求,以及行为是否像真人。

六、代理、VPN 和 VPS 是什么?

正常访问网站时,数据大致会从你的设备出发,经过路由器和运营商网络,最后到达目标网站。

但是如果不让设备直接访问网站,而是在中间加入另一台服务器,网络路径会发生什么变化?

在开始之前,先解释两个接下来会反复出现的词: 网络流量:设备在网络中发送和接收的数据的总称,包括网页请求、图片、视频、DNS 查询等。 中转:数据不直接发给目标网站,而是先交给另一台服务器,再由它继续发送。

1、代理是什么?

这里的“代理”,指的是替用户访问外部网站的代理服务。

它的工作方式是:你的设备不直接把请求发给目标网站,而是先把请求交给代理服务器,代理服务器收到后,再替你访问网站,并把网站返回的内容转交给你。对于目标网站来说,真正连接它的是代理服务器,因此网站通常看到的是代理服务器的出口 IP,而不是你原本家庭宽带或手机网络的出口 IP(这正是前面第五部分讲的“网站首先能看到你的出口 IP”)。

代理通常只管你指定的程序(比如浏览器),不是整台电脑的所有流量都走代理;哪些程序走代理、怎么分流,下面”代理的常见形式”会讲到,操作细节在上一篇《Clash Verge 教程》里。

2、VPN 是什么?

VPN 的全称是 Virtual Private Network,中文叫“虚拟专用网络”。

它原本的作用,是让一台不在内部网络里的设备,通过互联网安全地接入另一个网络,比如员工在家里,通过 VPN 接入公司的内部系统。现在日常所说的消费级 VPN,通常是指设备先连接一台 VPN 服务器,然后让网络流量通过这台服务器访问互联网。

在理解 VPN 之前,要先理解“隧道”。这里的隧道不是真实存在的物理管道,而是一种网络上的逻辑通道——设备会把准备发送的数据进行封装和加密,再发给 VPN 服务器。普通中间网络只能看到设备正在与 VPN 服务器通信,难以直接读取隧道中的具体内容。

路径大致是:你的设备 → 加密的 VPN 隧道 → VPN 服务器 → 目标网站。VPN 服务器收到数据后,再把它转发给目标网站,所以目标网站通常看到的是 VPN 服务器的 IP。

VPN 有两种常见的工作方式。第一种是全部流量经过 VPN,设备的大部分网络访问都进入 VPN 通道。第二种是部分流量经过 VPN,只有指定网站、指定程序或指定网络经过 VPN,其他流量仍直接访问,这种做法也叫分流。

最后特别提醒一点:VPN 的加密只发生在“你的设备 → VPN 服务器”这一段。运营商通常能看到你连接了某台 VPN 服务器,但难以看清隧道里的具体内容;VPN 服务商则可能知道你连接了哪些网站;而目标网站不仅看到 VPN 服务器的出口 IP,仍然可以用 Cookie、账号和浏览器环境认出你。

所以 VPN 不等于完全匿名。它主要改变网络路径,并保护设备到 VPN 服务器这一段通信。

3、VPS 是什么?

VPS 的全称是 Virtual Private Server,中文通常叫“虚拟专用服务器”。大白话说,VPS 就是你租用的一台远程电脑。

云服务商用虚拟化技术,把一台物理服务器分成多台相对独立的虚拟服务器,每台都有自己的操作系统、CPU、内存、硬盘和公网 IP。

你可以远程登录这台 VPS,在上面部署网站、运行程序、存储文件。

VPS 本身不是代理,也不是 VPN,它只是一台你可以随意使用的远程电脑。但你可以在这台电脑上安装代理程序或 VPN 服务,让它变成你的出口服务器(怎么装可以参考上一篇《Clash Verge 教程》)。

4、商业 VPN、VPS 自建 VPN 和 VPS 自建代理怎么选?

在实际使用中,我们通常会面对三种方案:直接购买商业 VPN、租 VPS 自建 VPN、租 VPS 自建代理。它们都可能改变目标网站看到的出口 IP,但使用方法、维护成本和适用场景还是有很大区别。

先说一个容易绕晕的点:这里说的”商业 VPN”和”自建 VPN”都带”VPN”两个字,但”商业”指的是”由服务商运营、付费订阅”,不是技术差异。自建 VPN 用的也是 VPN 隧道技术,但它不是商业 VPN——服务器是你自己租的、软件是你自己搭的,你只付 VPS 月租,不向任何人买”VPN 服务”。

1)购买商业 VPN

由服务商统一提供服务器、客户端和网络配置,你只需要安装软件、登录账号、选择地区并连接。

最大的优点是方便。因为是由服务商负责维护服务器、更新软件和处理故障,不需要你自己掌握 Linux、服务器配置和防火墙知识,而且通常提供多个国家和地区的服务器,适合经常切换地区、同时在手机和电脑上使用的人。

主要缺点是共享:商业 VPN 的服务器通常被很多用户共用,同一个出口 IP 可能同时被大量用户使用,如果其中一些用户做过异常操作,这个 IP 更容易遇到验证码、限速或网站限制。

另外,VPN 服务商处在你的网络出口位置,仍可能知道你连接了哪些服务器、流量多大(隐私问题)。

2)使用 VPS 自建 VPN

先租一台远程服务器,再在上面安装 VPN 服务,你的设备连接它后,网络流量通过它访问互联网。

与商业 VPN 相比,服务器主要由你自己使用,出口 IP 相对固定,也不会频繁与大量陌生用户共享,适合长期使用同一个地区和固定出口。

优点是控制权更高:服务器地区、VPN 软件、哪些设备能连、哪些流量走 VPN,都由你决定。代价是需要自己维护——装软件、配密钥、管防火墙、盯系统更新;服务器宕机、IP 被限制或线路变差,也得自己解决。

另外要注意!VPS 的 IP 通常属于数据中心或云服务商,并不等于住宅 IP,也不一定比商业 VPN 的 IP 更受网站信任。

3)使用 VPS 自建代理

同样先租一台服务器,但上面运行的是代理服务,而不是 VPN 服务。

它与自建 VPN 最大的区别在于流量控制方式。自建 VPN 通常从设备网络层面处理更多流量,自建代理则通常由具体程序决定要不要走代理。例如只让 Chrome 走代理,其他软件继续用家里的网络。

这种方案更灵活,适合程序开发、API 调用、爬虫测试,或者只需要某个浏览器使用固定出口的场景。

但它也更容易出现配置不完整的问题,比如浏览器走了代理、其他软件没走,或者网页走了代理但部分 DNS 查询仍走本地网络。

4)VPS 自建代理 vs VPS 自建 VPN:原理到底差在哪?

如果你看过我上一篇《Clash Verge 从0~1的基础教程》,下面这些词应该都不陌生:节点、订阅、配置方案、系统代理、TUN 模式、规则/全局/直连模式。所以这一节我会结合 Clash Verge,解释”自建代理 vs 自建 VPN”的区别。(我用的是自建代理)

先记住一句话的区别:VPN 建的是”隧道”,代理做的是”转发”。

① VPS 自建 VPN 的原理:挖一条加密隧道

在 VPS 上装一个 VPN 服务(常见的有 WireGuard、OpenVPN),你的设备会先和 VPS 建立一条”隧道”。设备上要出去的流量,先被封装、加密,塞进隧道送到 VPS,VPS 解密后再转发给目标网站:

你的设备(网卡层面,所有流量)
→ 加密隧道
→ VPS 上的 VPN 服务
→ 解密、转发
→ 目标网站

它有三个关键特征:

第一,网卡层面接管。VPN 会在你的设备上创建一个虚拟网卡,从操作系统层面接管流量,所以几乎所有应用、所有流量都会进隧道,不管这个软件支不支持代理。

第二,设备到 VPS 全程加密。VPN 天生就是加密隧道——不只是浏览器,所有 App 的数据在隧道里都会被加密封装,这是它不用额外配置就自带的能力。

第三,隧道特征太明显。WireGuard、OpenVPN 这些 VPN 协议有自己固定的握手方式和数据包特征,GFW(防火墙)只要做主动探测,就能认出”这里有一条 VPN 隧道”,然后针对性干扰。

② VPS 自建代理的原理:把请求交给 VPS 转发

在 VPS 上装一个代理服务(VLESS、Trojan、Shadowsocks 这类),你的设备通过代理软件(比如 Clash Verge)把请求转发给 VPS,VPS 再替你访问网站:

应用(Chrome、App)
→ 代理软件(Clash Verge)
→ VPS 上的代理服务
→ 目标网站

和 VPN 的关键区别是三点:

第一,应用/规则层面控制。流量走不走代理,由 Clash Verge 的规则决定——国内网站直连、国外网站走代理、广告域名拦截,这就是上一篇教程”规则模式”那张图在做的事。国内速度不受影响,这是 VPN 默认做不到的(VPN 默认整机全走隧道)。

这里是我上一篇教程里的”规则”页面截图,可以看到每条规则决定流量是直连(DIRECT)、走代理(PROXY)还是拦截(REJECT):

第二,访问网站更真实。VLESS 本身是轻量转发协议,真正的精髓是搭配 REALITY 这类伪装技术:你的流量看起来就是在正常访问一个真实网站(比如 aws.amazon.com),TLS 握手和数据包特征都和真实访问几乎一样。GFW 主动探测时,看到的只是一个”正常的 HTTPS 访问”,认不出这是代理。

第三,是否加密看协议。VPN 的隧道天生全程加密(上面①讲过),代理反而是”不一定加密”——裸 SOCKS5、HTTP 代理是明文转发,只有 VLESS+REALITY、Trojan、Shadowsocks 这类协议才加密加伪装。所以”代理不加密”和”VPN 不加密”都是误解,要看具体协议。

规则决定”走不走代理”之后,具体用哪个出口,就由 PROXY 这样的代理组决定——这是我上一篇教程里代理组的界面,当前选择的就是 DMIT-VPS:

③ 为什么科学上网,代理(VLESS+REALITY)比 VPN 更合适?

科学上网要过的最大一关是 GFW,而 GFW 抓的是”特征”,不是”加密”:

  • 你要访问的网站内容本身已经是 HTTPS 加密的,所以”设备到 VPS 多一层隧道加密”对科学上网来说不是核心价值;
  • 真正决定你稳不稳的,是”这段流量能不能被认出来是代理/VPN”。

REALITY 的伪装就是专门解决这个的。它让代理流量和真实网站流量无法区分。而 VPN 隧道协议特征太明显,反而更容易被主动探测盯上。

再加上代理的分流能力(国内直连、国外代理),日常体验也比 VPN 整机全走舒服得多。

所以现在不管机场还是自建,主流科学上网方案基本都是 VLESS/REALITY、Trojan 这类代理协议,而不是自建 VPN。你在我上一篇教程里看到的 DMIT-Reality 节点,用的就是这套方案:

那 VPN 的优势在哪?在整机完整接管和组网:比如所有 App 的流量都必须加密(包括不走代理的冷门协议)、在外地安全接入公司内网、把家里的 NAS 和手机连进同一张网。

这些是科学上网之外的需求,VPN 更擅长,但它隧道特征太明显,不是过墙的首选。

5、代理的常见形式:HTTP 代理与 SOCKS5

“代理”不是单一的一种东西,实际使用中你会见到几种具体的代理形式。

HTTP 代理是专门按照 HTTP 相关规则接收和转发请求的代理。

你访问普通 HTTP 网站时,浏览器把网页请求交给代理服务器,代理服务器再替你请求目标网站。访问 HTTPS 网站时,浏览器会先让代理服务器建立一条到目标网站 443 端口的中转通道(这个过程叫 CONNECT),通道建立后,浏览器再在这条通道里完成 TLS 握手和 HTTPS 通信。

SOCKS5 是一种比 HTTP 代理更通用的代理协议。它不局限于浏览器,它只按你给的目标地址和端口帮你建立连接、转发数据,所以聊天软件、下载工具、开发程序都可以用它。

应用告诉 SOCKS5 代理”我要连哪个目标地址、哪个端口”,SOCKS5 就负责帮它建立这条连接,再把数据原样转发。它常见支持 TCP 连接,也能转发 UDP 数据(是否支持看代理服务器的实现)。

在本地代理软件里,SOCKS5 通常表现为一个本机入口,比如 127.0.0.1:1080。代理软件在你电脑的 1080 端口开了一个口子,应用把请求交给它,再由它交给远程节点。

SOCKS5 本身不加密——它只负责转发,不负责加密,是否安全要看访问的目标有没有 HTTPS。如果访问的是普通 HTTP 网站,中间经过的 SOCKS5 代理是能看到明文内容的。

6、显式代理与透明代理

显式代理:应用程序明确知道自己正在使用代理。比如你在浏览器里手动填写代理地址、端口、用户名和密码,浏览器就主动按照代理协议连接代理服务器。

透明代理:应用程序本身没有配置代理,但流量在经过某个设备或软件时被自动转发到了代理服务。

比如公司网关统一处理内部设备的流量;又比如本机代理软件的 TUN 模式通过虚拟网卡接住流量。对应用来说,它可能以为自己正在直接访问网站,实际上流量已经被接管了。

7、实战中为什么部分软件没被代理管住?

开头第四层说过,公众号、视频号的抓取工具经常需要设置代理。但很多人会遇到”浏览器走了代理,某个工具却还是直连”的问题。病因基本可以从这几个点找一下:

  • 工具不读取系统代理,而 TUN 又没开——它的流量根本没进代理软件;
  • TUN 开着,但该目标被路由排除了;
  • IPv4 走了代理,IPv6 没走,网站看到的是 IPv6 的出口;
  • 请求进了代理软件,但命中了 DIRECT 规则(国内网站直连);
  • 规则顺序错误,先被宽泛规则匹配了;
  • 工具保留了切换代理前已经建立的旧连接,重启工具才生效。

七、机房 IP、住宅 IP、ISP IP、移动 IP是什么?

同样是一个美国 IP,网站对它的判断可能完全不同。有的 IP 来自 AWS、Google Cloud 或 VPS 机房;有的来自普通家庭宽带;有的来自手机 4G/5G 网络;还有一些是商家的营销名词。

先记住最重要的分类关系:

按网络来源分类:机房 IP / 住宅 IP / 移动 IP / ISP 类 IP
按是否变化分类:动态 IP / 静态 IP
按使用人数分类:独享 IP / 共享 IP
按代理切换方式分类:固定 IP / 粘性 IP / 轮换 IP

1、机房 IP是什么?

机房 IP,也叫数据中心 IP(Datacenter IP),是分配给云服务器、VPS、托管服务器等基础设施的 IP。你买一台 VPS,服务商给你的公网 IP 通常就属于机房网络。

优点:便宜、速度快、线路稳定,IP 容易长期固定,适合自建 VPN 或代理、部署网站和 API。

缺点:网站很容易识别出它来自数据中心。尤其是银行、支付、票务、流媒体、社交平台等,对机房 IP 检查更严格。

但是一个长期独享、没有滥用记录、使用行为正常的机房 IP,比一个被大量用户共用、历史记录混乱的住宅代理 IP 更稳定。

另外,VPS 的 IP 会被服务商循环使用,你新买的 IP 很可能是上一个客户用过的,可能带着历史记录,所以不要默认它是“全新”的。

2、住宅 IP是什么?

住宅 IP(Residential IP)来自家庭宽带运营商,是普通家庭用户上网时的出口。网站看到住宅 IP,通常认为这是一个真实家庭在联网,而不是一台机房服务器,所以住宅 IP 在风控眼里往往更自然,也通常比机房 IP 更贵。

但是住宅 ≠ 动态。 住宅说的是网络来源(来自哪条宽带),动态说的是地址会不会变。普通家宽更常见动态 IP,VPS 更常见静态 IP。

住宅 IP ≠ 干净的 IP。 来源天然不代表历史干净:住宅 IP 同样可能被大量代理用户共享、被爬虫用过、留下过垃圾记录。一个被用滥的住宅 IP,反而不如一个干净独享的机房 IP 稳。

3、移动 IP是什么?

移动 IP 来自手机运营商的 4G/5G 网络出口。手机流量上网时,数据经过基站和运营商网络再出国。因为运营商的公网 IP 有限,通常用大规模 CGNAT,很多手机用户共享同一个出口,所以网站很难只凭一个移动 IP 定位到具体某台手机。

为什么移动 IP 有时信任度较高?因为正常手机用户本来就大量共享出口,平台不敢因为某个出口里的一个用户出问题就封整个 IP,容易误伤。但这不代表移动 IP 不会被风控,平台还是会结合设备信息、账号历史和行为判断。

移动代理就是把 4G/5G 出口提供给其他人用(插 SIM 卡的设备当节点),网站看到的通常是移动运营商 IP。这种服务价格一般较高,因为要养 SIM 卡和流量套餐。

4、ISP IP是什么?

ISP 的全称是 Internet Service Provider(互联网服务提供商)。宽泛地说,家宽和手机 IP 都是 ISP 提供的。

但在代理市场里,“ISP 代理”或”静态 ISP IP”有更具体的含义:IP 的登记看起来属于运营商,但服务器实际放在数据中心。

它把两头的好处都占了:

  • 信任上像住宅 IP:IP 数据库里显示它属于运营商,风控看起来不像”数据中心”,比机房 IP 更不容易被标记;
  • 使用上像机房 IP:长期固定、全天在线、独享或少量共享,速度和稳定性接近机房,比真实住宅代理又快又稳。

所以ISP IP有机房的速度 + 运营商的可信外观,价格也介于两者之间。适合长期养账号、广告投放、电商多店铺。

另外还会看到”双 ISP”的说法,它是 ISP 代理的商家变体,含义有两层:

  • 归属上:查 IP 时 ASN 和 company 都显示是运营商(单 ISP 只有 ASN 是运营商);
  • 线路上:代理服务器同时接了两家以上运营商的线路,多一条备份、稳定性更高。

它本身不改变”服务器在机房”的本质,有的”双 ISP”其实是广播 IP——地址注册在 A 运营商名下,流量却从 B 机房出来,ASN 和路由对不上,反而更容易被风控识别。

5、动态、静态、独享、共享IP是什么?

概念大白话
动态 IP地址会变,重新拨号或过段时间可能换。家宽、手机网络常见
静态 IP地址长期固定。VPS、服务器、企业专线常见
独享 IP主要给你一个人用。历史可控制,但”独享”不等于匿名——平台更容易把它和你的账号绑定
共享 IP很多人共用一个出口。商业 VPN 常见,成本低,但别人的行为会影响这个 IP 的声誉

另外还有按切换方式分的三个词:固定 IP(长期不变)、粘性 IP(Sticky,一个会话内不变,超时或重连后可能换)、轮换 IP(Rotating,每隔一段时间或每次请求自动换)。

6、不同场景应该怎么选?

使用场景更适合
日常浏览、多设备使用商业 VPN(方便,多地区)
长期固定工作出口VPS 自建 VPN(固定 IP,控制权高)
只让某个程序走特定出口代理(按程序/域名分流)
公司白名单 / 远程办公固定机房 IP 或静态 ISP 类 IP(稳定和独享最重要)
普通个人账号长期用稳定最重要——稳定的普通机房 IP,有时比不断轮换的住宅 IP 更自然
大量公开数据抓取轮换住宅或移动代理(大量不同出口)
类型典型来源
机房 IPVPS、云服务器、数据中心
住宅 IP普通家庭宽带
移动 IP4G、5G 运营商
ISP 类 IP运营商地址资源、机房托管
商业 VPN IPVPN 服务商服务器
VPS 自建出口自己租用的 VPS

7、拿到一个 IP 后,怎么快速检查?

如果拿到一个新 IP(比如新买的 VPS),让Codex按这个顺序快速过一遍:

1)查出口 IP——确认它实际是什么; 2)看归属和 ASN——确认是不是商家说的那种(机房/住宅/移动); 3)查一下历史信誉,再测测延迟和丢包。

八、怎样看懂节点名称和代理服务

这一节内容主要是把上一篇Clash Verge没讲清楚的内容展开讲讲。

假设你用 Chrome,通过一个美国节点访问 YouTube,整条路是:

Chrome
→ 本地代理软件
→ 美国代理服务器
→ YouTube

这条路可以分成三部分。 第一部分是 Chrome 怎样把流量交给本地代理软件,常见方式有 HTTP 代理、SOCKS5、系统代理和 TUN。 第二部分是本地代理软件怎样连接美国代理服务器,这时会用到 Shadowsocks、VMess、VLESS、Trojan 或 Hysteria 2。 第三部分是美国代理服务器替你连接 YouTube。

节点名称里的不同名词,有不同的分工:

分工大白话常见名称
远程代理规则本地代理软件和远程服务器按什么规则沟通Shadowsocks、VMess、VLESS、Trojan、Hysteria 2
数据承载方式代理数据是直接传,还是先装进另一种格式RAW、WebSocket、gRPC
节点安全保护本地代理软件到远程服务器这一段怎样加密和验明身份TLS、REALITY、协议自身加密
基础运输数据最底层靠什么方式在网络中移动TCP、UDP、QUIC

UUID、密码和密钥则像通行证,用来证明你有权使用这个节点。IP、域名和端口负责告诉软件远程服务器在哪里。

1、常见节点名

节点的技术配置浓缩成名字,一般由远程代理规则、数据承载方式、节点保护方式和基础运输规则组成。以下就只有在买套餐的时候可能遇到,留个印象即可,没太大必要深挖(比较浪费时间),实在想知道让Codex判断一下~

节点名称远程代理规则数据怎样承载节点怎样保护基础运输
VLESS + TCP + TLSVLESSRAW,界面写作 TCPTLSTCP
VLESS + WebSocket + TLSVLESSWebSocketTLSTCP
VLESS + gRPC + TLSVLESSgRPC / HTTP/2TLSTCP
VLESS + TCP + REALITYVLESSRAW,界面写作 TCPREALITYTCP
TrojanTrojanTrojan 自己的数据格式TLSTCP
ShadowsocksShadowsocksShadowsocks 自己的数据格式Shadowsocks 自身加密TCP / UDP
Hysteria 2Hysteria 2QUIC 数据流和数据报QUIC 中的安全机制UDP

2、直连、中转和专线节点

服务商介绍节点时,常出现”直连节点""中转节点""专线节点”等说法。它们描述的是你的设备到最终代理服务器之间的路径结构。

直连节点:你的设备直接连接最终的海外代理服务器。结构简单,但体验很依赖你本地运营商到海外服务器的国际线路,高峰期容易延迟高、丢包。

你的设备
→ 海外代理服务器
→ 目标网站

中转节点:你的设备先连接一台距离较近或线路较好的中转服务器,再由中转服务器连接海外出口,可以改善前半段线路。

你的设备
→ 中转服务器
→ 海外出口服务器
→ 目标网站

专线节点:服务商在部分网络路径上使用更稳定、受管理的专线连接,而不是完全依赖普通公网随机路由(通常也需要中转)。

3、套餐中的流量和倍率

机场套餐通常会限制每月可用流量,比如每月 100 GB,上传下载都算,用完可能被暂停或限速。

什么是倍率?倍率表示使用这个节点时,套餐流量按什么比例扣除。实际用了 1 GB:0.5 倍节点扣 0.5 GB,1 倍节点扣 1 GB,2 倍节点扣 2 GB。高倍率节点通常对应成本更高的线路,但倍率只是计费规则,不等于速度更快。

九、调用 AI API:接口、流式传输和踩坑

API大家应该都不陌生,只要你玩AI,就应该知道这个东西!

1、API:程序之间怎么说话?

API(Application Programming Interface,应用程序编程接口)是程序之间约定好的接口:一个程序按规定的格式去请求,另一个程序按规定的格式返回结果。

你可以把 API 想成餐厅的”点菜单”:你不进后厨(不碰服务器内部),只按菜单点菜(发请求),厨房做好端出来(返回结果)。

常见说法:

  • API Key(密钥):程序访问 API 时带的”身份通行证”,证明你有权限、并按用量计费,类似会员卡。注意保密,泄露了别人能用你的额度。
  • REST API:最主流的 API 风格,用 HTTP 的 GET/POST 等请求方式;
  • Webhook(回调):反过来,不让你主动问,而是”有事情发生就通知你”。比如 AI 任务跑完了,服务器主动 POST 到你的地址,类似快递到了短信提醒你。

2、AI 聊天怎么做到”打字机”效果?——SSE 和 WebSocket

用 ChatGPT/Claude 时,回答是一段一段”流”出来的,这就是流式传输。它不是等全部算完再一次性给你,而是”边算边推”,所以你看到的是打字机效果。

实现这个的核心是 SSE(Server-Sent Events,服务器推送事件):服务器 → 浏览器 的单向长连接,AI 生成一个 token 就推一个,可以直接看到AI思考的过程。

SSE(单向流)

ChatGPT 服务器 → 边生成边推 → 浏览器 → 你看到不停打字的效果

特点:基于 HTTP、实现简单、自带断线重连。OpenAI/Anthropic 的 API 流式输出默认就是 SSE。

WebSocket(双向实时):像”打电话”,两边随时都能说话。适合需要客户端回传指令的场景,比如多轮对话里你要”打断/取消生成”,最好用的场景就是现在ChatGPT Live模式,没用来学英语的建议一定要试一下!

3、调用 AI API 必踩的坑:限流、超时、重试

你调用DeepSeek/各种大模型的API总不可能一帆风顺,都得踩踩坑。

限流(Rate Limit):AI 服务商会限制你每分钟/每天最多请求多少次、多少 token,超了就返回 429(Too Many Requests)。这是为了保护服务器,不是 bug。应对方法:控制并发、减少请求频率、预留配额。

超时(Timeout):AI 生成可能很慢(简单问题 1 秒,复杂推理 30 秒以上),如果只设一个总超时,要么误杀长输出,要么连接挂死干等。正确做法是分层:

  • 连接超时:设短一点(几秒),连不上就是链路问题;
  • 流式超时:设”首 token 超时”——超过 X 秒第一个字还没出来,说明出问题了,该断开。

重试(Retry):网络抖动、临时限流、服务器 5xx 错误,都可能失败。但不是每次失败都该重试:

  • 可以重试:429、500/502/503、连接超时(都是瞬态问题);
  • 不该重试:400 参数错、401 没权限(重试也白搭)。

了解了以上所有概念之后,之后解决网络相关问题的时候,才不至于每次对着Codex说:“请帮我用大白话解释这一段,我看不懂。。。”

都看到这里了,相信你也不是一般人,那我再抛出一个问题,大家一起思考一下:你能对着Codex说用大白话理解这一段内容,那别人能不能这样做?你和他之间的核心差距在哪里?

我对这个问题的答案,就是写这系列文章的原因。