Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

TCP PORT MAPPER


Information sur la source

Catégorie :Réseau & Internet Classé sous : tcp, port, proxy, internet, mapper Niveau : Expert Date de création : 13/12/2005 Vu / téléchargé: 10 154 / 1 481

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

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.
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de PoulpHunter le 18/05/2007 19:25:40

Sympa ce style de programmation :p

J'ai testé sur un serveur VNC, il me trouve une erreur de protocole ?
J'ai matté c'est le VSocket qui plante...

Est-ce à cause de Winsocks ? ou d'une partie de ton code ?

(avec Analogx PortMapper ma connect VNC tourne nickel)

signaler à un administrateur
Commentaire de PoulpHunter le 19/05/2007 19:05:35

Hum,
Alors après avoir bien regarder d'ou venais vraiment l'erreur,
cela viendrais de la fragmentation des packets TCP (reassembled PDU)
Lors de la transmission, ce soft comme un routeur transmet le packet + entête donc frangmentation. (cé pas optimisé tout sa hein :p )
Donc dans le cas de tunélisation comme VNC, sa plante, pour cela il faut adapter le MTU en conséquence.
Dans le cas ou le DF flag est à 1 il faut ICMP sinon fragmentation.
bon je continue de chercher...

signaler à un administrateur
Commentaire de terafun le 27/06/2007 03:25:48

C'est interessant comme code!
et comme vous êtes les seul sur ce site interessé par la programmation réseau, à ce que je vois, j'ai une question à vous poser:
Je travaille sur un serveur de communication GPS, GPRS
et puisque ce serveur peut etre installé n'importe où dans le réseau local, et qu'il doit écouter toutes les communications entrantes à l'adresse IP globale du réseau (sur un proxy ou un routeur), la solution classique est de rediriger (redirection - port forwarding) les paquets vers l'adresse IP du serveur (locale)
y a t il des composants implémentant des technologies qui me permettront d'accéder au paquets entrants sur l'adresse IP globale? ou pourrai je exploiter le port mapper pour réaliser un tel truc??

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Pb : Le composant internet de delphi [ par infohelp ] Bonjour je cherche le composant similaire d'acces a internet de visual basic (winsock) mais le meme avec les meme fonctions et qui prenent les proxy c Savoir si un port tcp et udp estouvert [ par keypad ] Bonjour, J'écris une application pour les freenautes. Voila plusieurs jours que je cherche une solution à un souci : Le pc est reli&# connection par socket via un proxy [ par mr_ze ] Bonjour, Voici mon problème. J'ai 2 PC, d'un coté l'un contient un serveur ecoutant le port 80 via ServerSocket. De l'autre un pc qui essaie Création d'un port imprimante Standard TCP/IP [ par jerosau ] Bonjour, J'aimerais réaliser un programme permettant de créer un port d'imprimante TCP/IP sans faire appel à une boite de dialogue. Je pense que c'est Fermer une connection internet [ par K0rr1gan ] Salut,je cherche à fermer une connection internet existante (c'est à dire sans passer par InternetConnect) à l'aide de InternetCloseHandle.J'aimerais Déconnexion Internet [ par K0rr1gan ] Salut,je cherche à fermer une connection internet existante (c'est à dire sans passer par InternetConnect) à l'aide de InternetCloseHandle.J'aimerais detecter la vitesse de connexion Internet [ par koaiz ] J'ai un composant qui detecte la vitesse de la connexion internet mais ne marche pas sous Nt , XP il ne fonctionne que sous 9x y a t-il un moyen de co comment connaitre le debit d'une connexion internet? [ par kastel ] boujour,je suis assez debutant en delphi et j'essai en ce moment de devellopper un petit soft. mon but est de faire un programme permettant de connait client et port [ par MoveX ] lorsque je dis a un composant client de se connecter sur le port 10 du serveur, avec quel port mon client se connecte t il de l autre cote? dans le ca Port Lpt sous delphi et winnt ?? [ par fredy24 ] Bonjours, je voudrais controler l'état d'une imprimante sous une application delphi avec winnt. j'ai installé la dll inpout32 avec son application, ok


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,468 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.