Definition

Dynamische Portnummer

Was sind dynamische Portnummern?

Die dynamischen Portnummern (auch bekannt als private Portnummern oder Dynamic Port Numbers) sind die Portnummern, die jeder Anwendung zur Verfügung stehen, um mit jeder anderen Anwendung über das Transmission Control Protocol (TCP) oder das User Datagram Protocol (UDP) des Internets zu kommunizieren.

Was sind dynamische private Ports?

Ein Port kann entweder hardware- oder softwarebasiert sein. Ein hardwarebasierter Port ist eine physische Schnittstelle, zum Beispiel eine Buchse oder ein Sockel, für die Verbindung mit anderen Systemen. Ein softwarebasierter Port, manchmal auch als virtueller Port bezeichnet, ist ein logischer Kommunikationsendpunkt, der vom Betriebssystem des Hosts verwaltet wird. Softwarebasierte Ports sind nummeriert und können bestimmten Prozessen oder Diensten zugewiesen werden. Der Host-Computer verwendet diese Ports, um den Datenverkehr an den entsprechenden Prozess oder Dienst zu leiten.

Softwarebasierte Ports werden durch 16-Bit-Ganzzahlen identifiziert, die von 0 bis 65535 reichen. Die Ports können entweder statisch oder dynamisch sein. Ein statischer Port ist ein Port, dessen Zuordnung zu einem Prozess oder Dienst sich nicht ändert. Ein dynamischer Port, auch privater Port genannt, ist ein Port, der einem Prozess oder Dienst zu dem Zeitpunkt zugewiesen wird, zu dem er benötigt wird, normalerweise beim Start des Prozesses oder Dienstes. Bei der Zuweisung dynamischer Ports kann das Betriebssystem jeden verfügbaren Port aus dem Bereich der für diesen Zweck vorgesehenen Ports verwenden.

Unabhängig davon, ob ein Port statisch oder dynamisch genutzt wird, ist er immer mit einem Protokoll verbunden, in der Regel TCP oder UDP. Eingehende Verbindungen müssen die richtige Portnummer angeben, um eine Verbindung mit der Anwendung oder dem Dienst herzustellen, es sei denn, der Port ist durch die Art der Kommunikation vorgegeben.

Zum Beispiel ist Port 80 für Kommunikationen reserviert, die das Hypertext Transfer Protocol (HTTP) verwenden und Port 443 für HTTP Secure (HTTPS). Wenn Benutzer eine Verbindung zu einer Webanwendung herstellen, die Port 80 verwendet, müssen sie die Portnummer nicht in der URL (Uniform Resource Locator) angeben, da sie implizit ist. Wenn die Webanwendung jedoch einen anderen Port als 80 verwendet, muss die Portnummer am Ende der URL angefügt werden, wobei ein Doppelpunkt vorangestellt wird, wie in www.URL-der-Webanwendung.de:123.

Mit dem Transmission Control Protocol oder dem User Datagram Protocol des Internets können Anwendungen über dynamische Portnummern miteinander kommunizieren.
Abbildung 1: Mit dem Transmission Control Protocol oder dem User Datagram Protocol des Internets können Anwendungen über dynamische Portnummern miteinander kommunizieren.

Wie funktionieren dynamische Portnummern?

Ein Port wird durch seine Portnummer identifiziert. Wenn der Port mit einem Prozess oder Dienst verbunden ist, identifiziert die Portnummer auch diesen Prozess oder Dienst. Wenn eine Anwendung auf einem Host-Computer mit einer Anwendung auf einem anderen Computer kommuniziert, gibt die aufrufende Anwendung daher normalerweise bei jeder Datenübertragung die Portnummer der Zielanwendung an.

Zum Beispiel enthält der TCP-Header in einem IP-Paket (Internet Protocol), das über das Internet übertragen wird, sowohl den Quellport als auch den Zielport.

Wenn eine Anwendung die Portnummer des Ziels kennt, kann sie diese direkt aufrufen. Wenn die Portnummer nicht bekannt ist, kann die Anwendung eine von mehreren Methoden verwenden, um sie zu ermitteln. Das kann zum Beispiel durch Abfrage der Service-Datensätze des Domain Name Systems oder durch einen Systemaufruf erfolgen, der die Portnummer anhand des Servicenamens nachschlägt.

Das Portnummerierungssystem wurde im gesamten Internet standardisiert und bietet einen Mechanismus zur Registrierung von Dienstnamen und zur Zuweisung von Portnummern. Die Internet Assigned Numbers Authority (IANA) verwaltet dieses System, obwohl die Internet Corporation for Assigned Names and Numbers (ICANN) jetzt die meisten IANA-Funktionen betreut. Die Funktionen zur Vergabe von Portnummern werden jedoch weiterhin als IANA-Dienste angeboten.

Das System der Portnummern ist im Request for Comments (RFC) 6335 beschrieben, einer Veröffentlichung der Internet Engineering Task Force (IETF). RFC 6335 enthält Einzelheiten über die Verwendung von Dienstnamen und Portregistrierungen sowie eine Aufschlüsselung der Portnummernbereiche. Das System der Portnummern gilt nicht nur für TCP und UDP, sondern auch für UDP-Lite, Stream Control Transmission Protocol (SCTP) und Datagram Congestion Control Protocol (DCCP).

Die Registrierungen für diese Protokolle sind in drei Kategorien unterteilt, basierend auf dem verfügbaren Nummernbereich (0 bis 65535):

  1. System-Ports, auch als bekannte Ports bezeichnet, umfassen die Ports 0 bis 1023 und unterstützen häufig genutzte Dienste.
  2. Benutzer-Ports, auch registrierte Ports genannt, umfassen die Ports 1024 bis 49151 und werden bestimmten Diensten auf der Grundlage von bei der IANA eingereichten Dienstanträgen zugewiesen.
  3. Dynamische Ports, auch als private oder ephemere (kurzlebige, flüchtige) Ports bezeichnet, umfassen die Ports 49152 bis 65535 und werden nie zugewiesen.

Ein System- oder Benutzer-Port kann sich zu jedem Zeitpunkt in einem der folgenden drei Zustände befinden:

  1. Der Port ist derzeit einem Dienst zugewiesen, und die Zuweisung ist in der Registrierung vermerkt.
  2. Der Port kann auf Anfrage zugewiesen werden. Die Anforderungen für die Anforderung sind in RFC 6335 beschrieben. Die IANA vergibt Portnummern nach dem Prinzip Wer zuerst kommt, mahlt zuerst.
  3. Die IANA hat den Port für besondere Zwecke reserviert.

Beispiele für System- und Benutzer-Ports sind:

  • System Ports
    • Secure Shell (SSH), Port 22
    • Simple Mail Transfer Protocol (SMTP), Port 25
    • HTTP, Port 80
  • Benutzer-Ports

Dynamische Portnummern gehören zu einer anderen Kategorie als diese beiden genannten, da sie weder zugewiesen noch reserviert werden können. Die IANA hat die Portnummern im dynamischen Bereich speziell für die lokale, private oder vorübergehende Nutzung reserviert und überlässt es den Host-Computern und der Anwendungssoftware, wie und wann sie diese Ports verwenden. Anwendungsentwickler sollten jedoch nicht davon ausgehen, dass eine bestimmte Portnummer im dynamischen Bereich immer verfügbar ist.

Diese Definition wurde zuletzt im Mai 2024 aktualisiert

Erfahren Sie mehr über Netzwerksoftware