代理 IP 地址和端口填什么?
用电脑上的代理客户端时,地址填 127.0.0.1,端口填客户端设置页显示的本地端口,按 2026-10-20 读到的官方仓库源码,Clash Verge Rev 默认混合端口是 7897,v2rayN 默认是 10808,常见的 7890 是 Clash 系配置示例里的 HTTP 端口。单位或学校的代理照管理员给的地址和端口填(Squid 建议配置用 3128),买来的业务代理 IP 照厂商后台给的 IP、端口和账号填。想知道当前用的是哪个代理,Windows 看“设置 > 网络 & Internet > 代理”,macOS 在终端运行 scutil --proxy。
本文目录8 节
先认清手里是哪一种代理
设置代理时,页面上通常就两个框,一个地址,一个端口。卡住的地方很一致:不知道往里填什么,填完又不知道怎么查当前用的是哪个。
这两个框该填什么,取决于代理服务在哪里。对着下面这张表找到自己那一行,后面的内容再挑着看。
| 你的情况 | 地址填什么 | 端口填什么 | 去哪里找 |
|---|---|---|---|
| 电脑上装了代理客户端 | 127.0.0.1 | 客户端监听的本地端口 | 客户端自己的设置页 |
| 单位或学校给了代理 | 管理员给的服务器名或 IP | 管理员给的端口,常见 3128、8080 | IT 的说明,有时给的是一个配置脚本地址 |
| 买了业务用的代理 IP | 厂商后台给的 IP 或域名 | 厂商给的端口 | 厂商后台,常附用户名密码或 IP 白名单 |
第一行最容易出错。有人把订阅里某个节点的服务器地址和端口抄进 Windows 的代理设置,结果一个网页也打不开。Windows 的手动代理页面只有地址、端口、例外列表和一个本地地址复选框[1],没有地方选协议,也没有地方填节点要的 UUID 或密码。节点的信息交给客户端,系统代理只负责指向客户端,这两层分开,才连得上。节点和代理服务器的关系,代理服务器是什么那篇有一张对照表。
127.0.0.1 指的是你这台机器自己
1989 年 10 月的 RFC 1122 把 127 开头的地址定为主机内部的回环地址,并要求这类地址不得出现在主机之外[9]。IPv6 里对应的是 ::1,RFC 4291 说节点可以用它给自己发包[10]。
所以填 127.0.0.1,意思是把请求交给本机上正在监听这个端口的程序。客户端没开,端口上就没有人应答,浏览器会直接报错,常见的报错和处理办法在代理报错排查。
也因为回环地址出不了这台机器,同一个 Wi-Fi 下的手机填 127.0.0.1,连的是手机自己。想让手机借用电脑上的代理,要在电脑客户端里打开允许局域网连接,手机上填电脑的局域网 IP 和同一个端口。mihomo 文档对 allow-lan 的解释是允许其他设备经过 Clash 的代理端口访问互联网[20]。v2rayN 勾选“允许来自局域网的连接”以后,主端口改为监听 0.0.0.0;如果同时勾了“为局域网开启新的端口”,主端口不动,另开一个端口专门给局域网用[17][28]。Clash Verge Rev 的源码模板里 allow-lan 默认是关的[25]。
端口填多少,以客户端设置页为准
端口号的大框架写在 RFC 6335 里,0 到 1023 是系统端口,1024 到 49151 是用户端口,49152 到 65535 是动态端口[11]。代理客户端用的 7890、7897、10808 都落在用户端口段,数字是各家开发者自己挑的。
很多人记得 7890,多半是见过 Clash 系配置文件的示例,HTTP 端口写 7890、SOCKS 端口写 7891,mihomo 文档的示例就是这么写的,混合端口的示例写 7892[19],网上的教程也常拿这组数字举例。Clash Verge Rev 用的是另一组。按 2026-10-20 读到的 dev 分支源码,constants.rs 里默认混合端口定义为 7897,SOCKS 端口 7898,HTTP 端口 7899[13]。verge.rs 的默认模板又把单独的 SOCKS 端口和 HTTP 端口设为关闭,系统代理默认关闭,代理主机默认 127.0.0.1[14]。核对当天它的最新发布是 2026-10-09 的 v2.5.8[15]。
v2rayN 主分支的 ConfigHandler.cs 在没有配置时把本地入站端口设为 10808[16],生成内核配置时这个入站用的是 mixed 协议,一个端口同时收 HTTP 和 SOCKS[17],简体中文界面上这一栏叫“本地混合监听端口”[28]。核对当天它的最新发布是 7.25.6[18]。网上有些教程让 HTTP 填 10809,在现在的源码里,10809 只在勾选“开启第二个本地监听端口”以后才会出现,它是主端口加 1,同样是混合端口[17][26]。这个选项默认不勾[27],设置页里没开,就别照抄 10809。
| 软件或惯例 | 地址 | 端口 | 说明 | 依据 |
|---|---|---|---|---|
| Clash Verge Rev(dev 分支源码,最新发布 v2.5.8) | 127.0.0.1 | 混合端口 7897 | SOCKS 7898、HTTP 7899 默认关闭,系统代理默认关闭 | constants.rs、verge.rs[13][14] |
| v2rayN(master 分支源码,最新发布 7.25.6) | 127.0.0.1 | 10808 | 入站协议为 mixed,HTTP 与 SOCKS 共用一个端口;勾选“开启第二个本地监听端口”后多一个 10809 | ConfigHandler.cs、V2rayInboundService.cs[16][17] |
| mihomo 配置示例 | 127.0.0.1 | 7890、7891、7892 | 文档里的示例值,实际以配置文件为准 | 代理端口文档[19] |
| Squid | 代理服务器地址 | 3128 | 官方建议配置写的是 http_port 3128 | http_port 文档[21] |
| SOCKS 惯例 | 代理服务器地址 | 1080 | RFC 1928 写的惯用端口,IANA 登记名 socks | RFC 1928、IANA[22][12] |
| HTTP 备用端口 | 代理服务器地址 | 8080 | IANA 登记名 http-alt | IANA[12] |
去哪里查当前用的是哪个代理
Windows 10 和 11 打开“设置 > 网络 & Internet > 代理”。手动代理设置里“使用代理服务器”开着,点进去就能看到代理 IP 地址和端口[1]。想在命令行里看,可以查注册表。
代码
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer微软脚本博客 2005 年的文章解释过这两个值,ProxyEnable 为 1 表示开启、0 表示关闭,ProxyServer 按 地址:端口 的格式存放[3]。
Windows 还有一套 WinHTTP 代理,给调用 WinHTTP 接口的程序用,用 netsh winhttp show proxy 查看,netsh winhttp reset proxy 恢复直连,netsh winhttp import proxy source=ie 可以把上面注册表里那一套导入进来,微软文档管它叫 Internet Explorer 的代理设置[2]。两套设置不一样的时候,浏览器能上、某个后台程序上不去,原因往往在这里。
macOS 打开苹果菜单 >“系统设置”,点边栏的“网络”,选中正在用的那个网络服务,打开“详细信息”后切到“代理”。手动填写的有网页代理(HTTP)、安全网页代理(HTTPS)、SOCKS 代理三项,要填服务器地址和端口,需要时还能填用户名密码。另外两个选项走自动方式,一个是自动发现代理,一个是填 PAC 地址的自动代理配置[4]。终端里运行 scutil –proxy,会打印当前的系统代理配置[5]。
安卓的位置各家不一样,Google 的帮助页也提醒其中某些步骤可能因设备而异。Pixel 手机是“设置 > 网络和互联网 > 互联网”,点当前网络,点修改图标,进“高级选项”,在“代理”下方选配置类型[8]。其他品牌可以在设置里直接搜“代理”。
iPhone 打开“设置”,轻点“无线局域网”,再点当前网络旁边的信息按钮,Apple 的使用手册写明 DNS、HTTP 代理这些网络设置都在这一页里改[6]。具体填什么,Apple 给 iPhone、iPad 写的全局 HTTP 代理部署文档分两种,手动方式填主机名和端口,需要认证时再填用户名和密码,自动方式填 PAC 文件地址[7]。那份文档面向单位统一管理的设备,个人手机上的选项叫法以界面为准。用 Shadowrocket 这类客户端的人,这一项通常空着也能用,它在 App Store 的介绍里写的是接管设备上各个应用的 HTTP、HTTPS 和 TCP 流量,再转给代理服务器[24]。
命令行工具另有一套办法。curl 认的是环境变量,变量名按“协议_proxy”的格式起,http_proxy 只认小写,ALL_PROXY 对所有协议生效,NO_PROXY 列出不走代理的主机[23]。在 macOS 或 Linux 的终端里,可以这样查看和临时设置。
代码
echo $http_proxy $https_proxy $ALL_PROXY
export https_proxy=http://127.0.0.1:7897上面的 7897 只是示例,换成你客户端的端口。
| 系统或程序 | 图形界面位置 | 命令 |
|---|---|---|
| Windows 10、11 | 设置 > 网络 & Internet > 代理 | reg query 查 Internet Settings;netsh winhttp show proxy |
| macOS | 系统设置 > 网络 > 网络服务 > 详细信息 > 代理 | scutil –proxy |
| 安卓(以 Pixel 为例) | 设置 > 网络和互联网 > 互联网 > 当前网络 > 修改 > 高级选项 > 代理 | 无 |
| iOS(iPhone) | 设置 > 无线局域网 > 当前网络的信息按钮 > HTTP 代理 | 无 |
| curl 等命令行工具 | 无 | echo 查看 http_proxy、https_proxy、ALL_PROXY |
查出口 IP,查到的是哪一段
127.0.0.1 只是你这台机器上的第一站。网站看到的是最后一跳的地址,也就是节点服务器或代理厂商服务器的出口 IP。想知道它是多少,最直接的办法是访问一个外部的 IP 查询网站,这个网站也会因此看到你的出口 IP 和访问时间,本站页面不嵌任何这类查询。
客户端开着规则模式时,不同网站可能走不同节点,有的干脆直连,所以在一个查询网站看到的 IP 只代表那一个域名走的路线,规则怎么分流见两种模式的对照。不同查询网站用的 IP 归属地数据库也不一样,同一个 IP 被标成两个地区,并不稀奇。
填对了还是不通,先对这几处
客户端有没有在运行,设置页上的端口和系统代理里填的是不是同一个数字,这两样最先看。手动填过系统代理的人,改了客户端端口以后,要记得回到系统设置里同步改掉。
Windows 的手动代理对话框里有一个让本地(Intranet)地址绕开代理的复选框,还有一栏例外列表[1]。单位内网的地址被写进例外,访问它们就会直连,这是正常现象。
关掉客户端以后网页全打不开,通常是系统代理还指着 127.0.0.1 的那个端口,端口上已经没有程序了。处理办法和其他报错一起放在代理报错排查。各平台客户端怎么选、在哪里下载,见代理软件对照。
常见问题
代理端口能不能改成自己喜欢的数字?
可以,只要不和本机别的程序撞上。RFC 6335 把 1024 到 49151 划为用户端口段,客户端默认的 7897、10808 都落在这一段。改完记得把系统代理里的端口一起改掉,两边对不上就会连不上。
手机想借用电脑上的代理,地址栏该填什么?
填电脑在局域网里的 IP,端口和电脑上一样,前提是电脑上的客户端打开了允许局域网连接。127.0.0.1 在手机上指的是手机自己,填了等于让手机连自己。用完建议把这个选项关掉,或者给代理加上用户名和密码。
填 localhost 和填 127.0.0.1 效果一样吗?
多数情况下一样,localhost 是个名字,要先解析成回环地址,IPv4 是 127.0.0.1,IPv6 是 ::1。客户端只监听 IPv4 时,名字一旦解析到 ::1 就可能连不上,直接写 127.0.0.1 最省事。
代理要用户名和密码,Windows 设置里没地方填怎么办?
Windows 的手动代理设置只有地址、端口和例外列表,确实没有账号栏。macOS 的网页代理打开“代理服务器要求密码”就能填用户名密码,Apple 文档里 iPhone 的手动代理也留了用户名和密码两项。在 Windows 上,可以改在浏览器或代理客户端里填账号,或者问厂商能不能改用白名单绑定你的出口 IP。
netsh winhttp 查出来没有代理,可浏览器明明在走代理,是怎么回事?
Windows 里有两套代理设置,“设置”页面一套,WinHTTP 一套。netsh winhttp show proxy 只显示 WinHTTP 那一套,它给调用 WinHTTP 接口的程序用,你的浏览器既然在走代理,用的就是另一套。两边不一样很正常,想让它们一致,可以运行 netsh winhttp import proxy source=ie,把“设置”里的那一套导入 WinHTTP。
怎么确认浏览器真的走了代理?
开关代理各访问一次同一个查询出口 IP 的网站,看显示的地址有没有变。也可以打开代理客户端的连接列表,找刚才访问的域名是不是出现在里面、走的是哪个节点。
资料来源与更新记录
- 在 Windows 中使用代理服务器 Microsoft 支持 · 2026-10-20
- netsh winhttp Microsoft Learn · 2026-10-20
- How Can I Switch Between Using a Proxy Server and Not Using a Proxy Server?(2005-05-19) Microsoft Scripting Blog · 2026-10-20
- 在 Mac 上更改代理设置 Apple 支持 · 2026-10-20
- scutil(8) 手册页源文件 Apple(apple-oss-distributions) · 2026-10-20
- 在 iPhone 上管理无线局域网设置(iPhone 使用手册) Apple 支持 · 2026-10-20
- Global HTTP Proxy device management payload settings for Apple devices Apple 支持 · 2026-10-20
- 管理 Pixel 手机上的高级网络设置 Google Pixel 手机帮助 · 2026-10-20
- RFC 1122 Requirements for Internet Hosts(1989-10) IETF · 2026-10-20
- RFC 4291 IP Version 6 Addressing Architecture(2006-02) IETF · 2026-10-20
- RFC 6335 Service Name and Transport Protocol Port Number Registry 管理规程(2011-08) IETF · 2026-10-20
- Service Name and Transport Protocol Port Number Registry IANA · 2026-10-20
- clash-verge-rev 源码 constants.rs(dev 分支) clash-verge-rev(GitHub) · 2026-10-20
- clash-verge-rev 源码 verge.rs(dev 分支) clash-verge-rev(GitHub) · 2026-10-20
- clash-verge-rev 最新发布页 clash-verge-rev(GitHub) · 2026-10-20
- v2rayN 源码 ConfigHandler.cs(master 分支) 2dust/v2rayN(GitHub) · 2026-10-20
- v2rayN 源码 V2rayInboundService.cs(master 分支) 2dust/v2rayN(GitHub) · 2026-10-20
- v2rayN 最新发布页 2dust/v2rayN(GitHub) · 2026-10-20
- 代理端口(mihomo 文档) MetaCubeX · 2026-10-20
- 全局配置(mihomo 文档) MetaCubeX · 2026-10-20
- Squid 配置指令 http_port Squid Project · 2026-10-20
- RFC 1928 SOCKS Protocol Version 5(1996-03) IETF · 2026-10-20
- Proxy environment variables(everything curl) curl 项目 · 2026-10-20
- Shadowrocket(App Store 美国区页面) Apple App Store · 2026-10-20
- clash-verge-rev 源码 clash.rs(dev 分支) clash-verge-rev(GitHub) · 2026-10-20
- v2rayN 源码 EInboundProtocol.cs(master 分支) 2dust/v2rayN(GitHub) · 2026-10-20
- v2rayN 源码 ConfigItems.cs(master 分支) 2dust/v2rayN(GitHub) · 2026-10-20
- v2rayN 简体中文界面文字 ResUI.zh-Hans.resx(master 分支) 2dust/v2rayN(GitHub) · 2026-10-20
- DL 首次发布