logo NodeSeekbeta

[教程]realm 开源一键中转脚本,简单中转教程,单端转发与双端隧道详解,让Alice免费机用上家宽出口

看到 Alice 的免费机不仅自带家宽出口,还提供故障切换策略,我对此非常感兴趣。可惜运气不佳,只能一直搁置
感谢 @tof @solaireh3 @zx3 大佬提供的免费机以及帮助, @AliceNetwork 提供的免费资源

全功能一键脚本项目开源地址:https://github.com/zywe03/realm-xwPF

废话少说,本文不深入讨论敏感话题,敏感话题或遇到不理解的地方欢迎加群讨论

单纯的闲聊,集思广益,分享有趣好玩的想法,欢迎加入tg开源画饼群
本文取名定义
落地机=出口机
客户端即本地(手机/电脑)使用的连接软件

  • Alice免费机(目的使用家宽出口):落地机IP:端口22
  • 国内中转机(连接Alice和本地电信连接它都很流畅):中转机IP:端口
  • 家宽出口信息: 2a14:67c0:116::1,端口:30000

教程一

  1. 最常用的单端转发(拿ssh协议举例,ssh协议可举一反三换成其他协议)

大家的服务器肯定都有ssh协议,一般使用对应IP:端口输入密码即可连接
正常没有使用转发直接ssh连接链路示意图

7a86af0f62d7cc1478db28bafeb2d52a.png

Q:既然可以直接连接使用,为什么还需要中转机呢?

有些出口机的网络质量并不理想,可能存在绕路、丢包等问题,导致使用体验很卡顿。而在链路中增加一台网络质量较好的中转机,就能明显改善这种情况。另外,如果落地机的 IP 被封,通过未被封锁的中转机依然可以顺利连接。至于两台服务器之间的链路质量,可以使用脚本中的 7. 中转网络链路测试 来进行分析和判断。

Q:那直接找一台网络质量好的机器不就行了吗?

如果你能找到一台网络质量好、又能满足所有需求的机器,确实可以直接用,不需要中转。但通常这种机器要么价格偏高,要么存在功能限制(例如无法解锁 Netflix 等流媒体或IP质量不佳)。在这种情况下,组合使用一台出口机和一台中转机,就能既控制成本,又满足功能需求。

手把手操作流程

我本地电信连接Alice免费机,使用客户端连接
c9c125b12403bca39425e177c9ace9bf.png

能用但是很卡顿
在中转机上执行指令安装脚本
选择2. 转发配置管理2. 添加新配置[1] 中转服务器
输入端口2222(一会客户端连接的端口)
出口入口都回车默认(脚本里不懂是什么的时候就回车默认)
出口服务器的IP地址或域名:落地机IP
出口服务器的监听端口(多端口使用,逗号分隔)::22
[1] 默认传输(不懂就默认)
保存生效后来到客户端,注意此时IP换成中转机IP,端口换成刚刚输入的2222

ec5c2dc4524fa3f2e0fd167d466de27c.png

剩下就像正常连接使用一样,只是换了IP和端口便可流程使用
单端转发完整链路示意图
e3c0a9ebcee757b95663fc73adc4e880.png

教程二

  1. 双端隧道(Alice免费机用上家宽出口方法)
    隧道:隧道是一种将数据包从一个网络移动到另一个网络的方法。隧道通过封装运作:将一个数据包包装在另一个数据包中,它还可以在网络之间建立高效和安全的连接,从而使用本不受支持的网络协议,并在某些情况下允许用户绕过防火墙。

背景:Alice的家宽出口是socks5协议,这种协议明文比较不安全几乎露头就封,此时就需要在原协议的基础上再对数据包封装一层(隧道)

在Alice机安装脚本,使用教程1.单端转发,连接家宽出口

中转服务器:
  • 中转: :::50000 → :: → 2a14:67c0:116::1:30000
    安全: 默认传输 | 备注: 家宽出口

在Alice机选择[2] 服务端(落地)服务器 (双端Realm架构)
等待中转服务器连接的端口:10000
转发本地目标IP地址:50000(上面单端转发的端口)
[5] TLS+WebSocket (自签证书),一路回车

落地服务器 (双端Realm架构):
  • 落地: :::10000 → 2a14:67c0:xxx:xxx::x:50000
    安全: wss 自签证书 (host: www.tesla.com) (路径: /ws) (SNI: www.tesla.com) | 备注: 隧道

回到国内中转机按照教程1.单端转发,注意此时是根据Alice机[2] 服务端(落地)服务器 (双端Realm架构)输入的信息,进行中转连接

中转服务器:
  • 中转: :::20000 → :: → 2a14:67c0:xxx:xxx::x:10000
    安全: wss 自签证书 (host: www.tesla.com) (路径: /ws) (SNI: www.tesla.com) | 备注: 隧道

我们在客户端就输入国内中转机IP:端口20000,连接
链路示意图
4c1f0d860cd89ca79f4234dd23f81316.png

如果没有国内中转机也是可以的,realm的ws/tls/wss协议是通用的应用层隧道,也就是说双端架构的加密方或解密方有一方可以不使用realm,但要记得双方加密方式,伪装域名等等必须一致
回到Alice的场景,如果客户端软件支持这些的加密协议只需要填入对应的信息,完成加密传出即可,比如这样
4a034c3731d5f14bae3c9d9b303bc578.png

以上是模拟本地服务器业务,如果引入第三台远端服务器业务在上面(Alice也可以这样省一步)
就不需要再多一条本地循环

中转服务器:
  • 中转: :::50000 → :: → 2a14:67c0:116::1:30000
    安全: 默认传输 | 备注: 家宽出口

而是直接在这里输入远方服务器IP,业务端口即可,完成解密并转发

内循环本地转发目标或者远端服务器业务:

本地业务输入: IPv4: 127.0.0.1 | IPv6: ::1 | 双栈: localhost
远端业务输入:对应服务器IP 

转发目标IP地址(默认:127.0.0.1):

好了,这就是关于单端转发和双端隧道基本教程,其中的ssh协议,客户端软件请自行举一反三

总结

如果落地机协议足够安全,那么单端透明转发是理想选择

如果落地机协议不够安全,那么把不安全协议的数据包,再封装进另一种协议的数据流中传输(隧道)是个不错的选择

关于负载均衡,MPTCP,Proxy Protocol,端口流量狗等等使用方法玩法讲解敬请期待

123
  • 卧槽,我被感谢哩 ac08

  • 好东西 顶一下大佬

  • 收藏,晚点折腾一下

  • 用过还挺好用的,感谢大佬

  • 好东西 帮顶! xhj006

  • 算是个小白友好教程,助力上手体验

  • 必须收藏

  • 顶一下

  • 海外那层我基本上不加密的 不管的 xhj021

123

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有61018位seeker

🎉欢迎新用户🎉