severin hat geschrieben:Ich dachte immer, in dieser Notation ist das vor dem Doppelpunkt der Port des clients
Ja, das ist der Port des Clienten, welcher weitergeleitet wird.
severin hat geschrieben:das zwischen den Doppelpunkten der server, an den ich tunnele,
Ja, das ist der Server, zu welchem der Port weitergeleitet wird, allerdings aus der Sicht des Servers, mit dem du die SSH-Verbindung aufgebaut hast!
Da der Server auf den du dich per SSH verbunden hast und der Server zu dem du weiterleiten möchtest bei dir derselbe ist, muss der Server von sich aus gesehen also die Verbindung an sich selbst weiter leiten.
Und der Server ist für sich selbst eben localhost.
Theoretisch könntest du auch anstatt localhost die öffentliche IP des Servers angeben, das setzt aber voraus, dass der Server weiß, welche öffentliche IP er selbst hat um zu erkennen dass die Weiterleitung für ihn selbst bestimmt ist.
Da du aber wahrscheinlich den Server nicht direkt am Internet hängen hast, sondern mit einem Router davor, kennt der Server seine eigene öffentliche IP nicht und denkt deshalb bei der öffentlichen IP, welche du angegeben hast, würde es sich um einen anderen Server im Internet handeln und versucht deshalb die Pakete an die "öffentliche IP" Port 5900 über den Router in das Internet an den scheinbar "fremden" Server weiterzugeben.
Der Router merkt jetzt aber, dass die öffentliche IP seine eigene öffentliche IP ist und leitet die Pakete auf sich selbst zum Port 5900, dort lauscht aber kein Dienst und somit nimmt niemand die Pakete an und der Tunnel kann nicht aufgebaut werden.
Verstanden?
severin hat geschrieben:und das nach dem Doppelpunkt der Port, auf dem die Daten des client-Ports am server ankommen.
Ja, das ist der Port auf dem Server (der zwischen dem Doppelpunkt steht) an den weitergeleitet wird.
Gruß,
Daniel