Martin L.: Chat in Java

Moin Moin

ich habe ein Tutorial durchgearbeitet http://www.cise.ufl.edu/~amyles/tcpchat/

darin wird ein chat programmiert der auch wunderbar funktioniert nur steh ich irgendwie auf dem schlauch .....

wenn ich als ip "localhost" angebe und beides auf meinem PC laufen lasse funktioniert alles perfekt.....
leider habe ich momentan keine Testperson im www also habe ich gedacht ich kann das Programm auch auf meinem PC laufen lassen und so tuen als währe ich als Client weit weg und meinen PC über meine IP adresse ansprechen

dazu habe ich bei Google "meine ip" gesucht und das da gefundene eingegeben. Leider klappt das nciht....

es gibt da bestimmt nen dummen grund nur welchen ;-) erzählt es mir

naja ich hoffe ihr könnte helfen danke shcon mal im vorraus

  1. Hallo,

    es gibt da bestimmt nen dummen grund nur welchen ;-) erzählt es mir

    Möglicherweise blockt eine Firewall bzw. ein Router den Zugriff von außen. Hast du dafür gesorgt das der Port (im Beispiel 1234) zu deinem Rechner durchgestellt wird?

    Gruß

    Krueger

    1. Hallo,

      es gibt da bestimmt nen dummen grund nur welchen ;-) erzählt es mir

      Möglicherweise blockt eine Firewall bzw. ein Router den Zugriff von außen. Hast du dafür gesorgt das der Port (im Beispiel 1234) zu deinem Rechner durchgestellt wird?

      Gruß

      Krueger

      mhhhh stimmt das könnte sein welche ports sind denn normalerweise frei gegeben? bzw wo kann man das einstellen.... aber das erste wäre besser weil ich sohn mein vater = chef vom internet und er möchte da nich so viel ändern ^^

      danke sehr

      1. Ich grüsse den Cosmos,

        mhhhh stimmt das könnte sein welche ports sind denn normalerweise frei gegeben?

        80, 21, 110, 25 und einige andere, die benötigt werden. Nutzbar dürfte für dich 8080 sein, wenn du lokal keinen Tomcat laufen hast und diesen nicht für den Chat nutzt

        bzw wo kann man das einstellen....

        Ich stell das in meiner Firewall (Linux, 2 NK, DCOP) ein, das dürfte dir aber nicht wirklich helfen.

        aber das erste wäre besser weil ich sohn mein vater = chef vom internet und er möchte da nich so viel ändern ^^

        Dieses Problem jmusst du ganz alleine lösen ...

        Möge das "Self" mit euch sein

        --
        Neulich dachte ich mir, einmal S/M ausprobieren wäre eine tolle Erfahrung. Also hab ich Windows gebootet ...
        ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)
        1. ;-) Moin Moin noch mal

          ich programmiere immer noch mit meinem chat rum und hatte jetzt einen Server als normale java datei jetzt möchte ich das in JFrame umsetzen....

          da taucht aber bei gleichem code ein Fehler auf den ich nicht verstehe...

          import java.awt.*;
          import java.awt.event.*;
          import javax.swing.*;
          import java.net.*;
          import java.io.*;

          /**
            *
            * Beschreibung
            *
            * @version 1.0 vom 23.05.2007
            * @author
            */

          public class Server extends JFrame
          {
            // Anfang Variablen
            // Ende Variablen
            ServerSocket server = new ServerSocket(1234);
            Server() throws IOException
            {
              while(true)
              {
                Socket client = server.accept();
                InputStream input = client.getInputStream();
                OutputStream output = client.getOutputStream();
                int zahl1 = input.read();
                int zahl2 = input.read();
                output.write(zahl1 + zahl2);
                output.flush();
                input.close();
                output.close();
              }
            }

          public Server(String title)
            {
              // Frame-Initialisierung
              super(title);
              addWindowListener(new WindowAdapter() {
                public void windowClosing(WindowEvent evt) { System.exit(0); }
              });
              int frameWidth = 300;
              int frameHeight = 300;
              setSize(frameWidth, frameHeight);
              Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
              int x = (d.width - getSize().width) / 2;
              int y = (d.height - getSize().height) / 2 ;
              setLocation(x, y);
              Container cp = getContentPane();
              cp.setLayout(null);
              // Anfang Komponenten

          // Ende Komponenten

          setResizable(false);
              setVisible(true);
            }

          // Anfang Ereignisprozeduren
            // Ende Ereignisprozeduren

          public static void main(String[] args)
            {
              new Server("Server");

          try
              {
                Server server = new Server();
              }
              catch (IOException e)
              {
                System.out.print(e);
              }
            }
          }

          das ist mein Programm  dabei habe ich selbst nur geändert das try und catch in der main methode und den anfang. das Fenster kreirt mein Editor automatisch.....

          ich habe folgenden Fehler:
          Server.java:19: unreported exception java.io.IOException; must be caught or declared to be thrown
          ServerSocket server = new ServerSocket(1234);

          den Fehler habe ich ohne JFrame nicht vllt hab ich auch wieder nen doofen Fehler gemacht ich bin halt noch neu auf dem gebiet ich hoffe jemand kann helfen

          danke sehr :-D

  2. Ich wusste gar nicht, dass google jetzt auch schon meine IP kennt...

    Ok. Tut es natuerlich auch nicht. Woher auch? (falls ja, hab ich den Flug in die USA irgendwie verpasst)

    Ich wuerde mal nicht die IP nehmen, die dir irgendein Tool im Internet unterschieben will. Woher sollte es die wissen? Wenn Du deine IP nicht weisst, wer dann?

    Wie bist Du denn im Internet? Ohne diese Info kann DIr kaum einer helfen. Angenommen, su steckst hinter einem Router. Dann hat das Tool (vielleicht) die IP Deines Routers gefunden. Die ist aber nicht die, deines PCs. Und wie Router (auch Firewalls) so sind, tun sie (meist) ihren Job und routen gewuenschte Daten zu den entsprechenden PCs. Aber eben auch nur wenn sie das sollen. Also besteht die Wahrscheinlichkeit, dass deine Datenpakete an Deinem Router abprallen. Den muesstest Du dann konfigurieren.

    Windows? Dos Box oeffnen. IPCONFIG eingeben und die dort angegebene IP Adresse benutzten. Das ist Deine, mit der Du in deinem Netz zu finden bist. Dabei sollte natuerlich eine auf dem Rechner laufende Firewall auch entsprechend konfiguriert sein.

    1. Ich wusste gar nicht, dass google jetzt auch schon meine IP kennt...

      Ok. Tut es natuerlich auch nicht. Woher auch? (falls ja, hab ich den Flug in die USA irgendwie verpasst)

      Ich wuerde mal nicht die IP nehmen, die dir irgendein Tool im Internet unterschieben will. Woher sollte es die wissen? Wenn Du deine IP nicht weisst, wer dann?

      Wie bist Du denn im Internet? Ohne diese Info kann DIr kaum einer helfen. Angenommen, su steckst hinter einem Router. Dann hat das Tool (vielleicht) die IP Deines Routers gefunden. Die ist aber nicht die, deines PCs. Und wie Router (auch Firewalls) so sind, tun sie (meist) ihren Job und routen gewuenschte Daten zu den entsprechenden PCs. Aber eben auch nur wenn sie das sollen. Also besteht die Wahrscheinlichkeit, dass deine Datenpakete an Deinem Router abprallen. Den muesstest Du dann konfigurieren.

      Windows? Dos Box oeffnen. IPCONFIG eingeben und die dort angegebene IP Adresse benutzten. Das ist Deine, mit der Du in deinem Netz zu finden bist. Dabei sollte natuerlich eine auf dem Rechner laufende Firewall auch entsprechend konfiguriert sein.

      OK das war es danke sehr natürlich is das die IP vom Router ich sagte doch dummer fehler und ich hatte wieder mal recht ;-)

      naja danke sehr

      1. Bitte sehr.

        Du kannst natuerlich die IP vom Router nehmen. Aber dann musste dem schon sagen was er mit den ankommenden Paketen anstellen soll. Ausser er leitet einfach alles weiter... Das sollte aber nicht der Fall sein, wenn man nur einen Funken Sinn fuer Sicherheit hat.

    2. Ich grüsse den Cosmos,

      Ich wusste gar nicht, dass google jetzt auch schon meine IP kennt...

      Das jeder Webserver deine externe IP kennt, um seine Daten dahin zu senden, wusstest du nicht? (Von Proxies jetzt mal abgesehen (und selbst die forwarden teilweise))

      Möge das "Self" mit euch sein

      --
      Neulich dachte ich mir, einmal S/M ausprobieren wäre eine tolle Erfahrung. Also hab ich Windows gebootet ...
      ie:{ br:> fl:| va:| ls:& fo:{ rl:( n4:{ de:] ss:) ch:? js:| mo:) sh:( zu:)