好文集ChatGPT Plus¥119

家宽IP链式代理教程第二篇:服务器上配一次,手机电脑全家都能用

文章目录

家宽IP配置教程 · 第2篇 服务端链式代理

在上一篇里,我用Clash Verge的客户端链式代理接了家宽IP,在电脑上粘贴一段脚本就能用。

嵌入推文(联网查看)

方法很简单,但实际用下来,有两个问题绕不开:

  • 只有那一台电脑能用。 手机、平板想用,每个客户端都得再配一遍,各家的链式写法还不一样。

  • 家宽的账号密码散落在每台设备上。 设备一多,改个密码都得挨个改。

当时我也说了,服务端的方案测完再单独分享,这篇就来补上:把链式代理挪到服务器上做。

配好之后,你会多出一个家宽节点。手机、电脑、平板,不管用什么客户端,选中它出口就是家宽IP;切回原节点,一切照旧。

这篇用的是3x-ui面板,全程在面板里点:

  • 加一个出站、一个用户、一条路由规则,不用手写配置。

  • 还是原来的443端口,不开新端口,不改防火墙。

  • 文末附实测:纯净度、延迟、UDP支持,以及我踩过的几个坑。

依旧叠个甲:这是我自己跑通的做法,不一定是最优解。有说得不对的地方,或者你有更好的玩法,欢迎在评论区补充。

先搞清楚原理

两种方案的区别

客户端链式(上一篇)服务端链式(本文)
在哪配置每台设备的客户端里VPS上配置一次
支持哪些客户端只支持能写链式的客户端(mihomo内核等)任何能导入节点的客户端
家宽IP的密码存在哪每台设备上只在服务器上
改动风险低,清空脚本就恢复要改服务端配置,重启时所有连接会断一下

只有一台电脑要用,上一篇的方案更省事。家里好几台设备都要用,或者想给手机用,就用这一篇的方案。

链路长什么样

用「家宽用户」连 → VPS原有入站(443)→ socks出站 → 家宽IP → 目标网站
用「原来的用户」连 → VPS原有入站(443)→ 直连出站 ───────→ 目标网站(不受影响)

两个节点连的是同一个入站、同一个端口,区别只在用的是哪个用户(UUID)。VPS认出是家宽用户,就把流量交给家宽IP。

说白了就三件事:

  1. 加一个出站:告诉VPS怎么连到家宽IP。出站管的是「流量从VPS出去后交给谁」。

  2. 加一个用户:入站还是原来那个,只在里面多建一个客户端,专门用来走家宽IP。

  3. 加一条路由规则:这个用户的流量,全部交给家宽IP出站。

全程不新增入站,原来的节点一点不动。想走家宽就切到新节点,不想走就切回来。

为什么不新开一个入站

另一种常见做法是克隆一个入站、换个端口,专门走家宽。但Reality伪装的是正常的HTTPS网站,正常网站都在443端口,Xray自己也会警告:Reality监听非443端口,会增加IP被墙的可能。

一个端口只能给一个入站用,想全部留在443上,就只能在同一个入站里按用户来分。这也是3x-ui多出口最常见的做法,还顺带省掉了开端口、改防火墙这两步。

新开入站也有它适合的场景,后面「给多个人用」里会讲。

我的测试环境

项目我的环境
VPS甲骨文免费机,ARM,Ubuntu 24.04
面板3x-ui v3.8.5,Xray v26.9.9
原有节点VLESS + Reality,443端口
家宽IP香港静态住宅IP,SOCKS5

还没有VPS的,可以试着白嫖一下甲骨文的免费机,注册和开机教程可以参考这篇。

嵌入推文(联网查看)

3x-ui的版本很重要。 v3.x的界面和v2.x差别不小,菜单位置、客户端管理方式都变了。本文按v3.8.5写,版本差异的地方我会单独说明。

开始配置

准备工作

需要三样东西:

1. 一台装好3x-ui的VPS,并且已经有一个能正常用的节点。

2. 家宽IP的四项信息。 代理主机、端口、账号、密码,在购买的后台复制。

文章配图

3. 确认家宽IP的认证方式。 后台给了账号密码的,就是账密认证,直接用。如果只给了主机和端口、没有密码,那是IP白名单模式,需要在后台把VPS的IP加进白名单。注意是VPS的IP,不是你自己电脑的IP。

第一步:在VPS上确认家宽IP能用

SSH登录VPS,执行这条命令,四项信息换成自己的:

curl -x "socks5h://账号:密码@代理主机:端口" "https://ipinfo.io"

我的结果:

文章配图

返回的ip是后台显示的出口IP,就说明可用。

