Nikita Korotaev 3b23ce3ea2
add Russian lang (#529)
* add Russian lang support
---------

Co-authored-by: 风扇滑翔翼 <Fangliding.fshxy@outlook.com>
2024-07-16 22:42:05 +08:00

74 lines
6.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Freedom
Freedom - это исходящий протокол, который можно использовать для отправки (обычных) данных TCP или UDP в любую сеть.
## OutboundConfigurationObject
```json
{
"domainStrategy": "AsIs",
"redirect": "127.0.0.1:3366",
"userLevel": 0,
"fragment": {
"packets": "tlshello",
"length": "100-200",
"interval": "10-20" // в миллисекундах
},
"proxyProtocol": 0
}
```
> `domainStrategy`: "AsIs"<br>
> "UseIP" | "UseIPv6v4" | "UseIPv6" | "UseIPv4v6" | "UseIPv4"<br>
> "ForceIP" | "ForceIPv6v4" | "ForceIPv6" | "ForceIPv4v6" | "ForceIPv4"
Значение по умолчанию: `"AsIs"`.
Если целевой адрес является доменным именем, настройте соответствующее значение для режима работы Freedom:
- При использовании `"AsIs"` Xray будет напрямую использовать системный стек для установления соединения, приоритет и выбор IP будут зависеть от системных настроек. По некоторым причинам UDP-соединения, использующие доменные имена, будут игнорировать системные настройки и отдавать приоритет IPv4.
- При указании других значений для разрешения будет использоваться [встроенный DNS-сервер](../dns.md) Xray-core. Если DNSObject отсутствует, будет использоваться системный DNS. Если существует несколько подходящих IP-адресов, ядро случайным образом выберет один IP-адрес в качестве целевого.
- `"IPv4"` означает попытку подключения только с использованием IPv4, `"IPv4v6"` - попытку подключения с использованием IPv4 или IPv6, но с предпочтением IPv4 для доменных имен с поддержкой обоих протоколов. (То же самое относится и к v4v6, но в обратном порядке, поэтому здесь не приводится).
- Если в настройках встроенного DNS указан параметр `"queryStrategy"`, фактическое поведение будет объединено с этой опцией, и будут разрешаться только те типы IP, которые включены в обе опции. Например, `"queryStrategy": "UseIPv4"` и `"domainStrategy": "UseIP"` фактически эквивалентны `"domainStrategy": "UseIPv4"`.
- При использовании опций, начинающихся с `"Use"`, если результаты разрешения не соответствуют требованиям (например, доменное имя имеет только результат разрешения IPv4, но используется UseIPv6), будет выполнен откат к AsIs.
- При использовании опций, начинающихся с `"Force"`, если результаты разрешения не соответствуют требованиям, соединение не будет установлено.
::: tip СОВЕТ 1
При использовании режимов `"UseIP"` или `"ForceIP"` и указании `sendThrough` в [конфигурации исходящего соединения](../outbound.md#outboundobject) Freedom будет автоматически определять необходимый тип IP (IPv4 или IPv6) на основе значения `sendThrough`. Если вручную указать один тип IP (например, UseIPv4), но он не совпадает с локальным адресом, указанным в `sendThrough`, соединение не будет установлено.
:::
> `redirect`: адрес_порт
Freedom будет принудительно отправлять все данные на указанный адрес (а не на адрес, указанный во входящем соединении).
Его значение представляет собой строку, например: `"127.0.0.1:80"`, `":1234"`.
Если адрес не указан, например, `":443"`, Freedom не будет изменять исходный целевой адрес.
Если порт равен `0`, например, `"xray.com: 0"`, Freedom не будет изменять исходный порт.
> `userLevel`: number
Уровень пользователя, для соединения будет использоваться [локальная политика](../policy.md#levelpolicyobject), соответствующая этому уровню пользователя.
Значение userLevel соответствует значению `level` в разделе [policy](../policy.md#policyobject). Если не указано, используется значение по умолчанию - 0.
> `fragment`: map
Некоторые пары "ключ-значение" для управления исходящей TCP-фрагментацией, которые в некоторых случаях могут обмануть систему цензуры, например, обойти черный список SNI.
`"packets"`: поддерживаются два режима фрагментации: "1-3" - это фрагментация потока TCP, применяемая к первым трем операциям записи данных на стороне клиента. "tlshello" - это фрагментация пакета TLS-рукопожатия.
`"length"`: длина фрагмента пакета (в байтах).
`"interval"`: интервал фрагментации (в миллисекундах).
> `proxyProtocol`: number
Протокол PROXY обычно используется в сочетании с `redirect` для перенаправления на Nginx или другой сервер, на котором включен протокол PROXY. Если сервер не поддерживает протокол PROXY, соединение будет разорвано.
Значение proxyProtocol - это номер версии протокола PROXY, возможные значения: `1` или `2`. Если не указано, используется значение по умолчанию - `0` (протокол не используется).