Wie programmiert man einen Chat am besten?
-
Ok, dann bastel ich das mit der Weiterleitung
-
Hi,
also ich hab mal nen Java-Chat programmiert. Das Prinzip ist simpel:
Einen Server der mittels einens ServerSockets an einem Port "lauscht", einen Client (ich hab ein Applet gewählt) der eine Verbindungs-Klasse instanziert. Diese Klasse meldet den Client mittels eines ServerSockets beim Server an. Der Server reiht den Client in einen Vector ein und leitet dann eben alle Nachrichten die er bekommt an die Clients weiter. ganz ganz simpel.
Auf Kaffee & Kuchen (java.seite.net/) ist das Grundgerüst dazu, das hab ich auch verwendet und dann ausgebaut. Ist echt gut das tutorial.Mfg
GPC
-
Vielen Dank! Finde aber das Chattutorial irgendwie nicht *fg*
-
Optimizer schrieb:
Ports unter 1024 sind bei vielen Routern standardmäßig z.B. nicht gesperrt.
Wow, wie leichtsinnig. ...dabei sind das doch gerade die kritischen Ports.
-
-
Danke
-
Gregor schrieb:
Optimizer schrieb:
Ports unter 1024 sind bei vielen Routern standardmäßig z.B. nicht gesperrt.
Wow, wie leichtsinnig. ...dabei sind das doch gerade die kritischen Ports.
Für die ist das Betriebssystem zuständig. Dank Windows kann also gar nichts passieren.
Überlegt mal was ohne diese Ports alles nicht gehen würde... gar nichts.
-
Warum werden denn die dadrüber gesperrt?
-
Weil die nicht für bestimmte Funktionen reserviert sind. Es gibt irgendwelche Konventionen, dass z.B. 21 für ftp oder telnet oder sonstwas verwendet werden sollte, für die ab 1024 gibt es keine Festlegung mehr.
Des is jetzt aber nicht zwangsläufig bei allen Routern genau bis 1024, auf jeden Fall kannst du wohl davon ausgehen, dass ICQ für Nachrichten einen gebräuchlichen Port verwendet.
-
Optimizer schrieb:
Ports unter 1024 sind bei vielen Routern standardmäßig z.B. nicht gesperrt.
Quatsch.
Die "Sperrung" kommt ja nur zustande, weil entsprechende Ports eben _nicht_ forwardet werden.
Wohin sollte der Router die Ports denn schicken? An alle? Alle Rechner == DMZ??
Nö.
Und WAS würde denn ohne PFW alles nicht gehen?!? Ja was denn?
Die Windows-Netzwerkfreigabe. Geht auch nicht, mein Kumpel in Taihiti kann nicht auf meine Freigaben zugreifen.
Mein HTTP und FTP Server auf Port 80 bezw. 21. Geht auch nicht. Ohne PFW kann er nicht darauf zugreifen.
Nein, RPC-Hacks a la Blaster und MyDoom kommen auch nicht durch. *schweißwegwisch*
Remote auf meinen X-Server kommt auch keiner von "draussen".Optimizer schrieb:
In ICQ gehen die Nachrichten auch nicht über den Server. Der teilt nur allen Teilnehmern die IP von den anderen mit.
Doch. Die Chat-Nachrichten gehen AFAIK über den Server.
Diese werden ja auch zwischengespeichert falls der andere Offline ist.
Nur File-Transfers etc. gehen nicht über den Server (und funzen ohne PFW auch nicht).Dasselbe bei IRC: Chatten kann jeder (es sei denn man braucht 'nen Ident und hat 113 nicht gePFW. - Ach vergessen, Router leiten den für gewöhnlich ja sowieso weiter :p ) - nur DCC (Direct Client to Client) Verbindungen (file transfers und "private chats") gehen _NICHT_ über den IRC-Server (und funzen ohne PFW ebenfalls nicht).
Dasselbe bei edonkey und Co.: Connecten kann ich mich eigentlich immer - nur wenn meine Ports nicht offen sind, wird mir kaum einer was senden können
-
Optimizer schrieb:
auf jeden Fall kannst du wohl davon ausgehen, dass ICQ für Nachrichten einen gebräuchlichen Port verwendet.
Also mein ICQ connected auf 5190 und nimmt (z.Z.) als lokalen Port 1071.
Und jetzt 2399.
Und jetzt 2404...
...