UDP-асоціації SOCKS5 з пакетом socks для Node
Використовуйте асоціацію SOCKS5 та обрамлення датаграм, коли застосунку Node потрібен UDP через проксі.
Пакет socks для Node використовує для UDP екземпляр SocksClient з command: 'associate'. Його зручна фабрика SocksClient.createConnection() натомість обробляє TCP CONNECT.
Приклад асоціації в проєкті поєднує клієнт SOCKS з окремим локальним UDP-сокетом:
- Встановіть UDP ASSOCIATE і збережіть його керівне TCP-з'єднання.
- Прочитайте хост і порт ретранслятора, які повертає сервер.
- Використовуйте
createUDPFrame(), щоб обрамляти вихідні дані адресою призначення. - Надішліть датаграми ретранслятору, потім застосовуйте
parseUDPFrame()до вхідних кадрів ретранслятора, перш ніж передавати дані застосунку.
Сокет dgram у Node забезпечує транспорт UDP; він не інтерпретує адресу SOCKS. Асоціація та обрамлення забезпечують протокол проксі навколо цих датаграм.
Сервер має підтримувати UDP, а кінцева точка ретранслятора має бути доступною. Успішне TCP-з'єднання з початковим портом проксі не перевіряє цей шлях. Закривайте керівні ресурси та ресурси UDP, коли асоціація більше не потрібна.