Tcp port mapper

Description

C'est un code non-vcl qui implémente un TCP PORT MAPPER, un genre de proxy qui mappe un port local vers un autr remotehost:remoteport en mode TCP.
L'utilisation la plus commune serait un proxy IRC lorsque votre administrateur reseaux "coupe le jus" aux ports 6660-6669/7000 et interdit l'accès aux proxys standards.
Le fichier start.bat permet d'initialiser l'application avec les bons parametres de ports et d'adresse. Par exemple, lorsque l'application est démarrée dans une machine (A) avec les parametres "80 eu.undernet.org 6667", on peut de n'importe quelle machine (B) nous connecter à undernet en utilisant le port 80 (la commande /server Adresse_IP_de_la_machine_A 80). Ceci est valable pour tous les services utilisant TCP comme mode de transport.
Coté implémentation il s'agit d'un serveur TCP tout ce qu'il y a de plus normal qui crée des clients vers remotehost:remoteport et les mappe avec sa connection client. Le tout est multi-threadé à fond et asynchrone, ce qui va assurer une vitesse de mapping très interessante. Chaque flux est geré par un thread. Donc au depart, on a un seul thread (celui du processus principal) et pour chaque client, 2 threads, l'un pour la lecture, l'autre pour l'ecriture. Le source n'est pas commenté mais assez explicite et ça peut facilement être détourné pour implémenter un serveur socks.
J'éspere que ce tit bout de code puisse expliquer un peu de techniques en programmation reseau/threading et qu'il vous sera util.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.