🌐 网络设置

Chrome 代理设置完整指南:系统代理、扩展代理、PAC 自动配置详解

📅 2026-05-15 ⏱ 15 分钟阅读 📷 6 张真实截图
Chrome 代理设置完整指南:系统代理、扩展代理、PAC 自动配置详解

Chrome 代理设置

Chrome 浏览器在全球拥有超过 65% 的市场份额,是绝大多数用户的首选浏览器。无论是日常使用 Chrome 浏览器 还是需要科学上网,掌握 Chrome 浏览器代理设置 都是很有价值的技能。但代理设置这块水很深——系统代理、扩展代理、PAC 自动配置、SOCKS5 协议、启动参数代理……各种概念混在一起,很多人配了半天代理还是上不了网,或者配好了发现国内网站反而变慢了。

这篇文章从代理的基本原理讲起,逐步覆盖 Windows/macOS 系统代理设置、PAC 自动代理配置、Chrome 代理扩展使用、启动参数代理,以及最常见的代理冲突排查方法。无论你是刚接触代理的新手,还是经常遇到代理问题的老用户,都能在这篇文章里找到实用的解决方案。

Chrome 代理的基本原理

先搞清楚一个核心事实:Chrome 本身没有独立的代理设置界面。它直接读取操作系统的系统代理配置,这意味着你在 Chrome 里找不到一个叫"代理设置"的菜单项。

Chrome 获取代理信息的优先级如下:

  1. 命令行参数代理:如果通过启动参数指定了代理(如 --proxy-server),Chrome 直接使用该参数,忽略所有其他来源
  2. 扩展代理:安装了代理扩展(如 SwitchyOmega)且启用了代理模式时,扩展接管 Chrome 的网络请求路由
  3. 系统代理:如果以上两项都没有设置,Chrome 就读取操作系统的系统代理设置

这个优先级链条很重要。很多用户反映"设置好了系统代理但 Chrome 还是直连",原因通常是安装了代理扩展但没有正确关闭,扩展的直连模式实际上接管了所有网络请求,导致系统代理被绕过。

Chrome 对代理协议的支持范围:HTTP 代理、HTTPS 代理(也叫 HTTP CONNECT 代理)、SOCKS4 代理、SOCKS5 代理。其中 SOCKS5 最为灵活,支持 TCP 和 UDP 转发,是目前主流代理客户端(如 V2Ray、Clash、Shadowsocks)默认提供的协议。

理解这些原理后,后面的具体配置方法就会清晰很多。需要配置 Chrome 代理,本质上就是在上述三个层级中选择一种方式来设置。

Windows 系统代理设置

Windows 系统代理设置

Windows 系统代理是最基础也最常用的代理设置方式。设置后,Chrome、Edge、系统自带浏览器、甚至命令行工具都会使用这个代理。

设置步骤

  1. 打开 Windows 设置(Win + I)
  2. 点击 网络和 Internet
  3. 左侧选择 代理(或 手动设置代理)
  4. 在「手动设置代理」区域,点击「编辑」旁边的按钮
  5. 开启「使用代理服务器」开关
  6. 填入代理地址和端口号(例如 127.0.0.1 和 7890)
  7. 点击「保存」

常见代理端口对应关系:

代理客户端默认 HTTP 端口默认 SOCKS5 端口
Clash78907891
V2RayN1080910808
Shadowsocks10801080
SSR10801080

注意事项

设置系统代理后,所有网络流量都会经过代理服务器。如果你只是想让部分请求走代理(比如只让 Google 走代理,国内网站直连),系统代理就不够用了,需要使用 PAC 配置或代理扩展来实现分流。系统代理是"全有或全无"的模式,不适合需要分流的场景。

另外,如果你在局域网环境中需要访问内网资源,系统代理可能导致内网地址也被转发到代理服务器,从而无法访问。这时候需要在代理客户端中配置排除规则,或者在系统代理设置中填写"请勿对以下条目开头的地址使用代理服务器"(Bypass list),把内网 IP 段和域名加进去。