作为对照,VPS自己直连出去是这样的:

文章配图

一个是运营商,一个是甲骨文机房,区别一目了然。

为什么是socks5h,不是socks5

注意命令里写的是socks5h,多了一个h。这个h决定的是:网址由谁来“翻译”成IP。

你访问一个网站,其实分两步:

  1. 先查DNS,把ipinfo.io这样的域名翻译成IP地址。

  2. 再去连这个IP。

socks5和socks5h的区别就在第1步由谁来做:

写法谁来查DNS过程
socks5VPS自己VPS先把域名查成IP,再把IP交给家宽IP去连
socks5h家宽IP那一端VPS把域名原样交出去,家宽IP那边自己查、自己连

为什么要在意这个?两个原因:

1. 查DNS这个动作,也会暴露你在哪。 风控严格的网站能看到是哪台DNS服务器在帮你查域名。如果是VPS查的,网站看到的就是:查DNS的在圣何塞的甲骨文机房,连过来的却是香港的家庭宽带。两边对不上,反而更可疑。

2. 查出来的IP可能不是最合适的。 大网站都有CDN,会根据查询者的位置返回最近的服务器。VPS在圣何塞查,拿到的是离圣何塞近的服务器,可家宽IP在香港,等于绕了远路。

用socks5h,查DNS和连接都发生在家宽IP那一端,网站看到的是一个前后一致的香港家庭用户。

就这条测试命令来说,用哪个都能看到出口IP,结果没区别。我特意写socks5h,是因为后面Xray里也要做到同样的效果(第四步的「嗅探」设置),这里先把道理讲清楚。

第二步:备份

动手之前先备份。3x-ui的所有配置,包括入站、出站、路由、用户,都存在一个数据库文件里,备份它就够了。在面板首页顶部点「备份和恢复」,再点「备份」,会下载一个.db文件到你的电脑上。出了问题,在同一个地方点「恢复」,把它传回去就行。

文章配图

第三步:添加家宽IP出站

面板左侧菜单进入「出站」,点「+ 出站」,按下面填:

字段填什么
协议socks
标签residential(自己起名,后面路由规则要用)
地址代理主机
端口代理端口
用户名、密码账号、密码

其他保持默认。有的家宽后台给的示例是http://开头的,比如我用的这家,但同一个端口也支持SOCKS5,这里选socks就行。

文章配图

点「创建」,再点页面左上角的「保存」。

保存之后,可以把右上角的测试方式切到「HTTP」,点这一行最右边的闪电按钮测一下。能显示出口IP和国家,说明VPS到家宽IP这一段是通的。

文章配图

这一步做完,原有节点不受任何影响:现在还没有任何流量会被送到这个出站。

第四步:确认原有入站的嗅探设置

进入「入站」页面,点原有入站的编辑按钮,切到「嗅探」标签页:保持开启,「仅路由」不要勾选。3x-ui默认就是这样,一般不用改。

文章配图

不勾「仅路由」时,嗅探到的域名会替换掉原来的目标地址,再发给家宽IP。这样即使你的客户端在本地已经把域名解析成了IP,最终也还是由家宽IP那一端重新解析域名,DNS的出口和IP的出口能对得上。

第五步:新建一个家宽用户

v3.x的3x-ui里,客户端是独立管理的。进入左侧「客户端」页面,点「+ 添加客户端」:

字段填什么
邮箱起个好认的名字,比如home-hk。后面路由规则就靠它认人
关联入站选你原有的入站(我的是Oracle-REALITY)
Flow(在「凭据」标签页)和原来的客户端保持一致,我的是xtls-rprx-vision

其他保持默认,点「创建」。

文章配图

创建之后,在这个客户端那一行点二维码图标,就能拿到它的节点链接和订阅链接,手机扫码导入即可。节点名会带上邮箱,比如Oracle-REALITY-home-hk。

v2.x的老版本没有独立的「客户端」页面,在原有入站的编辑页里直接添加客户端就行,邮箱同样要起一个新的(邮箱全局不能重复)。

第六步:添加路由规则

进入「路由」,切到「路由规则」标签页,点「+ 路由规则」,只填两项:

字段填什么
用户选第五步建的home-hk
出站标签residential

评论栏可以写一句备注,方便以后认。

不同版本的面板,这个表单长得不太一样,有的栏位可能没有,或者换了形式。认准「用户」和「出站标签」这两栏填,其他留空。填错栏位,Xray可能会启动失败。

文章配图

点「创建」,再点左上角的「保存」。

文章配图

这四条规则分别是干什么的

