常见问题
← 返回全部问题

支持哪些代理类型?HTTP、SOCKS5、SSH 有什么区别?

发布时间:2026-05-06 访问量:6180 全文约 5109 字 分类:代理与网络
回答摘要常见的接入方式是 HTTP、HTTPS、SOCKS5、SSH 四种,官方帮助中心的代理章节也是按这几种加动态代理、API 提取链接来分的。真正的差别只在三处:域名在本机还是在代理端解析、有没有 UDP 通道、到代理这一跳是否加密。选法其实很简单——代理商给你哪种协议就选哪种;两种都给且你要用固定线路时,优先 SOCKS5。

客户端支持的代理接入方式是 HTTP、HTTPS、SOCKS5、SSH 这几种,官方帮助中心的代理章节就是按「设置 http/https/sock5/ssh 代理 IP」「设置动态代理 IP」「使用代理 IP 平台 API 提取链接」来分篇的。听起来是四五个选项,但对运营来说要记的只有一句:代理商给你哪种协议,你就选哪种。这四种不是「好中差」的排序,而是四种不同的搬运方式,选错了不会「慢一点」,而是直接连不上。下面把它们的差别讲清楚,重点在三个真正会影响你的地方:域名在哪里解析、有没有 UDP 通道、到代理这一跳有没有加密。

先搞清楚:代理在中间到底做了什么

没有代理的时候,你的电脑直接和目标网站建连接,网站看到的来源 IP 就是你家宽带的出口 IP。挂上代理之后,中间多了一台服务器:你的请求先到这台服务器,由它替你去访问网站,再把结果带回来。网站看到的来源 IP 变成了这台服务器的 IP,这就是「换 IP」的全部原理。

所谓协议,指的就是你的电脑和这台中间服务器之间用什么规矩说话。规矩不同,中间服务器能看到多少、能帮你做多少事就不同。这也解释了一个常见困惑:为什么同一条线路,代理商既能给你 HTTP 端口又能给你 SOCKS5 端口——线路是同一条,只是门口的接待方式换了一种。

提示 协议是「怎么连」,IP 类型(住宅、机房、移动)是「连到什么样的线路上」,这是两个互不相干的维度。一条住宅 IP 可以用 SOCKS5 接入,一条机房 IP 也可以用 HTTP 接入。IP 类型怎么挑属于《住宅 IP、机房 IP、移动 IP 怎么选?IP 纯净度怎么看》那篇,本篇只讲协议。

HTTP 代理:能读懂网页请求的那一类

HTTP 代理是最老、兼容性最好的一种。它的特点是看得懂 HTTP 请求本身。你要访问一个 http 开头的网址时,客户端会把完整网址交给代理,代理拆开这个请求,自己去取回内容。因为它读得懂请求,所以它天然知道你要访问哪个域名、哪个路径,也能顺手做缓存、改请求头这些事。

访问 https 网站时走的是 CONNECT 隧道

现在几乎所有电商后台都是 https 的,这时候情况会变一下。加密内容代理拆不开,也不该拆,于是客户端会先对代理说一句 CONNECT 目标域名:443,意思是「请帮我和这个地址接一条管子」。代理接通之后回一个成功状态,接下来双方就只负责原样搬运加密字节,不再理解内容。这条管子就叫 CONNECT 隧道

这里有个对排查很有用的结论:隧道建起来之后,代理能看到的只有目标地址加端口、连接时间、传了多少字节,看不到你在页面上做了什么,因为真正的加密是你的浏览器和网站之间端到端完成的。反过来说,代理回了成功状态只证明「管子通了」,不证明后面的网站能打开——这也是为什么有时候代理检测显示正常,具体某个站却还是打不开。

提示 「HTTP 代理」和「HTTPS 代理」这两个词在不同代理商那里含义不一样,容易踩坑。多数时候写 HTTPS 只是想说明「这条 HTTP 代理支持用 CONNECT 访问 https 网站」,本质还是 HTTP 代理;少数时候它指的是「你的电脑到代理这一跳本身也用 TLS 加密」。填之前不用纠结名词,按代理商给的那个协议名选就对了。

SOCKS5:只负责搬字节,不看内容

SOCKS5 比 HTTP 代理低一层,它不关心你传的是网页、邮件还是别的什么,只做一件事:把一条 TCP 连接原样转发出去。你告诉它「我要连某个地址的某个端口」,它接通,然后两头搬字节。因为它不理解内容,所以它比 HTTP 代理更通用——任何基于 TCP 的东西它都能搬。

  • 通用:不限于网页流量,任何 TCP 连接都能转发,所以代理商普遍把它作为主推协议。
  • 域名可以交给代理去解析:这是它和 HTTP 代理最实际的一处差别,下面单独讲。
  • 有 UDP 通道:协议里定义了 UDP 转发的能力,HTTP 代理没有这个概念。
  • 握手多几步:连接建立时要先协商认证方式、再发认证、再发目标地址,比 HTTP 的一问一答多几个来回,但这点差距在实际使用中基本感觉不到,线路质量的影响远大于它。
  • 账号密码是明文送到代理的:SOCKS5 的账密认证在协议层面不加密,所以别把常用密码拿来当代理密码。
