Документация
Прозрачный прокси TCMinerProxy
Как работает прозрачный прокси TCMinerProxy, чем он отличается от обычной пересылки и как построить цепочку TMS -> jump TCMinerProxy -> нижний TCMinerProxy.
Прозрачный прокси
Прозрачный прокси передает входящие данные на настроенный целевой адрес без разбора содержимого. Он не определяет протокол майнера, wallet или worker name, а текущий узел TCMinerProxy не применяет fee-логику, replacement-правила и полную статистику, которым нужен разбор протокола.
Иными словами, это прозрачный jump-путь: какие данные пришли, такие данные отправляются дальше.
Отличие От Обычной Пересылки
Обычная пересылка чаще всего использует адрес пула как целевой адрес. Майнеры подключаются к forwarding-порту TCMinerProxy, а трафик уходит в upstream-пул. Это подходит, когда нужно просто собрать вход майнеров на одном порту.
Прозрачный прокси чаще нужен между узлами TCMinerProxy. Его целевым адресом может быть не пул, а TMS-порт нижнего TCMinerProxy. Первый сервер TCMinerProxy не расшифровывает, не распаковывает и не преобразует TMS-поток; он только передает локальный зашифрованный или сжатый поток на следующий сервер.
Когда Использовать
Используйте прозрачный прокси, если на локальной площадке уже применяется TMS, HAProxy или другой инструмент шифрования, сжатия или пересылки, а трафик должен пройти через один TCMinerProxy jump-сервер к другому TCMinerProxy, который уже подключается к пулу.
Типовая цепочка:
Локальный TMS -> TCMinerProxy transparent proxy jump server -> TMS-порт нижнего TCMinerProxy -> Пул
Без прозрачного прокси первому TCMinerProxy обычно пришлось бы разобрать или расшифровать локальный TMS-трафик, а затем снова упаковать его в протокол, который ожидает нижний TCMinerProxy. Это сложнее в настройке и добавляет еще один этап шифрования/расшифровки или сжатия, что увеличивает нагрузку CPU и риск задержек.
Схема Настройки
Главная идея: jump-сервер только прозрачно передает байты, а TMS-протокол обрабатывает нижний TCMinerProxy.
| Место | Что настроить |
|---|---|
| Локальный TMS | Remote address указывает на адрес и порт прозрачного прокси на jump-сервере TCMinerProxy. |
| Jump TCMinerProxy | Создать transparent proxy порт, целевой адрес которого равен TMS-порту нижнего TCMinerProxy. |
| Нижний TCMinerProxy | Создать порт TMS2, TMS3 или TMS3(Zstd) и подключить его к конечному пулу. |
Настройки Порта Jump-Сервера
При создании proxy-порта на jump TCMinerProxy:
- В качестве listening protocol выберите
TPили transparent proxy. - Укажите listening port, к которому будет подключаться локальный TMS.
- В primary pool address укажите TMS-порт нижнего TCMinerProxy, например
next-tcminerproxy.example.com:9000. - В качестве target pool protocol выберите
TLS/SSL. - Fee wallets, wallet replacement, worker replacement и другие функции, основанные на разборе протокола, оставьте отключенными или не учитывайте.
Важно: target protocol на jump-сервере должен быть TLS/SSL. TMS-порт нижнего TCMinerProxy использует зашифрованный канал, поэтому jump-сервер должен передавать локальный TMS-поток без изменений к этой TLS/SSL-цели.
Совпадение TMS-Протоколов
Протокол локального TMS должен совпадать с протоколом TMS-порта на нижнем TCMinerProxy.
| Локальный TMS использует | Порт нижнего TCMinerProxy должен использовать |
|---|---|
| TMS2 | TMS2 |
| TMS3 | TMS3 |
| TMS3(Zstd) | TMS3(Zstd) |
Jump-порт работает только как прозрачный прокси. Он не преобразует TMS2 в TMS3 и не преобразует TMS3(Zstd) в другой протокол. Версия протокола, compression level, super compression и связанные параметры все равно должны совпадать между локальным TMS и нижним TCMinerProxy.
Проверка
- Убедитесь, что TMS-порт нижнего TCMinerProxy запущен и нормально подключается к пулу.
- Запустите transparent proxy порт на jump TCMinerProxy.
- В локальном TMS замените remote address на адрес jump-сервера и порт transparent proxy.
- Проверьте, что локальный TMS подключился, а счетчик соединений на jump-сервере вырос.
- Проверьте miners, hashrate и connection logs на нижнем TCMinerProxy.
- Убедитесь, что worker появился в конечном пуле.
Transparent proxy порт не показывает полную статистику wallet, worker, hashrate и fee. Для бизнес-данных ориентируйтесь на нижний TCMinerProxy и конечный пул.
Частые Ошибки
| Проблема | Что проверить |
|---|---|
| Локальный TMS не подключается к jump-серверу | Проверьте, что transparent proxy порт запущен, firewall пропускает порт, а remote address в TMS указан правильно. |
| На jump-сервере есть соединения, но на нижнем сервере нет данных | Проверьте, что target address указывает на TMS-порт нижнего TCMinerProxy, а target protocol выбран как TLS/SSL. |
| Нижний TCMinerProxy отклоняет соединение | Проверьте, что протокол локального TMS совпадает с нижним портом, включая TMS3 password, super compression и compression level. |
| На dashboard jump-сервера нет hashrate | Это нормально: transparent proxy не разбирает данные. Проверяйте нижний TCMinerProxy или пул. |
