Hi,
also ganz grob: Du brauchst auf beiden Seiten nur die externe (also die 'globale')
IP, den Rest übernimmt der Router.
Wichtig ist nur, dass Du den Empfangsport auf dem Dein Chat läuft / lauscht von dem Router auf den PC dahinter weiterleitest (ganz normales Portforwarding).
Eine andere Lösung gibt es nicht, wenn Du nicht einen Chat-'server' irgendwo im Internet dazwischen anbieten willst.
Also nochmal grob:
PC 1 schickt Nachricht an globale
IP von PC2:
PC 1 bemerkt, dass die
IP nicht im lokalen Netz ist und schickt das Paket automatisch(!) an sein Default-Gateway (das ist der Router vor PC 1). Der schickt das Paket an die angegebene
IP weiter (Router vor PC 2). Jetzt kommt der Knackpunkt: Router 2 kann mit dem Paket nix anfangen, und da Du bei
TCP/
IP ja auch nur eine
IP als Ziel angeben kannst (und das muss ja die Globale sein, die lokale von PC 2 kann ja nicht übers Internet erreicht werden) muss der Router also irgendwie vorher gesagt bekommen, wo diese Pakete hin müssen. Und das geht eben per Portforwarding: Der Port XYZ den Dein Chatprogramm benutzt wird auf PC 2 weitergeleitet - und schon ist die Nachricht da. Das gleiche gilt dann freilich auch für den Rückweg.