6
votes

Comment connecter deux clients derrière des pare-feu?

Lorsque vous utilisez une application de messagerie instantanée comme Live Messenger ou le client de bureau pour Google Talk, les ordinateurs peuvent transférer des fichiers entre les autres. Je ne peux pas dire avec certitude, mais je suis assez certain que les données transférées entre ordinateurs ne se déroulent pas via les serveurs IM de Microsoft ou de Google, mais les deux ordinateurs avec le logiciel de messagerie instantanée communiquent directement les uns avec les autres. Je me demande si ou comment cette connexion directe entre les clients est établie et comment je voudrais mettre en œuvre quelque chose de similaire moi-même.

J'ai une expérience de travail avec des réseaux personnels, mais je ne comprends qu'une relation client-serveur, où le serveur est toujours à l'écoute (et les ports ne sont pas bloqués par un pare-feu) et le client apporte une demande au serveur chaque fois que des données sont nécessaires. .


0 commentaires

5 Réponses :


0
votes

Si je mettais en œuvre cela, je regarderais quelques options.

  1. Demandez au pare-feu d'envoyer un port donné à un PC à l'intérieur du réseau. Cela vous permettra de vous connecter à un serveur du monde extérieur.

  2. avoir le (s) client (s) derrière le pare-feu se connecte à un serveur visible en dehors du pare-feu.

    En bref, au moins une partie de la conversation doit être visible (le serveur) à l'autre (s) afin de pouvoir se connecter. Indépendamment de la manière dont une fois qu'une connexion est faite, le client et le serveur seront capables de communiquer sans aucun problème.


0 commentaires

6
votes

Il existe une méthode utilisée par de nombreux clients appelés "Pin Holing":

J'envoie un paquet UDP à vous, ce qui pique un trou dans mon pare-feu (permettant aux paquets UDP, supposé être des réponses de mon pare-feu, à envoyer par vous et reçu par moi). Ce paquet est rejeté par votre pare-feu.

Vous envoyez un paquet UDP à moi, piquer un trou dans votre pare-feu. Ce paquet devrait me joindre, à quel point je peux envoyer un autre pour vous joindre à vous et nous pouvons communiquer, à travers nos pare-feu, sur UDP.


1 commentaires

N'est-ce pas une réponse valide à la question?



-2
votes

Faites ce que la plupart des chevaux de Troie font:

Connexion inversée

EDIT:

Avec deux machines derrière des pare-feu, vous auriez besoin d'une sorte de troisième "proxy"


1 commentaires

La connexion inversée ne fonctionnera pas dans la situation qu'il décrive.




0
votes

Si les deux clients sont derrière un pare-feu qui n'a pas été pendé et qu'aucun logiciel VPN n'est utilisé, ils communiquent via un serveur tiers. Période.


0 commentaires