[linux-l] sockets und ip's

Oliver Bandel oliver at first.in-berlin.de
Mi Okt 8 10:08:34 CEST 2003


On Wed, Oct 08, 2003 at 01:05:31AM +0200, Olaf Radicke wrote:
> Hi!
> 
> Habe mal eine Verstäntnisfrage...
> 
> Es kann immer nur ein Server oder Klient an einen
> Socket Lauschen?


Theoretisch könnten das auch mehrere gleichzeitig;
sie müssen nur auf dem selben Socket horchen.

IMHO ist das aber nicht zuverlässig, da nicht determiniert
werden kann, wer wann was avon dem Socket abgreift...
deswegen sollte man immer nur einen Server (bzw.
eine Server-Instanz) auf dem Socket horchen lassen.

Bei RAW-Sockets geht es aber, daß man die Daten abgreifen
kann, und sie dennoch an "normale" (nicht-Raw) Sockets
weiter gegeben wären, als wenn niemand raw mitgelesen hat.
Das machen dann die ganzen Sniffer-Tools so.

Das ändert aber nichts an der Portnummer.

> 
> So das ip-Adresse + Socket immer ein eindeutiger
> Server bzw. Klient ist?

IP sollte immer eindeutig sein.
Port ist beim Server im Normalfall immer nur ein
eizelner prozess, der da liest.

Beim Client (IP sollte ja auch eindeutig sein) 
bekommt der Prozess i.A. einen beliebigen
Port zugewiesen (kann man aber auch vorgeben,
wenn gewollt).



Ciao,
   Oliver




Mehr Informationen über die Mailingliste linux-l