Socket Socket IP Frage + Tutorial/Bücher

Helgon

Bekanntes Mitglied
Hey, ich wollt mich jetzt langsam mal an Netzwerkprogrammierung herantasten und hab mir mal

http://www.java-forum.org/netzwerkprogrammierung/5507-netzwerkgrundlagen-serversocket-socket.html

und den Teil aus Java ist auch eine Insel dazu durchgelesen und ich such jetzt noch nach paar anderen Tutorials, weil ich doch momentan noch paar Problemchen hab alles ganz zu verstehen.

Hab paar Sachen gefunden, aber dachte mir das ihr vielleicht ein paar gute auf Lager habt 🙂 (auf Englisch natürlich auch kein Problem)

Dann stell ich auch grad mal ne Frage.

Ich hab nen ServerSocket, der läuft auf meinem PC.
Wenn ich dann im Client (auf meinem PC am laufen) ein Socket erzeuge, was muss ich als IP angeben? Den Localhost, oder (127.0.0.1)?
Was ist wenn ich den Client von einem anderen PC aus starten würde (im Netzwerk). Muss ich dann im Client die LAN IP angeben (192.168.....)?
Und geht das auch, dass ich als Server übers Internet fungiere, oder brauche ich dann etwas wie Hamchi?

Grüße

Edit: Ach und ne andere Frage. Wenn man einen Chat als Applet umsetzt, kann ein normaler Webspace sowas überhaupt handeln oder braucht man für sowas z.B. einen vserver?
 
Zuletzt bearbeitet:
Ich hab nen ServerSocket, der läuft auf meinem PC.
Wenn ich dann im Client (auf meinem PC am laufen) ein Socket erzeuge, was muss ich als IP angeben? Den Localhost, oder (127.0.0.1)?
Richtig
Was ist wenn ich den Client von einem anderen PC aus starten würde (im Netzwerk). Muss ich dann im Client die LAN IP angeben (192.168.....)?
Richtig
Und geht das auch, dass ich als Server übers Internet fungiere, oder brauche ich dann etwas wie Hamchi?
Über die externe IP vom Router. Bzw. mit DynDNS über einen fixen Hostnamen. Port Forwarding im Router ist erorderlich.

Dir fehlt noch ein bisschen was an grundlegender Netzwerktechnik 😉

Edit: Ach und ne andere Frage. Wenn man einen Chat als Applet umsetzt, kann ein normaler Webspace sowas überhaupt handeln oder braucht man für sowas z.B. einen vserver?
Nein, es reicht ein normaler Webspace, da ein Applet im Browser, also am Client ausgeführt wird. Deswegen sollte man in einen Applet auch so Sachen wie direkte Datenbankzugriffe und FTP-Connections vermeiden. Ein vServer benötigst du nur wenn du Webapplications in Java (JSP, JSF, Java EE, ...) programmierst. Da solltest dich aber nach managed Angeboten umschauen, da vServer einiges an Erfahrung erfordern.
 
GAAAANNNNZ WICHTIG! "Ich hab' deine IP-Adresse - 127.0.0.1 - jetzt werde ich dich nuken!" :lol:
Nee, im ernst, damit nuke ich mich höchstens selber. 😉 Also niemals vergessen: 127.0.0.1 ist immer der Rechner, vor dem du sitzt. Man könnte ihn auch als "localhost" bezeichnen.
Damit du zu deinen ServerSockets auch von anderen Rechnern kontakt aufnehmen kannst müssen diese ServerSockets auf jeden Fall an eine IP ausserhalb des "localnet" (127.0.0.0 | 255.0.0.0) gebunden sein und die IP natürlich auch von den Clients erreichbar sein.
Um für Netzwerkkommunikation gerüstet zu sein, kommt man leider an der Lektüre über IP-Adressen nicht vorbei. IP-Adresse ? Wikipedia
[EDIT]Hmm... Ein Applet als Chatserver in normalem Webspace... da fällt mir mIRC als Beispiel ein. Dieser musste wegen der Kontaktaufnahme mit anderen Servern (IRC-Servern) signiert werden. Will man das Applet nicht signieren, bleibt einem nur die Möglichkeit, auf dem Webspace selbst einen Chatserver aufzuziehen. Mit Java aber wird dies schwierig, es sei denn, es handelt sich dabei um einen ServletContainer. Sonst bleibt einem dort nur die Realisierung über PHP.[/EDIT]
 
Zuletzt bearbeitet von einem Moderator:
Vielen Dank schonmal für die ganzen Antworten! :toll:

Dir fehlt noch ein bisschen was an grundlegender Netzwerktechnik

Da hast du aber sowas von recht! 😉

Edit:

Um für Netzwerkkommunikation gerüstet zu sein, kommt man leider an der Lektüre über IP-Adressen nicht vorbei. IP-Adresse ? Wikipedia

Gerade deswegen frag ich ja nach Buchtipps, hast du etwas das du empfehlen kannst? 🙂

Grüße
 
Gerade deswegen frag ich ja nach Buchtipps, hast du etwas das du empfehlen kannst? 🙂
So direkt grad' nicht. Alles was ich darüber weis, stammt zunächst aus Handbüchern von älteren Linux-Distributionen und AmiNet, später dann noch aus "krankhafter" Googleitis und Wikipädie. Vllt. helfen dir ja die Einzelnachweise usw. meines geposteten Links bereits weiter. Hier ist noch was ebenso wichtiges, was Grundlagen angeht.
 

Zurück
Oben