BestVPN - 高速VPN与全能AI助手

Shadowsocks SOCKS5 设置教程:从服务器参数到本地代理

更新于 2026-11-01 · bv2.best

简答:Shadowsocks 客户端连接成功后,通常会在本机提供一个 SOCKS5 代理,常见地址是 127.0.0.1,端口以客户端显示或配置为准。设置时先填写服务器地址、服务器端口、密码和加密方式,再让浏览器或应用使用本地 SOCKS5,而不是把服务器地址直接填进浏览器代理栏。

定义:Shadowsocks 是负责加密转发的代理协议,本地客户端则通常通过 127.0.0.1:本地端口向浏览器或其他应用提供 SOCKS5 代理。

先记住:服务器参数和 SOCKS5 参数不是一回事

这是 Shadowsocks SOCKS5 设置中最容易填错的地方。Shadowsocks 的本地组件会像传统 SOCKS5 服务器一样,为本机应用提供代理服务;它再把应用流量加密转发给远端 Shadowsocks 服务端。Shadowsocks 官方说明也将本地组件描述为可向客户端提供 SOCKS5 服务的组件。

参数填写位置含义
服务器地址Shadowsocks 客户端远端服务器的 IP 地址或域名
服务器端口Shadowsocks 客户端远端 Shadowsocks 服务监听的端口
密码Shadowsocks 客户端与服务端匹配的加密密码
加密方式Shadowsocks 客户端必须与服务端配置一致
本地地址浏览器或应用代理设置通常填写 127.0.0.1,也可能由客户端改成其他监听地址
本地端口浏览器或应用代理设置客户端在本机监听的 SOCKS5 端口,例如 1080,以实际配置为准

因此,浏览器代理栏通常不填写远端服务器地址和服务器端口,而是填写本地地址与本地端口。Windows 客户端项目文档给出的常见手动代理示例是 127.0.0.1:1080,并说明本地端口可以在服务器编辑界面修改;具体端口仍应以当前客户端界面为准。Shadowsocks for Windows 项目说明

配置前准备这 5 项信息

  1. 确认 Shadowsocks 服务器地址,可能是域名或 IP 地址。
  2. 确认服务器端口,不要与本地端口混淆。
  3. 确认密码,注意大小写、空格和特殊字符。
  4. 确认加密方式,客户端与服务端必须使用兼容配置。
  5. 确认本地 SOCKS5 监听地址和端口,常见是 127.0.0.1 与 1080,但不能凭经验强行填写。

如果你拿到的是 ss:// 链接或二维码,优先使用客户端的导入功能;如果是手动配置,则按上表分别填写远端连接参数和本地监听参数。部分图形客户端还允许测试延迟,但延迟测试通过不代表浏览器一定已经使用了正确的代理。

Windows 设置 Shadowsocks SOCKS5:最短操作路径

  1. 打开 Shadowsocks 客户端,添加服务器,填写服务器地址、服务器端口、密码和加密方式。
  2. 保存后选择该服务器并连接,确认客户端状态变为已连接或运行中。
  3. 查看客户端的本地监听端口。若未修改,部分 Windows 客户端示例使用 127.0.0.1:1080,但应以当前界面为准。
  4. 需要让多个支持系统代理的应用使用代理时,启用客户端提供的系统代理选项。Windows 客户端项目文档同时提醒,浏览器中的其他代理扩展可能覆盖系统代理。
  5. 只想让某个浏览器使用代理时,在浏览器代理设置中选择 SOCKS5,地址填写 127.0.0.1,端口填写客户端本地端口。

Windows 客户端通常提供系统代理、PAC 分流和全局模式等选项。项目说明列出了系统代理、PAC、全局模式以及手动设置 SOCKS5 或 HTTP 代理的基本方式。不同构建版本的菜单名称可能变化,找不到对应选项时,应以当前客户端帮助或设置页面为准。

