VMess MD5 认证信息 淘汰机制 2022-1-6

问题描述:

好几个小伙伴向我反馈,其用一键脚本搭建的V2ray梯子,最近”不好用了”。

大概率的影响因素,就是如本文标题所说的vmess md5认证信息,淘汰机制的影响。

官方的链接说明: https://www.v2fly.org/config/protocols/vmess.html

自 2022 年 1 月 1 日起,服务器端将默认禁用对于 MD5 认证信息 的兼容。

换成大白话就是,在2022-1-1开始,服务端的V2ray会默认自动拒绝旧版的Header,造成客户端发送的连接请求,在服务端进程上被拒绝连接。

常见的报错信息如下:

2022/01/02 16:26:41 127.0.0.1:57634 rejected common/drain: common/drain: unable to drain connection > websocket: close 1000 (normal) > proxy/vmess/encoding: invalid user: VMessAEAD is enforced and a non VMessAEAD connection is received. You can still disable this security feature with environment variable v2ray.vmess.aead.forced = false . You will not be able to enable legacy header workaround in the future.

// 当 alertID >0 时,VMess 出站仍将使用 VMess MD5

// 影响的版本范围 4.35.0

因为,不同平台,不同的客户端,开发者适配工作暂时未完成,且为了兼容很多不懂升级客户端的人,暂时应优先考虑将V2RAY_VMESS_AEAD_FORCED在环境变量中关闭的方式。

处理的办法1

修改systemd服务

修改 /etc/systemd/system/v2ray.service

增加一行内容

Environment="V2RAY_VMESS_AEAD_FORCED=false"

增加完,重启服务即可

systemctl daemon-reload

systemctl restart v2ray

处理办法2

修改systemd服务

修改 /etc/systemd/system/v2ray.service

ExecStart=/usr/bin/env v2ray.vmess.aead.forced=false /usr/bin/v2ray/v2ray -config /etc/v2ray/config.json

增加完,重启服务即可

systemctl daemon-reload

systemctl restart v2ray

处理办法3

下载旧版本(低于4.35.0)的对应平台的release二进制文件压缩包,解压覆盖到/usr/bin/v2ray/目录

附录1:

# 如果是Docker,修改 docker-compose.yml
environment:
        - 'config/etc/v2ray/config.json'
        - 'V2RAY_VMESS_AEAD_FORCED=false'
Donate
云乞讨

VMess MD5 认证信息 淘汰机制 2022-1-6》有4个想法

  1. jo

    实测,只加了 Environment=”V2RAY_VMESS_AEAD_FORCED=false”,还是不行。最后,我又把 alertID 改为 0,才终于修好了。

    回复
  2. heihei

    直接再xshell 中执行 Environment=”V2RAY_VMESS_AEAD_FORCED=false” 就行了么?我这样执行了还是不行。求大佬指定啊

    回复
    1. mengke

      在vps的,/etc/systemd/system/v2ray.service文件里修改,上面都写出来了,还有alertID,config.json配置为0,客户端(安卓、win10)也为0,还是不行,必须修改service文件。

      回复

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注