Asocjacje UDP SOCKS5 z pakietem socks dla Node
Użyj asocjacji SOCKS5 i ramkowania datagramów, gdy aplikacja Node potrzebuje UDP przez proxy.
Pakiet socks dla Node używa dla UDP instancji SocksClient z command: 'associate'. Jego wygodna fabryka SocksClient.createConnection() obsługuje natomiast TCP CONNECT.
Przykład asocjacji w projekcie łączy klienta SOCKS z osobnym lokalnym gniazdem UDP:
- Ustanów UDP ASSOCIATE i zachowaj jego połączenie sterujące TCP.
- Odczytaj host i port przekaźnika zwracane przez serwer.
- Użyj
createUDPFrame(), aby ramkować wychodzące ładunki z ich adresem docelowym. - Wyślij datagramy do przekaźnika, a następnie użyj
parseUDPFrame()na przychodzących ramkach przekaźnika przed dostarczeniem ładunków do aplikacji.
Gniazdo dgram Node zapewnia transport UDP; nie interpretuje adresu SOCKS. Asocjacja i ramkowanie zapewniają protokół proxy wokół tych datagramów.
Serwer musi obsługiwać UDP, a punkt końcowy przekaźnika musi być osiągalny. Udane połączenie TCP z początkowym portem proxy nie testuje tej ścieżki. Zamknij zasoby sterujące i UDP, gdy asocjacja nie jest już potrzebna.