图注:四种协议在「搬什么、域名在哪解析、有没有 UDP、这一跳是否加密」四个维度上的差别(示意图)
图注:四种协议在「搬什么、域名在哪解析、有没有 UDP、这一跳是否加密」四个维度上的差别(示意图)

SSH:先建一条加密隧道,再把它当代理用

SSH 本来是用来远程登录服务器的工具,但它顺带提供了一个能力:登录成功之后,可以让本机的流量顺着这条已经加密的通道出去,从服务器那一端落地。效果上等于得到了一个代理,而且你的电脑到服务器这一段是加密的——这是它和前面几种最大的不同。

代价是门槛更高。你需要的不是「一条代理」,而是一台你有登录权限的服务器,认证用的是 SSH 账号密码或者密钥文件。它适合手里本来就有海外服务器的团队,或者代理商直接按 SSH 账号形式售卖的情况。如果你是从代理平台按条买 IP,拿到的基本都是 HTTP 或 SOCKS5,用不到这一项。

注意 SSH 那一层加密只保护「你到服务器」这一段,服务器再往外走还是普通流量。所以它不是「更安全所以更不容易被识别」的意思,也不能理解为多一层保护。选协议的出发点只有一个:能不能稳定连通、和你的业务环境是否匹配。

四种协议横向对比

协议 转发的是什么 域名在哪里解析 UDP 通道 到代理这一跳 典型来源
HTTP HTTP 请求本身,代理读得懂 一般由代理端解析 明文 代理平台最常见
HTTPS / CONNECT 建好隧道后原样搬运加密字节 一般由代理端解析 内容有 TLS 保护 同上,多为同一端口的能力说明
SOCKS5 任意 TCP 字节流,不看内容 本机或代理端都可以 协议里有,但要两端都支持 明文 代理平台主推
SSH 先加密再从服务器那端落地 一般由远端解析 看具体实现 已加密 自有服务器或按 SSH 账号售卖

这张表里最值得记住的一行是 SOCKS5 的「本机或代理端都可以」。其余几列在日常使用中你几乎感觉不到差别,但域名解析这一处会实打实影响你看到的检测结果。

域名在哪里解析:最容易被忽略的一处差别

访问网站的第一步是把域名翻译成 IP,这一步叫 DNS 解析。问题是:这个翻译动作由谁来做?如果由你本机做,那么本机就得先自己去问一次 DNS 服务器,这次查询没有走代理;如果交给代理去做,整个过程就都在代理那一端完成。

HTTP 代理因为拿到的是完整网址或者 域名:端口,通常自然由代理端解析。SOCKS5 则是两种都允许——协议里既可以送一个域名过去,也可以送一个已经解析好的 IP 过去。很多工具用两个不同的写法来区分这件事:

socks5://账号:密码@主机:端口     先在本机把域名解析成 IP,再把 IP 交给代理
socks5h://账号:密码@主机:端口    把域名原样交给代理,由代理那一端去解析

为什么这件事值得你知道?因为「本机解析」意味着你用的是本地网络的 DNS,而本地 DNS 的位置和你代理 IP 的位置往往不在一个国家。这类不一致本身不影响能不能打开网页,但会让你在检测站上看到「IP 是 A 地、DNS 是 B 地」的结果,然后误以为代理没生效。浏览器内部的网络栈由内核决定,通常不提供让你手动切换本地/远端解析的开关,所以更实用的做法是:发现 DNS 归属地对不上时,先确认这是解析位置的问题,而不是代理坏了

提示 时区、语言、IP、DNS 之间要不要保持一致、怎么保持一致,是《时区、语言、IP 不一致会被识别吗?怎么保持一致》那篇的内容。本篇只说明「为什么 SOCKS5 会出现两种解析位置」这个协议层面的原因。

UDP:只有 SOCKS5 有这条通道

平时上网绝大部分是 TCP,但有些东西走 UDP,比较典型的是音视频通话和浏览器里的实时通信能力。HTTP 代理没有转发 UDP 的机制,SOCKS5 协议里定义了(叫 UDP 转发),但注意这只是「协议允许」,不等于「你买的这条线一定支持」——服务端、网关、防火墙任何一环没实现或者挡掉,它就用不了。