先说怎么读这张表:每一行是一条规则,中间几列是条件(网络、目标地址、入站、用户),最后一列是结果(交给哪个出站)。条件满足,流量就交给那个出站。

#条件交给作用
1从api入站进来的api面板自己用的,别动
2目标是内网地址(geoip:private)blocked(丢弃)不让节点访问服务器内网
3协议是BT下载(bittorrent)blocked(丢弃)禁止用节点下BT
4用户是home-hkresidential本文新加的,走家宽IP

前三条是3x-ui装好就自带的,保持原样就行:

  • 第1条:面板和Xray的内部通道,流量统计、增删用户靠它。启用开关是灰的,别动它。

  • 第2条:挡住192.168.x.x、127.0.0.1这类内网地址,防止别人通过节点摸到服务器本机的服务。

  • 第3条:挡住BT下载。VPS商家和住宅IP厂商基本都禁止BT,靠嗅探识别,能挡大部分。

那原来用户的流量呢?它一条都匹配不上,就走默认出站。默认出站是出站列表里的第一个,也就是direct,从VPS直接出去。所以原节点完全不受影响。

规则的顺序很重要

Xray从上往下逐条检查,命中第一条就不再往下看。

  • 我把新规则放在第4条,排在两条屏蔽规则后面。这样家宽用户的流量会先过一遍屏蔽:访问内网、下BT,照样被拦下,不会跑到家宽IP上。

  • 如果你的面板里还加过geosite:cn直连、WARP分流这类规则,要把新规则拖到它们前面。否则家宽用户的流量会先被这些规则拦走,比如访问某些网站时走了直连或WARP,而不是家宽IP。拖动规则用每一行最左边的六个点。

第七步:重启Xray

回到面板首页,点顶部的「重启」。

文章配图

重启时,这台VPS上所有正在用的连接都会断一下,几秒就恢复。如果有家人朋友在用,提前打声招呼。

用的还是原来的443端口,所以不用放行新端口,也不用动防火墙,到这里就配完了。

给多个人用

一台VPS几个人共用、都想走家宽的话,每人建一个自己的家宽用户,比如a-hk、b-hk,然后在同一条路由规则的「用户」里把他们都选上:

用户:a-hk, b-hk  →  出站:residential

不建议几个人共用同一个home-hk:流量混在一起统计,想停掉某一个人也做不到。每人一个用户,流量、限速、到期时间都能单独管。

每个人都要两条线路:换成新开入站

如果共用VPS的每个人都既要原节点、又要家宽节点,按用户分流就得给每人建两个用户,3个人就是6个。这种情况新开一个入站更省事:

  1. 在原有入站那一行点「⋮」→「克隆」,打开新入站,改个好认的备注,比如Oracle-Residential。

  2. 在新入站那一行点「⋮」→「附加现有客户端」,把大家原来的客户端都挂上去。订阅里会自动多出一个节点,不用换订阅链接。

  3. 路由规则的「入站标签」选这个新入站,出站选residential。

  4. 放行新端口:开了ufw的执行sudo ufw allow 端口/tcp;甲骨文还要在iptables的REJECT规则前面插一条放行,并在控制台「安全列表」里加一条TCP入站规则。

文章配图

代价就是前面说的:Reality要监听一个非443端口,被墙的可能会增加。

验证

先把客户端切到全局模式,原因见「容易踩的坑」。

1.导入家宽用户的节点,在客户端里选中它。

2.打开这几个网站:

ipinfo.io:IP和运营商是不是家宽IP。 ippure.com:是否住宅、是否原生、纯净度,还能看到各家数据库的定位。 ping0.cc:是否住宅、是否原生、风控值。 scamalytics.com:欺诈风险分,越低越好。 browserleaks.com/ip:IPv6、WebRTC、DNS有没有泄漏。

3.切回原来的节点,IP变回VPS的。

两个节点连的是同一个端口,出口却不一样,就说明分流生效了。

手机导入后,多了一个Oracle-REALITY-home-hk节点:

文章配图

两个节点分别打开IPPure,左边是家宽节点,右边是原节点:

文章配图

家宽节点原节点
出口香港,Level 3圣何塞,Oracle
IP属性住宅IP机房IP
IPPure系数3%,极度纯净39%,中性

同一个443端口,出口完全不同,分流生效。

有一点不用纠结:各家数据库的位置对不上很正常。 同一个家宽IP,Cloudflare、IPinfo等大多数判在香港,MaxMind判在美国,B站甚至显示澳大利亚。看多数就行,风控严格的网站用的是哪家数据库不好说,买之前多查几家心里有数。

日常怎么用

