风扇滑翔翼
3 months ago
committed by
GitHub
3 changed files with 0 additions and 119 deletions
@ -1,43 +0,0 @@
|
||||
# Domain Socket |
||||
|
||||
::: danger |
||||
推荐写到 [inbounds](../inbound.md) 的 `listen` 处,传输方式可选 TCP、WebSocket、HTTP/2. |
||||
未来这里的 DomainSocket 可能会被弃用。 |
||||
::: |
||||
|
||||
Domain Socket 使用标准的 Unix domain socket 来传输数据。 |
||||
|
||||
它的优势是使用了操作系统内建的传输通道,而不会占用网络缓存。 |
||||
理论上相比起本地环回网络(local loopback)来说,Domain socket 速度略快一些。 |
||||
|
||||
目前仅可用于支持 Unix domain socket 的平台,如 Linux 和 macOS。在 Windows 10 Build 17036 前不可用。 |
||||
|
||||
如果指定了 domain socket 作为传输方式,在入站出站代理中配置的端口和 IP 地址将会失效,所有的传输由 domain socket 取代。 |
||||
|
||||
## DomainSocketObject |
||||
|
||||
`DomainSocketObject` 对应传输配置的 `dsSettings` 项。 |
||||
|
||||
```json |
||||
{ |
||||
"path": "/path/to/ds/file", |
||||
"abstract": false, |
||||
"padding": false |
||||
} |
||||
``` |
||||
|
||||
> `path`: string |
||||
|
||||
一个合法的文件路径。 |
||||
|
||||
::: danger |
||||
在运行 Xray 之前,这个文件必须不存在。 |
||||
::: |
||||
|
||||
> `abstract`: true | false |
||||
|
||||
是否为 abstract domain socket,默认值 `false`。 |
||||
|
||||
> `padding`: true | false |
||||
|
||||
abstract domain socket 是否带 padding,默认值 `false`。 |
@ -1,74 +0,0 @@
|
||||
# QUIC |
||||
|
||||
QUIC 全称 Quick UDP Internet Connection,是由 Google 提出的使用 UDP 进行多路并发传输的协议。其主要优势是: |
||||
|
||||
1. 减少了握手的延迟(1-RTT 或 0-RTT) |
||||
2. 多路复用,并且没有 TCP 的阻塞问题 |
||||
3. 连接迁移,(主要是在客户端)当由 Wifi 转移到 4G 时,连接不会被断开。 |
||||
|
||||
QUIC 目前处于实验期,使用了正在标准化过程中的 IETF 实现,不能保证与最终版本的兼容性。 |
||||
|
||||
- 默认设定: |
||||
- 12 字节的 Connection ID |
||||
- 30 秒没有数据通过时自动断开连接 (可能会影响一些长连接的使用) |
||||
|
||||
## QuicObject |
||||
|
||||
`QuicObject` 对应传输配置的 `quicSettings` 项。 |
||||
|
||||
::: danger |
||||
对接的两端的配置必须完全一致,否则连接失败。 |
||||
QUIC 强制要求开启 TLS,在传输配置中没有开启 TLS 时,Xray 会自行签发一个证书进行 TLS 通讯。 |
||||
::: |
||||
|
||||
```json |
||||
{ |
||||
"security": "none", |
||||
"key": "", |
||||
"header": { |
||||
"type": "none" |
||||
} |
||||
} |
||||
``` |
||||
|
||||
> `security`: "none" | "aes-128-gcm" | "chacha20-poly1305" |
||||
|
||||
加密方式。 |
||||
|
||||
此加密是对 QUIC 数据包的加密,加密后数据包无法被探测。 |
||||
|
||||
默认值为不加密。 |
||||
|
||||
> `key`: string |
||||
|
||||
加密时所用的密钥。 |
||||
|
||||
可以是任意字符串。当 `security` 不为 `"none"` 时有效。 |
||||
|
||||
> `header`: [HeaderObject](#headerobject) |
||||
|
||||
数据包头部伪装设置 |
||||
|
||||
### HeaderObject |
||||
|
||||
```json |
||||
{ |
||||
"type": "none" |
||||
} |
||||
``` |
||||
|
||||
> `type`: string |
||||
|
||||
伪装类型,可选的值有: |
||||
|
||||
- `"none"`:默认值,不进行伪装,发送的数据是没有特征的数据包。 |
||||
- `"srtp"`:伪装成 SRTP 数据包,会被识别为视频通话数据(如 FaceTime)。 |
||||
- `"utp"`:伪装成 uTP 数据包,会被识别为 BT 下载数据。 |
||||
- `"wechat-video"`:伪装成微信视频通话的数据包。 |
||||
- `"dtls"`:伪装成 DTLS 1.2 数据包。 |
||||
- `"wireguard"`:伪装成 WireGuard 数据包。(并不是真正的 WireGuard 协议) |
||||
|
||||
::: tip |
||||
当加密和伪装都不启用时,数据包即为原始的 QUIC 数据包,可以与其它的 QUIC 工具对接。 |
||||
为了避免被探测,建议加密或伪装至少开启一项。 |
||||
::: |
Loading…
Reference in new issue