Поддержка PROXY Protocol в TCP туннелях
· 2 мин. чтения
В консольном клиенте tuna добавлена поддержка PROXY Protocol для TCP туннелей. Теперь вы можете передавать оригинальный IP-адрес и порт клиента напрямую вашему приложению.
$ 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
Зачем нужен PROXY Protocol?
При использовании туннелей ваше приложение видит подключения от туннельного сервера, а не от реального клиента. PROXY Protocol решает эту проблему — он передаёт оригинальный IP и порт клиента в заголовке соединения, что позволяет:
- Вести корректные логи подключений с реальными IP-адресами
- Применять правила контроля доступа на уровне приложения
- Собирать точную аналитику по географии пользователей
Новый флаг
В команде tuna tcp появился новый флаг --proxy-protocol, принимающий версию протокола:
| Значение | Формат | Описание |
|---|---|---|
1 | Текстовый | Человекочитаемый формат, легко отлаживать |
2 | Бинарный | Более эффективный, рекомендуемый для продакшена |