Warum brauchen p2p-Verbindungen keine offenen Ports?

5673
Zequez

Ich meine, wenn jemand eine Datei von mir herunterlädt, bedeutet das nicht, dass ich der Host bin und er sich mit mir verbindet?

Oder verbinde ich mich mit ihm?

So oder so braucht einer von uns einen offenen Hafen, oder?

Ich habe kein offenes Port-Routing zu meinem Computer in meinem Router. Wie kann ich also Verbindungen annehmen?

7
Warum laden Sie nicht einen Netzwerkanalysator wie [wireshark] (http://www.wireshark.org/download.html) herunter und finden Sie es heraus Conrad Frix vor 12 Jahren 0

3 Antworten auf die Frage

10
Dustin G.

Wenn Ihr Router UPnP unterstützt, kann es sein, dass die von Ihnen verwendete p2p-Anwendung Ports auf dem Router öffnet, ohne dass Sie offene Ports manuell konfigurieren müssen.

Wikipedia UPnP

Andernfalls ist es möglich, dass Ihre Anwendung einen Prozess namens NAT-Traversal verwendet, der in P2P-Anwendungen und Remote-Desktop-Anwendungen wie GoToMyPC oder Hamachi üblich ist. Diese Technologie ist für die Verwendung von Network Address Translation (Netzwerkadressenübersetzung) konzipiert, die als Firewall angesehen wird. Sie ist jedoch auch ein Mittel, um ein privates Netzwerk dazu zu bringen, eine einzige IP-Adresse im Internet gemeinsam zu nutzen (was Ihr Router verwendet).

Wikipedia NAT Traversal

Ich glaube, er spricht wahrscheinlich über NAT Traversal. Kurzversion ist, dass es einen Drittanbieter-Server gibt (der über offene Ports verfügt), der die Verbindung zwischen den beiden P2P-Clients aushandelt. NReilingh vor 12 Jahren 1
Welcher von ihnen ist besser? Ist UPnP nicht ein Sicherheitsrisiko? EDIT: Egal, ich habe gerade folgendes gefunden: http://networking.nitecruzr.net/2006/01/nat-routers-with-upnp-security-risk-or.html Zequez vor 12 Jahren 0
7
Scott Chamberlain

In Protokollen wie BitTorrent, solange eine der beiden Seiten der Verbindung Portweiterleitung aktiviert hat, fungiert die offene Seite immer als Host. Wenn beide Seiten offen sind, könnte jedes Ende der "Host" sein. Wenn beide Seiten geschlossen sind, benötigen Sie eine dritte Partei, die über eine offene Verbindung verfügt, um die Verbindung auszuhandeln. So wird es beispielsweise bei Skype gemacht (die dritte Partei wird Supernode genannt).

Hier ist ein guter Blogbeitrag, der erläutert, wie Skype Supernodes verwendet und wie Firewalls damit umgehen.

Sehr interessanter Artikel danke ^^ Zequez vor 12 Jahren 0
4
Sitoplex

Ich würde den offenen Port mit einer Telefonnummer vergleichen.

Stellen Sie sich vor, Sie können ein Telefon zum Wählen haben, aber keine Telefonnummer, um Anrufe entgegenzunehmen.

Bei zwei Teilnehmern, die miteinander sprechen (oder einer, der ständig spricht), ist es egal, wer tatsächlich wählt. Wichtig ist, dass mindestens eine von ihnen eine Telefonnummer hat, dann ruft der andere Partner ihn einfach an.

Wenn keiner von ihnen eine Telefonnummer hat, wird in einigen Systemen ein Superknoten verwendet, bei dem es sich um einen Freund handelt, der zwei Anrufe entgegennimmt, einen von jedem von ihnen, und fügt sie zusammen. Dies ist die einzige Möglichkeit zu sprechen, wenn keine der beiden Parteien eine Telefonnummer hat. Das Problem ist, dass die Konversation dann auf die Qualität der Telefonleitung dieses Superknotenfreundes beschränkt ist.

Ich hoffe, diese Analogie macht es leichter, die drei möglichen Szenarien zu verstehen.