# 小结

现在对本章作个总结。

# 配置文件格式

V2Ray 的配置文件格式就像这样:

{
  "log": {},
  "inbounds": [],
  "outbounds": [],
  "routing": {},
  "transport": {},
  "dns": {},
  "reverse": {},
  "policy": {},
  "stats": {},
  "api": {}
}

总的来说,V2Ray 的配置有 10 个字段,每个字段都可以进一步展开成具体的配置。这些配置字段当中,本章有涉及到前面 4 项,关于 dnstransportreverse 将在后文说明。而 apipolicystats 的内容暂未提供,对这些感兴趣的仔细研究手册吧。配置文件的详细信息可以参考手册 (opens new window)

要理解 V2Ray 的工作模式,首先得抛开客户端和服务器的概念(教程中说客户端和服务器是习惯了),我们更应该以中转节点的概念来理解。 V2Ray 只是一个转发数据的软件,只要它从入口当中接收到数据包,不管 V2Ray 对这些数据包做了什么(加密、解密、协议转换等),到最后肯定是要把这些数据包从出口发出去。每一个运行的 V2Ray 都是一个节点,它从上一个节点接收数据,发送到下一个节点,在这样由多个节点组成的代理链中,首节点和末节点就是我们常说的客户端和服务器。更广义地说,每个节点对于上一个节点来说是服务器,对于下一个节点来说是客户端。

# 协议

无论是出口还是入口,我们首先要明确的是协议,只有协议对了才能正常通信。

V2Ray 的传入协议有 HTTP、SOCKS、VMess、Shadowsocks、Dokodemo-door;传出协议有 VMess、Shadowsocks、Blackhole、Freedom、SOCKS。

在 inbounds 和 outbounds 当中,无论使用了什么协议,inbounds 或者 outbounds 的配置格式都是一样的,区别只在于不同的协议对应的 settings 内容不一样。


# 更新历史

  • 2018-04-05 补充
  • 2018-11-09 跟进 v4.0+ 配置格式
  • 2019-07-12 添加手册链接