macOS 系统代理设置

macOS 的系统代理设置路径和 Windows 类似,但入口位置不同:

  1. 打开 系统设置(System Settings)
  2. 点击 网络(Network)
  3. 选择当前正在使用的网络连接(Wi-Fi 或以太网)
  4. 点击 详细信息(Details)按钮
  5. 切换到 代理(Proxies)标签页
  6. 根据需要勾选代理协议(自动发现代理、网页代理 HTTP/HTTPS、SOCKS 代理等)
  7. 填入代理服务器地址和端口
  8. 点击「好」保存

macOS 可以同时为不同协议设置不同的代理服务器。例如,HTTP 流量走 127.0.0.1:7890,SOCKS5 流量走 127.0.0.1:7891。这比 Windows 灵活一些,但设置起来也更复杂。

macOS 的一个常见问题是代理设置后 Wi-Fi 图标上会出现一个地球图标,表示当前使用代理连接。如果你只是临时需要代理,记得用完后关闭设置,否则可能影响系统更新和其他应用的正常网络连接。

代理协议的区别:HTTP / HTTPS / SOCKS5

理解不同代理协议的区别,能帮你更好地选择和配置代理。

HTTP 代理

HTTP 代理是最古老的代理协议。它只能处理 HTTP 请求,不支持 HTTPS 加密流量。客户端直接把 HTTP 请求发送到代理服务器,代理服务器转发到目标网站。由于只能处理明文 HTTP,现在几乎不单独使用了。

HTTPS 代理(HTTP CONNECT)

HTTPS 代理也常被称为 CONNECT 代理或 HTTPS 代理。它通过 HTTP CONNECT 方法建立隧道,客户端和目标服务器之间进行 TLS 加密通信,代理服务器只负责转发加密后的数据包,无法看到实际内容。这是目前使用最广泛的代理协议之一,几乎所有代理客户端都支持。

SOCKS5 代理

SOCKS5 是最灵活的代理协议。它不关心应用层协议,支持 TCP 和 UDP 转发,可以代理几乎任何网络请求——HTTP、HTTPS、FTP、DNS 查询、甚至游戏流量。SOCKS5 还支持身份认证(用户名/密码),安全性比无认证的 SOCKS4 更高。

在实际使用中,推荐使用 SOCKS5 代理。原因很简单:SOCKS5 的兼容性最好,几乎所有代理客户端都默认提供 SOCKS5 端口。而且 SOCKS5 支持的协议范围更广,不会出现某些应用因为代理协议不支持而无法联网的情况。

配置示例:如果代理客户端提供了 SOCKS5 端口 7891,在系统代理的 SOCKS 设置中填入 127.0.0.1:7891 即可。

PAC 自动代理配置

PAC 自动代理配置

PAC(Proxy Auto-Config,代理自动配置)是一种用 JavaScript 编写的脚本文件,能够根据访问的 URL 自动决定是否使用代理、使用哪个代理。它是实现智能分流的标准方式。

PAC 文件的基本结构

一个 PAC 文件就是一个包含 FindProxyForURL 函数的 JavaScript 文件:

function FindProxyForURL(url, host) {
    // 国内域名直连
    if (shExpMatch(host, "*.baidu.com") ||
        shExpMatch(host, "*.taobao.com") ||
        shExpMatch(host, "*.jd.com")) {
        return "DIRECT";
    }
    // 其他所有请求走代理
    return "PROXY 127.0.0.1:7890";
}

PAC 文件中可用的内置函数包括:

函数作用示例
isPlainHostName(host)判断是否为纯域名(无点号)isPlainHostName("localhost") 返回 true
dnsDomainIs(host, domain)判断域名是否属于某个域dnsDomainIs(host, ".google.com")
shExpMatch(host, pattern)通配符匹配shExpMatch(host, "*.cn")
isInNet(host, subnet, mask)判断 IP 是否属于某个网段isInNet(host, "192.168.1.0", "255.255.255.0")