对跨境电商日常运营来说,这一条通常不构成选择依据,因为登录、上货、看后台都是 TCP。真正让人在意的是浏览器实时通信会不会暴露真实 IP,但那件事是在浏览器层面设置的,和你选 HTTP 还是 SOCKS5 关系不大,属于《WebRTC 会泄漏真实 IP 吗?三种模式怎么设》那篇。

加密:协议本身并不给你加密

这是最容易被误解的一点。HTTP 代理和 SOCKS5 在你的电脑到代理服务器这一段是明文的,包括 SOCKS5 的账号密码。那为什么大家还敢用它登录后台?因为真正保护你账号密码的是网站自己的 https:内容在你的浏览器里就加密好了,代理只是搬运一个它拆不开的包裹。

所以正确的心态是:代理协议负责「换出口 IP」,不负责「保护内容」,保护内容那件事由网站的 https 完成。SSH 是唯一自带这一跳加密的,但如上所述,它的价值在于你本来就有服务器,而不在于「更安全」。

静态 IP 与动态 IP:两种不同的接入形态

除了协议,代理还有一个和它平行的维度:这条线路的出口 IP 会不会变。这决定了你在客户端里的配置方式完全不同。

接入形态 你拿到的东西 出口 IP 变不变 适合什么 客户端里怎么体现
静态 / 固定 一条固定的 主机、端口、账号、密码 长期不变(到期或代理商调整才变) 长期养一个店铺账号,最常见 四个字段填死,一个窗口对一条
动态 / 轮换 同样是一组固定入口,但出口按规则轮换 每次连接或每隔一段时间换一次 需要大量不同出口的场景 填法和静态一样,变化发生在代理商那端
API 提取链接 一个网址,访问它返回若干 ip:端口 每次提取拿到的都可能不同 批量建窗口、按需领取 先取回再填,或由客户端按链接取

三种形态里,动态代理有一个很反直觉的地方:你在客户端里填的东西和静态几乎一样,因为轮换是在代理商那一端发生的,入口地址并没有变。所以如果你用的是动态线路,看到每次检测出来的 IP 都不一样,那是正常现象,不是配置错了。

注意 长期运营同一个平台账号时,出口 IP 频繁跳动反而会增加被系统误判的概率,也会让你自己排查问题时失去参照。这类场景优先选固定出口,动态线路留给确实需要大量不同出口的用途。这里说的是降低误判、让环境更稳定,不涉及任何绕过平台机制的做法,平台政策请以官方最新说明为准。

怎么选:三句话决定

  1. 代理商只给一种协议:直接选那一种,没有可优化的空间。协议不是你能挑的,是线路本身决定的。
  2. 同时给了 HTTP 和 SOCKS5:优先 SOCKS5,它更通用,遇到问题时可排查的余地也更大;如果 SOCKS5 连不上而 HTTP 能连,就用 HTTP,不用觉得吃亏。
  3. 手里有自己的海外服务器:可以考虑 SSH;否则不用考虑这一项。
  4. 拿到的是一个网址而不是一串地址:那是 API 提取链接形态,先用它取回 ip:端口 再配置。
  5. 不确定时的兜底动作:把代理商给你的原文截图存下来,按它写的协议名选,填完立刻用客户端自带的检测功能验一次。
提示 客户端里代理相关的字段名称与所在位置,以你本机客户端实际界面为准,不同版本的措辞和层级可能略有差异。本篇不描述具体菜单路径。

几个常被问到但答案很短的问题

  • 选 SOCKS5 会比 HTTP 快吗:不会有可感知的差别,决定速度的是线路质量和物理距离,不是协议。
  • 一个窗口能不能同时配两种协议:一条代理只有一种接入方式,填一种即可,不存在同时生效。
  • 协议选错会怎样:表现是直接连不上或检测不通过,不会「凑合能用」。这也是排查时第一件要核对的事。
  • 支不支持免密(IP 白名单):这是认证方式,不是协议,HTTP 和 SOCKS5 都可能支持,取决于代理商。
  • 代理商给的是域名不是 IP,能填吗:可以,但它需要先被解析一次,网络环境不好时这一步会成为额外的失败点。

这些内容不在本篇范围内

字段具体怎么填、账号密码和白名单和提取链接分别怎么配、批量导入什么格式,看《代理怎么填?账号密码、白名单、提取链接分别怎么配》;填完连不上、检测超时、显示 IP 不对怎么一步步查,看《代理连接失败、检测超时、显示 IP 不对怎么排查》;住宅 IP 和机房 IP 怎么选、纯净度怎么看,看《住宅 IP、机房 IP、移动 IP 怎么选?IP 纯净度怎么看》。本篇只回答「有哪些协议、它们差在哪、我该选哪个」这一个问题。

同类问题