it-swarm.com.de

Warum haben beliebte TCP-verwendende Dienste UDP sowie TCP Einträge in / etc / services?

Ich lese ein Buch über Netzwerkprogrammierung mit Go. Eines der Kapitel befasst sich mit der Datei/etc/services. Beim Durchsuchen dieser Datei ist mir aufgefallen, dass bestimmte beliebte Einträge wie HTTP und SSH, die beide TCP auf der Transportebene) verwenden, einen zweiten Eintrag für UDP haben. Zum Beispiel unter Ubuntu 14.04:

[email protected]:~$ grep ssh /etc/services  
ssh             22/tcp         # SSH Remote Login Protocol 
ssh             22/udp

[email protected]:~$ grep http /etc/services  
http            80/tcp          www             # WorldWideWeb HTTP            
http            80/udp                          # HyperText Transfer Protocol

Weiß jemand warum diese zwei Einträge haben? Ich glaube nicht, dass SSH oder HTTP jemals UDP verwenden (bestätigt durch diese Frage für SSH).

22
sixty4bit

Grundsätzlich liegt dies daran, dass dies die Tradition von damals war, als die Portnummern bis ungefähr 2011 vergeben wurden. Siehe zum Beispiel §7.1 „Frühere Prinzipien“ von RFC 6335 ::

TCP- und UDP-Ports wurden gleichzeitig zugewiesen, wenn einer der beiden angefordert wurde

Es ist natürlich möglich, dass sie eines Tages nicht zugewiesen werden, da die Ports 1023 und darunter die "Systemports" sind, die von den meisten Betriebssystemen speziell behandelt werden, und der größte Teil dieses Bereichs derzeit zugewiesen ist.

Übrigens läuft HTTP/3 über UDP. Obwohl es jeden UDP-Port verwenden kann, nicht nur 80/443. Also wirklich sind diese noch unbenutzt.

Was Debian betrifft, sein /etc/services hatte bereits 22/udp in 1.0 (Buzz 1996) .

Es wurde jedoch in dieses Commit im Jahr 2016 entfernt und erstmals in Version 5.4 des Pakets netbase veröffentlicht.

Zum Zeitpunkt des Schreibens ist die neueste stabile Version von Debian (Buster) hat 5.6 . Und das neueste Ubuntu LTS (18.04, bionic) Netbase-Paket basiert auf Debian Netbase 5.4 und Sie können sehen sein Changelog erwähnt auch das Entfernen von udp/22 .

29
derobert