VNC an Port 80 (TeamViewer kann das)

14272
Zardoz

Wie kommt es, dass Programme wie TeamViewer problemlos über Port 80 kommunizieren können, aber mit VNC nicht? Gibt es freie und offene Alternativen zu VNC, die dies auch tun können?

2
Ich denke, dass Teamviewer den Port 80 an einen externen Server anfordert und das gesamte Gepäck im externen Server abwickelt (wie beide Enden mit dem externen Server verbunden sind und die Daten geschwenkt werden). RobotHumans vor 13 Jahren 2
@ aking1012 ist korrekt: [der verknüpfte Artikel] (http://support.teamviewer.com/index.php?_m=knowledgebase&_a=viewarticle&kbarticleid=10) behauptet, "TeamViewer verwendet standardmäßig nur den ausgehenden Port 80 (HTTP)". * Ausgehend *, wie in: Sowohl Ihr lokaler als auch der Remote-Computer stellen eine Verbindung zu einem Server an Port 80 her. Ich kann mir vorstellen, dass TeamViewer auch [UPnP] (http://en.wikipedia.org/wiki/Universal_Plug_and_Play#NAT_traversal) verwendet Öffnen Sie Ports, wenn dies möglich ist. Wenn dies jedoch fehlschlägt, wird wahrscheinlich alles über einen Fremdanbieter-Server erledigt. Arjan vor 13 Jahren 0

4 Antworten auf die Frage

3
Lekensteyn

Port 80 ist ein privilegierter Port. Sie benötigen Administratorberechtigungen, um Programme auf Port 80 auszuführen.

Jeder Port kann nur von einer Anwendung verwendet werden. Stellen Sie also sicher, dass der Port nicht von einer anderen Anwendung (wie Teamviewer oder einem HTTP-Server) verwendet wird.

Welche VNC-Anwendung verwenden Sie?

Gilt die privilegierte Port-Sache heutzutage auch für Windows? Arjan vor 13 Jahren 0
Hmm, anscheinend nicht. Ich habe es gerade getestet, indem ich `nc.exe -l 127.0.0.1 -p 80` ausgeführt habe, und es kann immer noch Port 80 abgerufen werden. Lekensteyn vor 13 Jahren 0
Dies kann immer noch zutreffen, da die Frage nicht mit Windows markiert ist. (Aber dann: das ist wahrscheinlich der Tag, der am häufigsten weggelassen wird ...) Arjan vor 13 Jahren 0
teamviewer läuft als "root" unter Linux (mit Wine). * Husten * Designfehler. Oh, diese Frage bezog sich auf VNC, nicht auf Teamviewer. Lekensteyn vor 13 Jahren 0
Bisher habe ich tightvnc unter Linux und UltraVNC unter Windows verwendet. Aber ich denke darüber nach, zu TeamViewer zu wechseln. Ich weiß, es ist nicht Open Source, aber es ist kostenlos. Sie sagen, dass nur eine App auf einem Port ausgeführt werden kann. Warum kann ich TeamViewer (an Port 80) verwenden und gleichzeitig im Internet surfen? Zardoz vor 13 Jahren 0
Wenn Sie im Internet surfen, * stellen Sie * eine Verbindung zu Port 80 * auf der Serverseite * von einem zufälligen, nicht privilegierten Port an Ihrem PC her. Es sieht also so aus: yourpc: 51841 -> Server: 80. VNC ist für mich sehr langsam, ich verwende [X2go] (http://www.x2go.org/), was viel schneller ist. Lekensteyn vor 13 Jahren 1
Das ist seltsam. Warum sollte TeamViewer als root ausgeführt werden? Nicht für die * ausgehende * Verbindung zu Port 80 ... Natürlich will es sich auch in den Grafiktreiber oder ähnliches einhängen, aber dann: VNC auch. Hmmm. Arjan vor 13 Jahren 0
@Zardoc: Jeder * eingehende * Port (zu dem einige "Server" -Anwendungen Verbindungen abhören) kann nur von einem Programm verwendet werden. Mehrere "Client" -Programme können sich mit demselben Port auf einem Server verbinden. Arjan vor 13 Jahren 0
3
William Hilsum

Einfach, VNC ist (oder war) vor Jahren für (technische) Administratoren konzipiert worden, die auf ihre eigenen Rechner zugreifen können, die Art von Leuten, die keine Probleme beim Einrichten von Ports haben.

Team Vviewer kann dagegen mehr tun, ist jedoch für jeden, der nicht technisch ist, für den Anschluss an jeden, der nicht technisch ist, konzipiert.

Es gibt nichts, was Sie daran hindert, VNC auf Port 80 auf Ihrem Computer zu hosten (sofern keine Webserver oder andere Server, die diesen Server verwenden, daran angeschlossen sind).

Denken Sie jedoch auch daran, dass Team Viewer nicht tatsächlich an Port 80 angeschlossen wird.

Sie können nur ein Programm an einen eingehenden Port Ihres Computers anschließen. Ihr Computer kann jedoch so viele ausgehende Verbindungen zu identischen Ports haben, wie er benötigt.

Port 80 wird normalerweise an den meisten Orten mit Internetzugang freigegeben. Ausgehende Verbindungen sind daher kein Problem, auch wenn dies ein Ort ist, an dem normalerweise kein Dienst gehostet werden kann.

Team Viewer arbeitet OUTGOINGan beiden Seiten mit Anfragen, die eingehende Server einrichten.

Sie können dies durch einige VNC-Distributionen testen. Eine Standard-VNC-Distribution ermöglicht beispielsweise die Einrichtung eines Servers (mit einem eingehenden Port). Wenn dann eine Verbindung hergestellt werden soll, wird einfach eine ausgehende Verbindung hergestellt (keine Einrichtung erforderlich). an den Server.

Andererseits können Sie den VNC-Server wie gewohnt ohne eingerichtete Ports starten, den VNC- Überwachungsclient starten (und einen eingehenden Port einrichten), dann das Serversymbol anklicken, mit der rechten Maustaste klicken und ( Establish a reverse connectionoder Connect to a clientich habe vergessen) vor einigen Jahren, seit ich das letzte Mal getan habe), und Sie sollten in der Lage sein, eine umgekehrte Verbindung herzustellen.

Teamviewer verwendet nun grundsätzlich beide Seiten eine ausgehende Verbindung zu einem Drittanbieter - daher ist keine Einrichtung erforderlich.

Ich hoffe, ich habe einige Ihrer Fragen beantwortet. Falls ich noch nichts zu irgendetwas wissen möchte, lassen Sie es mich wissen.

Ich habe früher Ultravnc benutzt

Nette Erklärung @Wil ... Ich war mir ziemlich sicher, wollte aber nicht posten, ohne absolut +1 zu wissen RobotHumans vor 13 Jahren 0
@William Wenn ein Client einen Server verwendet, um eine Verbindung zu einem anderen Client herzustellen, führt dieser Server dann eine bestimmte Software aus, um Clients weiterzuleiten, oder handelt es sich nur um einen Webserver (mit PHP und MySQL), der die IPs und verfügbaren Ports an beide Clients weitergibt? FlashDark vor 11 Jahren 0
1
RobotHumans

Wenn Sie vnc über Port 80 verwenden müssen, können Sie ein Java-Applet verwenden: http://ubuntuforums.org/showthread.php?t=107503 . Dies ist für die Linux-Seite der Dinge. Dieser Beitrag berichtet, dass realvnc über Port 80 laufen kann: http://forums.whirlpool.net.au/archive/513251 . Vorherige Aussagen zu ausgehenden Verbindungen für teamviewer sind korrekt, aber wenn Sie versuchen, an einer Firewall ohne Paketprüfung vorbeizukommen, könnte eine davon für Sie funktionieren.

Dadurch werden eingehende Verbindungen nicht behoben, sondern nur Probleme mit der Portnummer.

Okay, ich werde versuchen und so viel sinnvolle Dinge wie möglich zu posten. Mein Problem ist manchmal, dass es sich anfühlt, als ob ein 4-seitiges How-To von jemandem neu zu erwecken wäre nicht so bedeutsam wie das direkte Linken zu einer bereits geschilderten Diskussion zu einer Diskussion. RobotHumans vor 13 Jahren 0
(Richtig, ich wollte nur, dass du es weißt! Das macht Upvoting auch ein bisschen schwierig: Ich folge den Links selten, daher kann ich nicht leicht sagen, ob sich die Dinge richtig anfühlen!) Arjan vor 13 Jahren 0
0
ericzma

Ich verwende bei der Verwendung von VNC gerne die ssh-Portweiterleitung: http://fclose.com/b/638/ . VNC ist nicht sicher, wie wir alle wissen. Wenn nur Port 80 geöffnet ist (wenn 22 nicht geöffnet ist), kann sshd so konfiguriert werden, dass Port 80 überwacht wird. Nachdem ein Tunnel eingerichtet wurde, können viele Schritte unternommen werden.