2023-07-03 04:36:42 -04:00

2.1 KiB
Raw Blame History

Freedom

Freedom 是一个出站协议,可以用来向任意网络发送(正常的) TCP 或 UDP 数据。

OutboundConfigurationObject

{
  "domainStrategy": "AsIs",
  "redirect": "127.0.0.1:3366",
  "userLevel": 0,
  "fragment": {
    "packets": "tlshello",
    "length": "100-200",
    "interval": "10-20" // ms
  }
}

domainStrategy: "AsIs" | "UseIP" | "UseIPv4" | "UseIPv6"

在目标地址为域名时, 配置相应的值, Freedom 的行为模式如下:

  • "AsIs": Freedom 通过系统 DNS 服务器解析获取 IP, 向此域名发出连接.
  • "UseIP""UseIPv4""UseIPv6": Xray 使用 内置 DNS 服务器 解析获取 IP, 向此域名发出连接. 默认值为 "AsIs"

::: tip TIP 1 当使用 "UseIP" 模式,并且 出站连接配置 中指定了 sendThroughFreedom 会根据 sendThrough 的值自动判断所需的 IP 类型IPv4 或 IPv6。 :::

::: tip TIP 2 当使用 "UseIPv4""UseIPv6" 模式时Freedom 会只使用对应的 IPv4 或 IPv6 地址。当 sendThrough 指定了不匹配的本地地址时,将导致连接失败。 :::

redirect: address_port

Freedom 会强制将所有数据发送到指定地址(而不是 inbound 指定的地址)。

其值为一个字符串,样例:"127.0.0.1:80"":1234"

当地址不指定时,如 ":443"Freedom 不会修改原先的目标地址。 当端口为 0 时,如 "xray.com: 0"Freedom 不会修改原先的端口。

userLevel: number

用户等级,连接会使用这个用户等级对应的 本地策略

userLevel 的值, 对应 policylevel 的值。 如不指定, 默认为 0。

fragment: map

一些键值对配置项,用于控制发出的 TCP 分片,在某些情况下可以欺骗审查系统,比如绕过 SNI 黑名单。

"packets":支持两种分片方式 "1-3" 是 TCP 的流切片,"tlshello" 是 TLS 握手包切片

"length":分片包长

"interval"分片间隔ms