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