Mario Guenterberg schrieb:
On Sun, Nov 19, 2006 at 02:18:38PM +0100, Thomas wrote:
Wie wählt das Betriebsystem die Portnummern für ausgehende Verbindungen
aus?
Habe selbst die Antwort unter
http://www.ncftp.com/ncftpd/doc/misc/ephemeral_ports.html gefunden.
Bei Debian kann man diese mit einem
# cat /proc/sys/net/ipv4/ip_local_port_range
herausfinden. Hier: 32768 - 61000
Durch Überschreiben dieser virtuellen Datei kann man die Bandbreite der
zu vergebenen Ports ändern.
Hallo,
unter Windows Server 2003 ist es folgendermassen:
Wenn eine Anwendung einen verfuegbaren TCP-Port anfordert, versucht
TCP/IP* zuerst, einen verfuegbaren Port zu finden, der nicht einer
Verbindung mit dem Status TIME WAIT entspricht. Wenn kein Port
gefunden wird, wird ein beliebiger verfuegbarer Port ausgewaehlt.
laut http://www.ncftp.com/ncftpd/doc/misc/ephemeral_ports.html
bei Windows zwischen 1024 - 5000.
*Welche Anwedung hier mit TCP/IP gemeint ist, weiss ich allerdings
auch nicht.
Ich schätze damit ist die lokale Implementation des Protokolls gemeint.
Oft wird auch TCP/IP Stack gesagt.
Unter Linux funktioniert es aehnlich, denke ich.
Es wird vom Kernel geprueft, ob ein Port den Status TIME WAIT oder
CLOSE hat, wenn nicht darf er verwendet werden. Andernfalls wird ein
anderer dynamisch zugewiesen, wenn er nicht von der Anwendung
festgeschrieben ist.
Daher auch Deine Probleme.
Ja, ich bin etwas überrascht, über diese 'anarchie' der Ephemeral Ports.
Ich sehe für eigene Applikationen also diese Strategien:
- Möglichst hohe Ports wählen und hoffen, daß diese noch nicht besetzt
sind, oder
- Sich auf ein OS einschießen und sich ausserhalb der default Ephemeral
Port Range des OS aufhalten,
- Dreisterweise freie Ports im Well Known < 1024 Bereich benutzen und
hoffen, daß diese nicht in naher Zukunft mit anderen Applikationen
kollidieren.
Grüße, Thomas
--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/
Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)