1. 程式人生 > >計算機傳輸層端口分類

計算機傳輸層端口分類

端口 端口分類 傳輸層端口 port

參考:port的英文維基百科

簡介

MAC地址定義了數據包的下一跳地址。
IP地址定義了數據包最終應該傳輸到哪臺計算機上。
而端口(port)則定義了數據包中的數據應該由計算機上的哪個進程來接收。
端口是一種邏輯上的概念,用來識別一個計算機上的一個進程或者一類網絡服務。
端口一般和網絡協議與IP地址相關聯。
端口號由16位無符號二進制組成,2^16=65536,可表示的端口號數量為65536,端口號的範圍為0~65535。

分類

特定的端口有特定的用途,端口的分類是由IANA定義的。

周知端口

周知端口(well-known port),端口範圍是0~1023,用於互聯網常用的服務,在類Unix操作系統中,可能需要具備root的權限才可以將管理使用周知端口的服務。常見的周知端口如下:

端口 描述
20 FTP數據連接主動模式
21 FTP命令連接
22 SSH
23 telnet
25 SMTP
80 HTTP
443 HTTPS
... ...

註冊端口

註冊端口(register port),端口範圍是1024~49151,一般用於那些不需要root權限的服務。常見的註冊端口如下:

端口 描述
10050 zabbix-agent
10051 zabbix-server
3306 mysql or mariadb
6379 redis
... ...

動態端口

動態端口(dynamic port),也叫作私有端口(private port)或者短命端口(ephemeral port),端口範圍是49152~65535,這些端口是無法在IANA上面註冊的,一般用於C/S架構中client啟用的高位端口作臨時使用的。

如圖所示,本機開了四個X shell會話(session)來連接虛擬機,每個會話占用一個連接(connection),每個連接在我的本機啟用了一個動態端口,分別是:49618、49628、49629和49635。

# netstat -ntup
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0     64 192.168.17.100:22           192.168.17.1:49618          ESTABLISHED 2761/sshd
tcp        0      0 192.168.17.100:22           192.168.17.1:49628          ESTABLISHED 2790/sshd
tcp        0      0 192.168.17.100:22           192.168.17.1:49629          ESTABLISHED 2811/sshd
tcp        0      0 192.168.17.100:22           192.168.17.1:49635          ESTABLISHED 2832/sshd

計算機傳輸層端口分類