设置 PAC 文件

在 Windows 上设置 PAC:

  1. 打开 设置 → 网络和 Internet → 代理
  2. 在「自动配置代理」区域,开启「使用设置脚本」
  3. 填入 PAC 文件的 URL 地址(可以是本地文件路径或远程 URL)
  4. 点击保存

在 macOS 上:

  1. 系统设置 → 网络 → 选择网络连接 → 详细信息 → 代理
  2. 勾选「自动代理发现」
  3. 填入 PAC 文件 URL

如果代理客户端(如 Clash)自带 PAC 功能,通常会提供一个本地 PAC 地址(如 http://127.0.0.1:7890/pac),直接填入即可。

PAC 的优势和局限

PAC 的最大优势是分流灵活——可以针对不同域名、不同 IP 段返回不同的代理策略。国内的网站直连保证速度,国外的网站走代理保证可达性。

局限在于 PAC 文件是静态规则,需要手动维护。如果代理服务器地址变了,需要同步修改 PAC 文件。而且 PAC 只支持简单的条件判断,对于需要实时判断的复杂分流场景(如 GFWList 动态更新),还是需要借助代理扩展或专业代理客户端的内置规则引擎。

Chrome 代理扩展详解

SwitchyOmega 扩展界面

Chrome 代理扩展是专门为浏览器设计代理管理工具。相比系统代理和 PAC,扩展代理的最大优势是可以实现浏览器级别的精细控制,且不影响系统其他应用。

SwitchyOmega(推荐)

SwitchyOmega 是 Chrome 代理扩展中功能最全面、用户量最大的选择。它支持创建多个代理配置文件,支持自动切换规则,支持导入订阅规则列表。

安装和基础配置步骤:

  1. 在 Chrome 网上应用店搜索「Proxy SwitchyOmega」并安装
  2. 点击扩展图标,进入「选项」页面
  3. 在左侧创建新的代理配置文件(Profile)
  4. 在「代理服务器」栏填写代理协议、地址和端口
  5. 保存后,在扩展弹窗中切换到该配置文件即可使用

**自动切换模式(Auto Switch)**是 SwitchyOmega 的核心功能。你可以设置规则列表,让 SwitchyOmega 根据当前访问的网址自动选择代理配置文件:

规则条件含义示例
域名关键词域名包含指定字符串时匹配google 匹配所有含 google 的域名
通配符支持通配符的域名匹配*.youtube.com
正则表达式用正则匹配 URL^https?://[^/]+\.google\.com
规则列表导入预定义的规则列表文件GFWList、广告过滤列表

设置自动切换后,你不需要手动在代理和直连之间切换。访问国内网站时自动走直连,访问国外网站时自动走代理,体验非常流畅。

扩展代理 vs 系统代理:如何选择

对比维度扩展代理(SwitchyOmega)系统代理
影响范围仅 Chrome 浏览器系统所有应用
分流能力强,支持域名/IP/正则分流弱,全有或全无(除非用 PAC)
配置难度中等(需学习扩展界面)简单(填地址端口即可)
切换便利性一键切换,支持自动切换需要进入系统设置
隐身模式需要单独在隐身设置中开启自动生效
跨浏览器仅限 Chrome(其他浏览器需单独安装)所有浏览器生效

推荐选择策略:

  • 如果你只希望 Chrome 走代理(其他应用如微信、游戏不受影响)→ 使用 SwitchyOmega 扩展
  • 如果你所有应用都需要走代理(包括命令行工具、系统更新)→ 使用系统代理
  • 如果你需要精细的分流规则(国内直连、国外走代理、特定网站走特定代理)→ SwitchyOmega 的自动切换模式

大部分个人用户的最佳选择是 SwitchyOmega + 代理客户端后台运行的组合。代理客户端提供代理服务器,SwitchyOmega 负责在 Chrome 中按需路由流量。

Chrome 启动参数代理

Chrome 支持通过命令行参数直接指定代理服务器,不需要进入任何设置界面。这种方式适合临时测试或需要快速切换代理的场景。

基本用法

chrome.exe --proxy-server="http://127.0.0.1:7890"

SOCKS5 代理:

chrome.exe --proxy-server="socks5://127.0.0.1:7891"

忽略特定地址

chrome.exe --proxy-server="http://127.0.0.1:7890" --proxy-bypass-list="localhost;127.0.0.1;*.internal.company.com"

在 Windows 上创建快捷方式

  1. 右键点击 Chrome 桌面快捷方式 → 属性
  2. 在「目标」栏的原有路径后面添加代理参数
  3. 点击确定保存
  4. 通过这个快捷方式启动 Chrome 时就会自动使用指定代理

启动参数代理的优先级最高,会覆盖系统代理和扩展代理。这意味着如果你通过启动参数指定了代理,即使 SwitchyOmega 设置了其他代理配置,Chrome 仍然使用启动参数指定的代理。所以这种方式不适合长期使用,更适合临时调试或作为其他代理方式失效时的备选方案。

一个实用的技巧是创建两个 Chrome 快捷方式:一个带代理参数(用于需要代理时),一个不带(正常使用)。需要时双击对应的快捷方式即可,比反复修改系统代理方便得多。

代理冲突排查:为什么设置后还是上不了网

代理冲突排查

代理设置后无法上网是最常见的问题。以下是系统化的排查方法,按优先级排列。

问题一:系统代理和扩展代理同时开启

这是最常见的冲突原因。如果你同时设置了系统代理(Windows 设置里开了代理)和安装了 SwitchyOmega 扩展,两者可能产生冲突。

症状:Chrome 完全无法联网,或者部分网站能打开、部分网站不能。

解决方法:

  1. 先关闭 SwitchyOmega(切换到「直接连接」模式)
  2. 测试系统代理是否正常工作
  3. 如果系统代理正常,再开启 SwitchyOmega 并确保配置正确
  4. 如果两种方式单独使用都正常但同时开启就出问题,建议只保留一种

问题二:代理客户端未运行或端口不对

代理设置中的地址端口必须和代理客户端实际监听的端口一致。

排查步骤:

  1. 确认代理客户端正在运行(Clash/V2RayN/SSR 等软件是否已启动并连接)
  2. 打开代理客户端的设置页面,查看实际的监听端口
  3. 对比 Chrome 代理设置中的端口是否一致
  4. 如果端口不一致,修改为代理客户端的实际端口

一个快速测试方法:在 Chrome 地址栏输入代理客户端的本地管理地址(如 http://127.0.0.1:9090 是 Clash 的 API 地址),如果能打开说明代理客户端在运行。

问题三:缓存或 DNS 导致的假性代理不生效

有时候代理其实已经生效了,但 Chrome 使用了旧的 DNS 缓存,导致域名解析到了错误的 IP 地址。

解决方法:

  • 清除 Chrome 缓存和 Cookie(参考 Chrome 缓存清理完整教程)
  • 或者使用 Chrome 隐身模式测试(隐身模式不使用缓存)
  • 刷新 DNS 缓存:Windows 上在 CMD 中执行 ipconfig /flushdns

问题四:HTTPS 证书错误

使用代理后访问 HTTPS 网站时出现「您的连接不是私密连接」或 NET::ERR_CERT_AUTHORITY_INVALID 错误,通常是因为代理客户端的根证书没有被系统信任。

解决方法:

  1. 在代理客户端中找到证书导出功能(Clash 在 Settings → External Controller,V2RayN 在参数设置中)
  2. 导出根证书文件(通常是 .crt 或 .pem 格式)
  3. Windows:双击证书文件 → 安装证书 → 本地计算机 → 受信任的根证书颁发机构
  4. macOS:打开钥匙串访问 → 导入证书 → 设置为始终信任
  5. 安装后重启 Chrome

问题五:代理扩展在隐身模式下未启用

Chrome 的隐身模式默认不启用扩展,除非你手动在扩展管理页面开启了隐身模式权限。

解决方法:

  1. 打开 chrome://extensions/
  2. 点击「详细信息」
  3. 找到「在无痕模式下启用」开关
  4. 打开该开关

这个问题很容易被忽略,很多人在隐身模式下测试代理,发现不生效,以为是代理配置有问题,实际上只是扩展没有被隐身模式加载。

分流规则设置:国内直连、国外走代理

对于中国用户来说,最理想的使用方式是智能分流:国内网站直接连接(速度快),国外网站走代理(保证可达性)。以下介绍三种实现方式。

方式一:SwitchyOmega + 规则列表(推荐)

这是最简单也最维护成本最低的方式:

  1. 安装 SwitchyOmega
  2. 创建一个「代理」Profile,填入代理服务器地址
  3. 创建一个「自动切换」Profile
  4. 在自动切换规则中,导入 GFWList 或类似的规则列表
  5. 默认走「直接连接」,规则列表中的域名走「代理」

GFWList 是一个长期维护的被屏蔽域名列表,SwitchyOmega 可以直接导入使用。列表会定期更新,你只需要定期刷新规则列表即可。

方式二:PAC 文件 + GFWList

如果你不想安装扩展,可以使用基于 GFWList 生成的 PAC 文件。一些在线工具(如 gfwlist2pac)可以将 GFWList 转换为 PAC 文件,然后在系统代理设置中引用。

缺点是 PAC 文件是静态的,每次 GFWList 更新后需要重新生成。适合不经常更新的场景。

方式三:代理客户端内置分流

大部分现代代理客户端(如 Clash Premium、Surge、Quantumult X)都内置了规则引擎,可以在代理客户端层面实现分流。这种方式的分流发生在代理客户端内部,浏览器和操作系统层面看到的是统一的代理地址。

Clash 的规则格式示例:

rules:
  - DOMAIN-SUFFIX,google.com,Proxy
  - DOMAIN-SUFFIX,youtube.com,Proxy
  - DOMAIN-SUFFIX,github.com,Proxy
  - DOMAIN-SUFFIX,baidu.com,DIRECT
  - DOMAIN-SUFFIX,taobao.com,DIRECT
  - GEOIP,CN,DIRECT
  - MATCH,Proxy

使用代理客户端内置分流的好处是所有应用都能受益,不需要每个浏览器单独配置。但配置门槛相对较高,需要了解 YAML 规则语法。

Chrome 代理设置常见问题速查

以下是日常使用中最高频出现的代理相关问题和解决方案。

代理设置不生效

按顺序检查:代理客户端是否运行 → 端口是否正确 → 是否与扩展代理冲突 → Chrome 是否使用了启动参数覆盖 → 重启 Chrome 后重试。大部分情况下是代理客户端没有运行或者端口填错了。

部分网站打不开

通常是分流规则不够完善。某些国外网站没有被规则列表覆盖,导致请求走了直连而被拦截。解决办法:在 SwitchyOmega 中切换到「全局代理」模式测试,如果全局代理能打开就确认是分流规则的问题,手动添加该域名到代理规则中。

代理设置后 Chrome 变慢

可能的原因:代理服务器带宽不够、代理服务器物理位置较远、DNS 解析经过代理后延迟增加。尝试更换代理节点,或者检查代理客户端的延迟测试功能。另外,如果代理客户端开启了 TLS 1.3 fingerprint 混淆,可能会增加少量开销。

切换网络环境后代理失效

从家庭 Wi-Fi 切换到手机热点或公司网络后,代理客户端的监听地址可能发生变化。检查代理设置中的地址是否仍然是 127.0.0.1(本地代理),如果是远程代理则需要更新为新的网络环境下可访问的地址。

多个代理客户端冲突

如果同时安装了多个代理客户端(如同时运行 Clash 和 V2RayN),它们可能尝试监听同一端口,导致其中一个无法启动。解决方案:只运行一个代理客户端,或者修改其中一个的监听端口避免冲突。

总结

Chrome 代理设置虽然入口不在浏览器里,但配置方式非常灵活。对于大多数用户来说,SwitchyOmega + 代理客户端的组合是最优解——分流灵活、切换方便、不影响其他应用。如果需要全局代理,使用系统代理配合 PAC 文件可以实现基本的分流需求。

遇到代理问题时,核心排查思路是确认优先级链:启动参数 > 扩展代理 > 系统代理。搞清楚当前生效的是哪一层代理,就能快速定位问题所在。Chrome 是目前最主流的浏览器,掌握它的代理配置方法对于需要跨网络访问的用户来说是必备技能。如果你在配置过程中遇到其他网络问题,可以参考 Chrome 网页打不开的排查方法,或者查看 Chrome 下载速度慢的修复方案 中关于网络优化的部分。想进一步提升浏览器使用体验,还可以看看 Chrome 必备扩展推荐。善用 Chrome 浏览器 的代理功能,能让你的网络体验更加顺畅。

常见问题

Q1: Chrome 代理设置后为什么有些网站反而打不开了?

A: 最常见的原因是分流规则不完善。如果你用的是 SwitchyOmega 的自动切换模式,某些网站可能没有被规则列表覆盖,请求走了直连但实际需要通过代理才能访问。解决方法:先切换到「全局代理」模式测试——如果能打开就确认是分流规则的问题,手动把该域名添加到代理规则中。另一个可能的原因是代理服务器的 DNS 解析和本地 DNS 不一致导致的问题,可以参考 Chrome 安全 DNS 设置 了解如何统一 DNS 配置。

Q2: 怎么判断当前 Chrome 走的是哪个代理?

A: 最简单的方法是访问一个显示你 IP 地址的网站(如 whatismyip.com 或 ip.sb),看显示的 IP 是你的真实 IP 还是代理服务器的 IP。如果用的是 SwitchyOmega,扩展图标会显示当前模式的颜色标记。也可以在 Chrome 地址栏输入 chrome://net-internals/#proxy 查看当前生效的代理配置。

Q3: Chrome 代理和 VPN 有什么区别?

A: 代理只影响 Chrome 浏览器(如果用的是扩展代理)或系统所有 HTTP/HTTPS 流量(如果用的是系统代理),而 VPN 会在操作系统层面创建一个虚拟网络接口,所有应用的网络流量——包括浏览器、游戏、命令行工具、系统更新——都经过 VPN 隧道。代理更轻量、配置更灵活,适合按需分流的场景;VPN 覆盖更全面但资源消耗更大。如果你只需要浏览器走代理,SwitchyOmega 就够了;如果需要全局加密,用 VPN。

Q4: SwitchyOmega 自动切换模式配置好了但不生效怎么办?

A: 按这个顺序排查:确认 SwitchyOmega 当前选中的是「自动切换」Profile(不是「直接连接」或「系统代理」);检查自动切换规则的默认策略是否设置正确(默认应该走「直接连接」,规则匹配的才走「代理」);确认规则列表已导入且格式正确;测试一个规则中明确列出的域名,看是否走了代理。如果还不行,尝试清除 Chrome 缓存和 DNS 缓存(参考 Chrome 缓存清理)。

Q5: 公司内网系统需要直连,但外网需要通过代理,怎么设置?

A: 这是 SwitchyOmega 自动切换模式的标准应用场景。在自动切换规则中:将公司内网域名(如 *.company.local、内网 IP 段如 10.*.*.*)的规则设为「直接连接」;将需要代理的外部域名(如 *.google.com)设为「代理」;默认策略设为「直接连接」。这样内网流量走直连、外网流量走代理,互不干扰。更精细的做法是用 PAC 文件定义分流逻辑,支持正则表达式匹配。

声明:本站为 Chrome 浏览器使用技巧分享平台,与 Google 公司无关。所有产品名称归原权利人所有。

📖 相关阅读
继续阅读