可观察结果:浏览器代理设置保存后,访问一个普通网页并查看客户端日志或流量计数。如果客户端没有连接记录,先检查应用是否真的使用了 127.0.0.1:本地端口;如果有连接记录但网页失败,再检查远端参数、DNS 和代理类型。

macOS、Linux 和其他应用怎么填

跨平台设置的核心不变:Shadowsocks 客户端负责连接远端服务,应用负责连接本地 SOCKS5。图形客户端通常会提供“本地地址”“本地端口”或“代理端口”字段;命令行客户端则可能通过配置文件或启动参数创建本地监听端口。不要把某个客户端的菜单名称当成所有版本都相同。

  • 浏览器:选择 SOCKS5,填写本地地址和本地端口;如果客户端同时提供 HTTP 代理,只有在应用不支持 SOCKS5 时才考虑使用 HTTP 入口。
  • Git、终端或开发工具:在应用自己的网络或代理设置中填写 SOCKS5,或者使用该工具当前版本支持的代理配置方式。命令参数会随工具版本变化,执行前应先查看当前版本帮助。
  • 支持 SOCKS5 的即时通信或下载工具:选择 SOCKS5 类型,填写本地监听地址和端口;不要填写 Shadowsocks 服务器端口。
  • 不支持 SOCKS5 的应用:仅凭 Shadowsocks 客户端本身不一定能接管该应用流量,需要该客户端提供 HTTP 代理、系统代理或透明代理能力。

V2Ray 官方指南展示了一个典型结构:客户端的入站是 SOCKS,出站是 Shadowsocks;其中本地 SOCKS 端口与远端 Shadowsocks 服务器参数分属不同配置段。V2Ray 官方指南

SOCKS5、HTTP、PAC 和全局模式怎么选

模式适合场景注意事项
应用 SOCKS5只让浏览器、Git 或某个软件走代理应用必须支持 SOCKS5,其他应用不受影响
系统代理希望多个遵循系统代理的应用自动使用代理并非所有应用都会遵循系统代理,应用内代理可能覆盖它
PAC按域名或规则决定哪些请求使用代理规则不匹配时,请求可能不会进入 SOCKS5
全局模式需要让更多支持系统代理的请求统一经过代理仍不等于所有驱动、服务和 UDP 流量都会被接管
HTTP 代理应用只支持 HTTP 或 HTTPS 代理不要把 SOCKS5 类型误选为 HTTP

在支持 SOCKS5 的情况下,优先选择 SOCKS5 通常更直接;Shadowsocks-Qt5 使用手册也区分了 SOCKS5 与 HTTP(S) 本地代理,并提醒 HTTP(S) 模式可能增加一层代理处理。Shadowsocks-Qt5 使用手册

配置后怎么验证:按顺序检查,不要只看“已连接”

  1. 先验证本地端口:确认 Shadowsocks 客户端正在运行,并核对本地地址和端口。若应用提示连接被拒绝,优先检查端口是否写错、客户端是否退出或端口是否被其他程序占用。
  2. 再验证代理类型:应用中选择 SOCKS5 时,不要填写 HTTP;选择 HTTP 时,也不要直接填写 SOCKS5 端口,除非客户端明确提供 HTTP 代理入口。
  3. 再验证远端参数:服务器地址、服务器端口、密码和加密方式任一项不匹配,都可能表现为本地端口存在但请求无法完成。
  4. 检查分流规则:如果使用 PAC 或规则模式,确认目标域名确实命中了代理规则。可以临时切换到明确的全局或单应用 SOCKS5 测试,测试结束后再恢复原模式。
  5. 检查 DNS 与 IPv6:DNS 解析方式、IPv6 优先级和客户端的远程解析选项可能影响结果。若出现域名打不开但 IP 测试正常,记录浏览器、客户端和系统的 DNS 设置,再逐项切换验证。
  6. 检查 UDP 需求:网页访问主要使用 TCP,但部分应用需要 UDP。是否支持 UDP 取决于客户端、服务端和应用配置,不能因为 TCP 页面能打开就推断 UDP 一定可用。

