V2Ray 原生支持 Socks、HTTP协议,以及原创的VMess协议。

同时V2Ray也有一些比较屌的特性:

  • 在一个进程中可以配置不同的端口使用不同的协议进行通讯。
  • 通过不同的传入和传出协议组合,灵活转换通讯格式。
  • 上述协议均可使用 TLS、TCP、WebSocket、mKCP 传输方式进行传输。

官方网站(文档)


V2Ray服务器端安装

由于 V2Ray 的配置文件比较复杂,萌新可以考虑直接用一键脚本:

https://github.com/233boy/v2ray

备份 密码: 1h8a

此脚本支持 V2Ray 多数传输协议,配置 WebSocket + TLS / HTTP/2 ,配置动态端口,以及配置 Shadowsocks 。脚本作者也在博客给出了教程,我就不介绍怎么用了。=_=


运行下面bash指令即可下载并安装 V2Ray :(如果你使用的系统不支持 yum 或 apt-get,请先安装 unzip 和 daemon。)

bash <(curl -L -s https://install.direct/go.sh)

V2Ray 会配置自动运行脚本,但只支持带有 Systemd 的系统(包括 Debian / Ubuntu 全系列)。

脚本运行完成后,你需要:

编辑 /etc/v2ray/config.json 文件来配置你需要的代理方式。

然后运行 service v2ray start 来启动 V2Ray 进程。

由于 V2Ray的验证算法中包含时间,可以先运行 date -R 查看系统时间,如果和本机时间不同的话可以运行:

sudo date --set="2011-11-11 11:11:11"

如何控制 V2Ray 运行:

service v2ray start|stop|status|reload|restart|force-reload

PS:更新 V2Ray 时只需要重新执行go.sh即可。

V2Ray服务器端配置

以下是一个标准的服务端配置文件(使用VMess协议):

{
  "inbound": {
    "port": 10086, // 服务器监听端口,必须和上面的一样
    "protocol": "vmess",
    "settings": {
      "clients": [{ "id": "b831381d-6324-4d53-ad4f-8cda48b30811" }] //UUID事关安全,可以到 https://www.uuidgenerator.net 在线生成
    }
  },
  "outbound": {
    "protocol": "freedom",
    "settings": {}
  }
}

V2Ray 多用户配置方法:

需要在配置文件添加一个 "inboundDetour" ,例子如下:

{
  "inbound": {
    ...
  },
  "inboundDetour":[
    {
      "port": 用户的端口(不同于inbound), 
      "protocol": "vmess",
      "settings": {
        "clients": [
          {
            "id": "用户的UUID(不同于inbound)",
            "level": 1,
            "alterId": 64
          }
        ]
      },
      "streamSettings":{
        "network": "tcp"
      }
    }
  ],
  "outbound": {
    ...
  },
  "outboundDetour": [
    ...
  ],
  "routing": {
    ...
  }
}

配置TSL:

需要事先准备证书文件,可以去CloudFlare申请一个自定义证书

{
  "inbound": {
    "port": 443, //推荐使用443
    "protocol": "vmess",
    "settings": {
      "clients": [
        {
          "id": "892fae30-1616-4e76-a53e-43e951f2d107",
          "level": 1,
          "alterId": 64
        }
      ]
    },
    "streamSettings":{
      "network": "tcp",
      "security": "tls",
      "tlsSettings": {
        "certificates": [
          {
            "certificateFile": "/etc/v2ray/v2ray.crt",
            "keyFile": "/etc/v2ray/v2ray.key"
          }
        ]
      }
    }
  },
  ... 
}

修改配置后均需要重启服务才能生效,别忘了哦。

V2Ray客户端配置

下载 V2Ray 客户端:

Github页面 or 下载编译好的版本

以下是一个标准的客户端配置文件:

{
  "inbound": {
    "port": 1080,  // SOCKS 代理端口,在浏览器中需配置代理并指向这个端口
    "listen": "127.0.0.1",
    "protocol": "socks",
    "settings": {
      "udp": true
    }
  },
  "outbound": {
    "protocol": "vmess",
    "settings": {
      "vnext": [{
        "address": "0.0.0.0", // 服务器地址,请修改为你自己的服务器 ip 或域名
        "port": 10086,  // 服务器端口
        "users": [{ "id": "b831381d-6324-4d53-ad4f-8cda48b30811" }] //UUID
      }]
    }
  },
  "outboundDetour": [{
    "protocol": "freedom",
    "tag": "direct",
    "settings": {}
  }],
  "routing": {
    "strategy": "rules",
    "settings": {
      "domainStrategy": "IPOnDemand",
      "rules": [{
        "type": "field",
        "ip": [
          "0.0.0.0/8",
          "10.0.0.0/8",
          "100.64.0.0/10",
          "127.0.0.0/8",
          "169.254.0.0/16",
          "172.16.0.0/12",
          "192.0.0.0/24",
          "192.0.2.0/24",
          "192.168.0.0/16",
          "198.18.0.0/15",
          "198.51.100.0/24",
          "203.0.113.0/24",
          "::1/128",
          "fc00::/7",
          "fe80::/10"
        ],
        "outboundTag": "direct"
      }]
    }
  }
}

在 Windows 和 macOS 中,配置文件通常是 V2Ray 同目录下的 config.json 文件。直接运行 v2ray 或 v2ray.exe 即可。

V2Ray 启动后,仍需要设置系统代理才能正常运行,即 127.0.0.1 端口 1080

为了方便使用和获得PAC功能,GUI工具是必不可少的,这里整理了 v2Ray 目前可用的GUI工具和APP:

Windows

macOS

Android

iOS

  • kitsunebi(国区)
  • Pepi (原名ShadowRay)(外区)

Windows下的GUI工具需要先下载V2Ray客户端然后将GUI的exe文件放入同一目录运行即可,注意GUI工具会覆盖以前的配置文件。