Czytam książkę o programowaniu sieciowym za pomocą Go. Jeden z rozdziałów dotyczy pliku / etc / services. Podczas eksploracji tego pliku zauważyłem, że niektóre popularne wpisy, takie jak HTTP i SSH, oba używające TCP w warstwie transportowej, mają drugi wpis dla UDP. Na przykład w Ubuntu 14.04:
ubuntu@vm1:~$ grep ssh /etc/services
ssh 22/tcp # SSH Remote Login Protocol
ssh 22/udp
ubuntu@vm1:~$ grep http /etc/services
http 80/tcp www # WorldWideWeb HTTP
http 80/udp # HyperText Transfer Protocol
Czy ktoś wie, dlaczego mają dwa wpisy? Nie sądzę, aby SSH lub HTTP kiedykolwiek używały UDP (potwierdzone tym pytaniem dla SSH).
22/udp
został usunięty w Debianie w 2016 r. IANA wciąż wyświetla listę 22 / udp i wyświetla listę zarówno udp, jak i tcp dla większości protokołów, które zwykle są implementowane tylko na jednym z nich. Czy to możliwe, że oznacza to, że 22 jest zarezerwowane dla ssh na wypadek, gdyby ktoś chciał kiedyś zaimplementować ssh over udp?