# Поддержка PROXY Protocol в TCP туннелях

28 января 2026 г. ·

<!-- -->

2 мин. чтения

В [консольном клиенте](https://tuna.am/docs/guides/install/install-cli.md) **tuna** добавлена поддержка [PROXY Protocol](https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt) для TCP туннелей. Теперь вы можете передавать оригинальный IP-адрес и порт клиента напрямую вашему приложению.

```shell
$ tuna tcp 54321 --proxy-protocol=2
INFO[22:08:58] Welcome to Tuna
INFO[22:09:00] Forwarding tcp://ru.tuna.am:22347 -> 127.0.0.1:54321

```

[Перейти к документации](https://tuna.am/docs/tunnels/tcp.md#proxy-protocol)

## Зачем нужен PROXY Protocol?

При использовании туннелей ваше приложение видит подключения от туннельного сервера, а не от реального клиента. PROXY Protocol решает эту проблему — он передаёт оригинальный IP и порт клиента в заголовке соединения, что позволяет:

* Вести корректные логи подключений с реальными IP-адресами
* Применять правила контроля доступа на уровне приложения
* Собирать точную аналитику по географии пользователей

## Новый флаг

В команде `tuna tcp` появился новый флаг `--proxy-protocol`, принимающий версию протокола:

| Значение | Формат    | Описание                                        |
| -------- | --------- | ----------------------------------------------- |
| `1`      | Текстовый | Человекочитаемый формат, легко отлаживать       |
| `2`      | Бинарный  | Более эффективный, рекомендуемый для продакшена |

## Примеры использования

### Базовый пример

```shell
tuna tcp 8443 --proxy-protocol=1
# или с переменной окружения
TUNA_PROXY_PROTOCOL=1 tuna tcp 8443

```

### Minecraft сервер

Некоторые сборки игровых серверов, например [Velocity](https://docs.papermc.io/velocity/configuration/#advanced-section), поддерживают PROXY Protocol. Включите его в конфиге игры и в клиенте tuna:

```shell
tuna tcp 45678 --proxy-protocol=2

```

## Совместимость

PROXY Protocol широко поддерживается популярным серверным ПО:

* **Haproxy** — поддерживает обе версии, определяет автоматически
* **Nginx** — поддерживает обе версии, определяет автоматически
* **Envoy** — поддерживает обе версии
* Многие базы данных и приложения через прокси-слой

подсказка

Если вы не уверены какую версию выбрать — используйте версию `2`. Бинарный формат эффективнее и является рекомендуемым в большинстве случаев.

## Обновление

Для обновления следуйте [инструкции](https://tuna.am/docs/guides/update.md).

## Оставьте отзыв

Если вам нравится пользоваться Tuna, или наоборот вы недовольны чем либо, то пожалуйста [оставьте отзыв](https://my.tuna.am/?show_feedback=1).

![](/blog/img/2024-08-22/feedback.gif)

## Помощь

Мы ценим наших пользователей и детально изучаем все обращения, если у вас возникли проблемы с tuna – обязательно свяжитесь с нами одним из способов:

* [Электронная почта](mailto:info@tuna.am)
* [Telegram сообщество](https://telegram.me/+Kgbtt0_gJwI5ZmEy)

**Теги:**

* [release](https://tuna.am/blog/tags/release)
* [tuna](https://tuna.am/blog/tags/tuna)
* [cli](https://tuna.am/blog/tags/cli)
