Skip to content

安装 x-ui

按照教程安装即可

https://github.com/vaxilu/x-ui

替换内核

https://alist.shenzjd.com/本地云盘/xray

20220330202902

替换好内核以后重启 x-ui

20220330203459

然后添加入站列表

20220330203556

安装订阅连接

提供一个 php 版本的自动更新的订阅地址

https://alist.shenzjd.com/本地云盘/809.php

原理说明

关于最近流行的 809 免流

近期有一种利用了联通某个反向代理接口的免流方法似乎挺流行,这里放上示例代码和简单的原理说明
该方法主要是利用 http://dir.wo186.tv:809/if5ax/ 接口反向代理自己的 v2ray&xray 服务器,并通过接口返回的反向代理信息连接到 v2ray&xray 服务器,从而实现免流的目的。该接口返回的反向代理服务器 ip 疑似被联通设置为白名单 IP,因此免流效果远超普通的域名伪装。 该接口的主要请求参数:

  • fakeid: 一串随机字符串,似乎长度固定为 22 个英文字母
  • spid: 未知,目前实测有效的参数为: 81117
  • pid: 未知,目前实测有效的参数为: 81117
  • spip: 反向代理的源服务器 IP
  • spport: 反向代理的源服务器端口
  • spkey: 在 path 及请求参数最后加上 3d99ff138e1f41e931e58617e7d128e2 之后做 md5 加密的结果

示例代码(Golang):

Go
func getFakeID() string {
 str := "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
 strb := []byte(str)
 r := rand.New(rand.NewSource(time.Now().UnixNano()))
 var result []byte
 for i := 0; i < 22; i++ {
  result = append(result, strb[r.Intn(len(strb))])
 }
 return string(result)
}
func getUrl(ip, port string) []string {
 path := "if5ax/?fakeid=" + getFakeID() + "&spid=81117&pid=81117&spip=" + ip + "&spport=" + port
 host := "http://dir.wo186.tv:809/"
 m := md5.Sum([]byte(path + "3d99ff138e1f41e931e58617e7d128e2"))
 key := hex.EncodeToString(m[:])
 r, _ := http.Get(host + path + "&spkey=" + key)
 body, _ := io.ReadAll(r.Body)
 rj := map[string]string{}
 json.Unmarshal(body, &rj)
 p := strings.Index(rj["url"], "/if5ax")
 t := strings.Index(rj["url"], "lsttm=")
 return []string{rj["url"][7:p], rj["url"][p:], rj["url"][t+6 : t+20]}
}
func main(){
  url:=getUrl("1.1.1.1", "443")
  fmt.Println(url)
}

该接口会返回一串 JSON,其中包含反向代理服务器的 url
!!此外,需要修改 xray&v2ray 引用的 ws 库删除 upgrade 头才能正常反代,只需要修改服务端,不然会连不上,可以参考一下我修改的!!
编译好的 Xray-Core
编译好的 XrayR

还是不懂?

直接请求接口把返回的 url 填进你节点配置文件里就行了!一定要修改过的 xray&v2ray服务端才行,该说的都说了,不需要额外操作!