验证时用全局模式,日常更推荐规则模式 + 只让部分网站走家宽:

  • 在客户端的分流规则里,把需要干净IP的网站,比如AI服务、账号注册、支付,指向家宽节点。

  • 其他流量照常走原节点。

这样家宽的流量只花在刀刃上,其他网站也不用多绕一段路。

实测数据

速度

在VPS本机上测,直连和走家宽各请求5次google.com/generate_204:

出口平均耗时
VPS直连0.03秒
经香港家宽0.97秒

每个请求多了将近1秒。原因是绕路:我的VPS在美国圣何塞,家宽在香港,流量要先横跨太平洋到香港,再从香港出去,回程也一样。

注意这组数据是在VPS上测的,不包含国内到VPS的那一段,只反映家宽这一跳的额外开销。想少绕路,VPS和家宽IP最好选同一个地区,比如美国VPS配美国家宽,香港家宽配香港或日本的VPS。

UDP

我这个香港家宽不支持UDP:通过它发起UDP转发,直接被拒绝了。厂商的帮助中心也写明了,目前只支持TCP。

影响没有想象中大:

  • 普通网页、注册登录、AI服务:主要走TCP,不受影响。

  • QUIC(HTTP/3):YouTube、谷歌系等网站会先尝试UDP,失败后浏览器自动退回TCP,照样能打开,只是第一次加载可能慢一点。

  • 语音、视频通话和游戏:基本都走UDP,在家宽节点上用不了,切回原节点就行。

建议再加一条路由规则,把家宽用户的UDP直接丢掉,放在家宽规则前面:

字段填什么
用户home-hk
网络udp
出站标签blocked

不加的话,UDP流量也会被送去家宽出站,在那里失败,不会从机房IP漏出去。加上之后,UDP在VPS上就被立刻丢弃,浏览器能更快退回TCP,用起来更顺。

想知道自己的家宽支不支持UDP,可以直接问厂商,或者看后台和帮助中心有没有写「UDP」。

容易踩的坑

规则模式下测IP,测出来的可能是自己的IP。 规则模式只有「走代理」的网站才经过节点,很多测IP的网站会被判成直连。验证时用全局模式;日常用规则模式时,确认你要用家宽IP访问的网站在规则里是走代理的。

家宽IP断了,节点就不通。 这是我故意没配自动回退:宁可连不上,也不要悄悄换回机房IP,让你误以为还在用家宽。

不要直接改config.json。 3x-ui重启Xray时会用数据库重新生成它,手改的会被覆盖,改动都在面板里做。

大流量别走家宽节点。 家宽IP通常按流量或带宽计费,速度也慢,看视频、下载用原节点。

截图分享前记得打码:家宽IP账号密码、UUID、VPS的IP。

其他环境怎么配

上面是在3x-ui面板里点的做法。不用面板,或者服务端不是3x-ui,思路也完全一样:一个出站、一个家宽用户、一条路由规则,只是写法不同。

先用这条命令看看你的VPS上跑的是哪种:

ps aux | grep -E "xray|sing-box|hysteria" | grep -v grep

熟悉JSON:面板的高级模式

「Xray配置」里可以直接编辑完整的JSON模板,把下面Xray那一节的出站和路由规则粘进去。效果和点面板一样。

手写Xray配置(一键脚本装的Xray)

在outbounds里加:

{
  "tag": "residential",
  "protocol": "socks",
  "settings": {
    "servers": [{
      "address": "代理主机",
      "port": 端口,
      "users": [{ "user": "账号", "pass": "密码" }]
    }]
  }
}

在原有入站的clients里加一个用户,email就是路由规则认人用的名字:

{ "id": "新生成的UUID", "email": "home-hk", "flow": "xtls-rprx-vision" }

在routing.rules里加,注意顺序:

{ "user": ["home-hk"], "outboundTag": "residential" }

改完用xray run -test -c config.json检查,再重启。用一键脚本装的,注意脚本更新时可能会覆盖你的修改。

sing-box、Hysteria2

思路一样,也是一个出站加一条路由规则。我手上没有这两种环境,就不贴没验证过的配置了。用的朋友评论区留言,人多的话我搭一台补测。

写在最后

到这里,服务器上就多了一个家宽出口,手机、电脑、平板都能用上。

两篇写下来,客户端和服务端其实是同一件事的两种做法:只有一台电脑要用,上一篇的脚本更省事;设备多了,或者想给手机用,就把它挪到服务器上。手上是什么情况,就从哪一篇开始。

感谢看到这里,如果这篇文章对你有帮助的话,欢迎关注、点赞、收藏。如果有其他想看的干货文章或者文章中存在错误的地方,也欢迎在评论指出。我们下篇文章再见。

全文完
查看原文