IANA(Internet Assigned Numbers Authority)把端口号分為三類:已知的, 已注冊的及動态和(或)專用端口.
0-1023: 由IANA控制, 為已知服務所保留
1024-49151: 由IANA列出的已注冊的端口,由普通使用者執行的普通使用者程序或程式可以使用這些端口.
49152-65535: 動态和(或)專用端口.
普通使用者應用程式應在1024-49151範圍内選用已注冊的端口,以避免可能使用其他應用程式或系統服務正在使用的端口.
下面位址上列舉了IANA規定的端口對應的協定和服務, 如果需要詳細内容, 請參考:
http://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml
端口和服務對應關系通過以下幾個函數來擷取其對應關系, getserverbyname, WSAAsyncGetServerByName, getserverbyport, WSAAsyncGetServerByPort.
另外, 本地的端口和服務對應資訊存放在%WINDOWS%\System32\Drivers\Etc下面services檔案存放了這些資訊.以下是部分資訊.
# Copyright (c) 1993-1999 Microsoft Corp.
#
# This file contains port numbers for well-known services defined by IANA
#
# Format:
#
# <service name> <port number>/<protocol> [aliases...] [#<comment>]
#
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
systat 11/tcp users #Active users
systat 11/tcp users #Active users
daytime 13/tcp
daytime 13/udp
qotd 17/tcp quote #Quote of the day
qotd 17/udp quote #Quote of the day
chargen 19/tcp ttytst source #Character generator
chargen 19/udp ttytst source #Character generator
ftp-data 20/tcp #FTP, data
ftp 21/tcp #FTP. control
telnet 23/tcp
smtp 25/tcp mail #Simple Mail Transfer Protocol