Ja was denn nu?

Auf welchen Rechner willst du denn nun zugreifen?
Mit der Konstellation die du hier nun schilderst, kannst du nur auf deinen lokalen Rechner, also auf localhost zugreifen, wobei das AFAIK zumindest Grafikfehler erzeugt und öhm... im Grunde sinnlos ist. XD
Wenn du auf einen entfernten Rechner zugreifen willst, bringt es gar nichts Client und Server beide auf deinem lokalen Rechner laufen zu haben. XD
Du musst den Server auf dem entfernten Rechner installieren und/oder anwerfen und dann zu dem Server auf dem entfernten Rechner verbinden mit dem Client, den du lokal auf deinem Rechner hast.
Wenn der entfernte Rechner MIT dem laufenden VNC-Server auf ihm im lokalen Netzwerk, also hinter dem gemeinsamen Router ist, dann brauchst du keine NAT-Regeln im Router definieren. Dann musst du den Rechner im LAN nur über seine LAN-IP auf Port 5900 ansprechen.
Ist der entfernte Rechner MIT dem laufenden VNC-server auf ihm im WAN, also irgendwo im INet, dann musst du die NAT-Regel im Router des entfernten Netzwerks, mit dem Rechner mit dem auf ihm laufenden VNC-Server dahinter, definieren.
Wenn du keinen Zugriff auf die Settings des entfernten Router hast und auch den Besitzer des entfernten Router nicht dazu bringen kannst Port 5900 weiterzuleiten, dann solltest du dich dran gewöhnen, dass es zum "hacken" fremder Systeme weit mehr braucht als ein paar Tools, sondern Kenne und Hirn.
Und natürlich musst du nach wie vor auf beiden Seiten entspr. positive Desktopfirewallregeln definieren. O_o