|
|
|
|
# Режимы работы Xray
|
|
|
|
|
|
|
|
|
|
## Режим одного сервера
|
|
|
|
|
|
|
|
|
|
Как и в случае с другими прокси-инструментами, вам понадобится сервер с настроенным Xray, а затем установить и настроить клиент Xray на вашем устройстве, после чего вы сможете свободно пользоваться Интернетом.
|
|
|
|
|
|
|
|
|
|
```mermaid
|
|
|
|
|
graph LR;
|
|
|
|
|
A(ПК) -.- B(Брандмауэр);
|
|
|
|
|
B -.-> C(Внешний сайт);
|
|
|
|
|
A --> D(Xray/VPS);
|
|
|
|
|
D --> C;
|
|
|
|
|
A --> E(Внутренний сайт);
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Один сервер Xray может одновременно обслуживать несколько устройств, использующих разные протоколы проксирования. При правильной настройке Xray может распознавать и различать трафик, который нужно проксировать, и трафик, который можно отправлять напрямую, без проксирования.
|
|
|
|
|
|
|
|
|
|
## Режим моста
|
|
|
|
|
|
|
|
|
|
Если вы не хотите настраивать маршрутизацию на каждом устройстве, вы можете настроить промежуточный сервер, который будет принимать весь трафик от клиентов и перенаправлять его в зависимости от настроек.
|
|
|
|
|
|
|
|
|
|
```mermaid
|
|
|
|
|
graph LR;
|
|
|
|
|
A(ПК) -.-> B(Брандмауэр);
|
|
|
|
|
B -.-> C(Внешний сайт);
|
|
|
|
|
A --> D(Внутренний VPS);
|
|
|
|
|
D --> E(Внешний VPS);
|
|
|
|
|
E --> C;
|
|
|
|
|
D --> F(Внутренний сайт);
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## Принцип работы
|
|
|
|
|
|
|
|
|
|
Перед настройкой Xray давайте рассмотрим, как он работает. Ниже представлена схема внутреннего устройства одного процесса Xray. Несколько процессов Xray работают независимо друг от друга.
|
|
|
|
|
|
|
|
|
|
```mermaid
|
|
|
|
|
graph LR;
|
|
|
|
|
A1(inbound) --> D(Dispatcher / Router / DNS);
|
|
|
|
|
A2(inbound) --> D;
|
|
|
|
|
A3(inbound) --> D;
|
|
|
|
|
A4(inbound) --> D;
|
|
|
|
|
D --> B1(outbound);
|
|
|
|
|
D --> B2(outbound);
|
|
|
|
|
D --> B3(outbound);
|
|
|
|
|
D --> B4(outbound);
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
- Для нормальной работы необходимо настроить как минимум одно входящее соединение (Inbound) и одно исходящее соединение (Outbound).
|
|
|
|
|
- Входящее соединение отвечает за связь с клиентом (например, браузером):
|
|
|
|
|
- Входящее соединение обычно можно настроить с аутентификацией пользователя, например, с использованием ID и пароля;
|
|
|
|
|
- После получения данных входящее соединение передает их диспетчеру (Dispatcher) для распределения.
|
|
|
|
|
- Исходящее соединение отвечает за отправку данных на сервер, например, на другой Xray, работающий на другом хосте.
|
|
|
|
|
- При наличии нескольких исходящих соединений можно настроить маршрутизацию (Routing) для указания, какое исходящее соединение должно использоваться для определенного типа трафика.
|
|
|
|
|
- При необходимости маршрутизатор обращается к DNS для получения дополнительной информации для принятия решения.
|
|
|
|
|
|
|
|
|
|
|