計算機傳輸層埠分類
阿新 • • 發佈:2018-12-04
本文最早釋出於我的51CTO部落格,目前已遷移至部落格園。
參考: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