Freedom outbound: Update noises

This commit is contained in:
风扇滑翔翼 2024-09-17 01:19:39 +08:00 committed by GitHub
parent 16c11841f2
commit 5a5502a5f0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -14,10 +14,13 @@ Freedom 是一个出站协议,可以用来向任意网络发送(正常的)
"length": "100-200",
"interval": "10-20" // 单位ms
},
"noise": {
"packet":"rand:100-200",
"delay": "10-20"
},
"noises":[
{
"type":"base64",
"packet":"7nQBAAABAAAAAAAABnQtcmluZwZtc2VkZ2UDbmV0AAABAAE=",
"delay":"10-16"
}
],
"proxyProtocol": 0
}
```
@ -68,25 +71,21 @@ userLevel 的值, 对应 [policy](../policy.md#policyobject) 中 `level` 的值
当其为 0 且设置 `"packets": "tlshello"` 时,被分片的 Client Hello 将会在一个TCP包中发送如果其原始大小未超过MSS或MTU导致被系统自动分片
> `noise`: map
> `noise`: array
UDP noise, 用于在发出UDP连接前发出一些随机数据作为“噪声”出现该结构体则视为启用可能可以欺骗嗅探器也可能破坏正常连接。Use at your own risk.
UDP noise, 用于在发出UDP连接前发出一些随机数据作为“噪声”出现该结构体则视为启用可能可以欺骗嗅探器也可能破坏正常连接。Use at your own risk. 出于这个原因它会绕过53端口因为这会破坏 DNS
`"packet"`str
为一个数组,可以定义多个要发出的噪声数据包,数组中单个元素定义如下
噪声模式,格式为 `"mode:value"`
`"type"`: 噪声数据包类型,目前支持`"rand"`(随机数据), `"str"`(用户自定义字符串), `"base64"`(base64编码过的自定义二进制数据)
现阶段支持两种模式 `rand``str`
`"packet"`: 基于前面的 `type` 要发送的数据包内容
`rand` 模式,发送随机字节,冒号后接为随机字节长度,可以是固定值也可以是用 `-` 分割的随机范围,如 `"rand:150"`, 和 `"rand:100-200"`
- 当 `type` 为 rand 时,这里指定随机数据的长度 可以是固定值 `"100"` 或者浮动值 `"50-150"
- 当 `type` 为 str 时,这里指定要发送的字符串
- 当 `type` 为 base64 时这里指定base64过的二进制数据
`str` 模式,发送固定的字符串,冒号后接为要发送的字符串,可以是任何字符串,不能包含冒号,如 `"str:To be, or not to be, that is the question"`
`"delay"`str
可选值 默认为0
发送噪声到发送真实数据的延迟,单位毫秒,可以是固定值也可以是用 `-` 分割的随机范围,如 `"150"``"100-200"`
`"delay"`: 延迟,单位毫秒。发送该噪声包后核心会等待该时间后再发送下一个噪声包或真实数据,默认不等待,可以设置为 int 如 `100` 或者设置为一个字符串类型填入浮动值如 `"50-150"`
> `proxyProtocol`: number