一次访问成功只能说明当时的链路和配置可用,不能证明所有应用、所有协议或长期连接都正常。排查时应记录使用的客户端、代理类型、本地端口、目标应用和错误提示。

常见故障分流:看到什么现象就查什么

现象优先检查处理方法
应用提示无法连接本地代理客户端是否运行、本地地址和端口重新查看客户端监听端口,关闭占用端口的其他程序或修改本地端口后重试
客户端显示已连接,但浏览器打不开浏览器是否使用系统代理、代理类型是否选错、PAC 是否绕过先临时手动指定 SOCKS5 与本地端口,排除系统代理和规则因素
能打开部分网站,部分域名失败DNS、IPv6、PAC 规则分别测试域名与 IP,暂时切换规则模式,并核对 DNS 相关选项
连接超时服务器地址、服务器端口、防火墙和服务端状态重新核对服务端资料;若服务端状态无法确认,不能仅靠修改浏览器代理解决
浏览器可以用,其他应用不能用应用是否支持 SOCKS5、是否有独立代理设置在该应用内单独配置 SOCKS5,或确认客户端是否提供系统级接管能力

配置模板:只用于理解字段,不要直接复制

下面是结构示例,不是可直接复制的完整配置。字段名称、加密方式和启动参数会因客户端或内核版本不同而变化,使用前必须对照当前项目文档。

{
  "local_address": "127.0.0.1",
  "local_port": 1080,
  "server": "替换为服务器地址",
  "server_port": "替换为服务器端口",
  "password": "替换为服务端密码",
  "method": "替换为服务端支持的加密方式"
}
  • local_address 和 local_port 是本地应用连接的 SOCKS5 入口。
  • server 和 server_port 是 Shadowsocks 客户端连接的远端服务。
  • password 与 method 必须和服务端匹配。
  • 修改配置前先备份原文件;出现问题时恢复备份,并重新启动客户端。

如果你使用的是支持 JSON 的命令行实现,可参考对应项目的当前文档;例如 Shadowsocks Rust 项目同时提供本地与服务端命令及配置说明,但具体参数仍应以当前版本帮助为准。Shadowsocks Rust 项目文档

常见问题

Shadowsocks 的 SOCKS5 地址是不是服务器地址?

通常不是。服务器地址和服务器端口用于 Shadowsocks 客户端连接远端服务;浏览器或应用使用的是客户端在本机提供的 SOCKS5,常见形式是 127.0.0.1 加本地端口。

Shadowsocks SOCKS5 端口一般填多少?

没有固定值。部分 Windows 客户端示例使用 1080,但本地端口可以被修改,也可能因客户端不同而变化。应以当前客户端的本地代理或服务器编辑页面显示为准。

浏览器应该选 SOCKS5 还是 HTTP?

如果浏览器支持 SOCKS5,并且客户端提供的是 SOCKS5 本地入口,选择 SOCKS5;只有在客户端明确提供 HTTP 代理入口,或应用不支持 SOCKS5 时,才选择 HTTP。

Shadowsocks 客户端显示已连接,为什么应用仍然不能用?

“已连接”通常只说明客户端已经启动或建立了远端连接,不代表目标应用正在使用它。应检查应用代理类型、本地地址、本地端口、PAC 规则、DNS 和应用是否支持 SOCKS5。

配置 Shadowsocks SOCKS5 后,所有应用都会走代理吗?

不会自动保证。单独在浏览器中填写 SOCKS5 通常只影响该浏览器;系统代理、PAC、全局模式和透明代理的覆盖范围不同,而且部分应用会忽略系统代理。

相关阅读

参考资料

  1. What is Shadowsocks? | Shadowsocks(shadowsocks.org)
  2. Shadowsocks for Windows 项目说明
  3. Shadowsocks-Qt5 使用手册
  4. Shadowsocks | V2Ray Beginner's Guide(guide.v2fly.org)
  5. Shadowsocks Rust 项目文档