本文最早發佈於我的51CTO博客,目前已遷移至博客園。 參考: "port的英文維基百科" ) 簡介 MAC地址定義了數據包的下一跳地址。 IP地址定義了數據包最終應該傳輸到哪台電腦上。 而埠(port)則定義了數據包中的數據應該由電腦上的哪個進程來接收。 埠是一種邏輯上的概念,用來識別一個 ...
本文最早發佈於我的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