教您端口偏移来达到任意端口可作为单端口使用。
何为端口偏移?
我们设置单端口后,所有用户都使用我们指定的端口进行通讯,但是有些时候,我们购买的机器没有开要的端口,那咋办?这就是端口偏移的目的,可以快速设置任意单端口给用户使用。
举个简单例子,我们前端单端口为8080,但是购买的机器是NAT机器,只给10000-10010这十个端口给我们使用,所以端口偏移后,让用户不用8080,而是用我们自定义的端口链接。
端口偏移为何分为前端和后端?
前端:前端指用户看到的端口,以及使用订阅后,节点会自动变成偏移后的端口,简单说,前端就是可以随意改变单端口,让用户进行连接。
后端:后端就是需要映射的端口,举个例子,我们用8080端口做单端口,那么后端对接的时候,会自动读取到8080,所以需要后端对端口进行映射,使我们已经偏移过去的端口映射到8080端口,达到可用的目的。
前端教程非常简单,作者的项目中有一个端口偏移分支,具体看这里:
我们可以直接使用此项目,也可以直接替换相应文件即可,具体步骤如下:
将此文件下载后,覆盖/app/Utils/URL.php文件即可,然后前端使用的时候,参考如下解释:
服务器具体端口=设置的单端口+偏移端口。
举个例子,服务器端口为10000-10010可以用,我们使用10000偏移到当前服务器的8080端口,那么我们得到的需要偏移的端口为:
10000-8080=1920
所以我们偏移端口为1920,添加节点的时候,在节点名字后面加上相应端口,具体格式如下:
假设节点名字为:美国 高速节点 那个我们就需要设置偏移节点为:美国 高速节点#1920 也就是在节点名字后面加上#端口号即可。
然后我们去前端选择节点,即可看到端口已经偏移到指定端口了。
节点不显示偏移端口方法:
有人会说,节点名字显示端口会不会太丑?
所以我们带来了新的解决方案,在描述中加上偏移端口。
文件地址:https://cikeblog.com/e/URL
下载后,用相同的方法替换URL.php文件,然后在描述中加上相应偏移端口即可(拖动图片到新窗口查看大图):
这样节点名字上就不会出现难看的偏移端口了。完美解决。
大佬,,如果之前是80,新的是1234,这样的话,还需要再添加个新用户设置对应的1234端口的单端口多用户吗?还是只显示之前的一个80单端口(我的意思是其它节点同时显示80和1234两个端口的话不美观)
大佬,dve更新到最新分支后再替换您这个魔改的URL.php。。会导致更新订阅后流量显示和日期显示文字的乱码。
我单端口用的80 按你教程后 节点亮了 有几kb/s上传速度 下载速度0 无网 换个端口吗
请自行查阅80端口是否被占用,以及防火墙是否已经关闭。
节点与新用户 怎么配置
请参考后端偏移教程。