端口相關的概念:
端口按端口號可以分為3大類:
1:公認端口(Well Known Port)
公認端口號從0到1023,它們緊密綁定與一些常見服務,例如FTP服務使用端口21,你在 /etc/services 里面可以看到這種映射關系。
2:注冊端口(Registered Ports):
從1024到49151。它們松散地綁定于一些服務。也就是說有許多服務綁定于這些端口,這些端口同樣用于許多其它目的.
3: 動態或私有端口(Dynamic and/or Private Ports)
動態端口,即私人端口號(private port numbers),是可用于任意軟件與任何其他的軟件通信的端口數,使用因特網的傳輸控制協議,或用戶傳輸協議。動態端口一般從49152到65535
端口與服務的關系
關于端口和服務,拿餐廳打比方,餐廳里的每一個餐桌就好比系統的每一個端口,為人提供吃飯的位置就是所謂的服務,你提供了這些服務,那么就必須開放端口(餐桌),當有人就餐時,就是在這些端口建立了鏈接。如果那個餐桌被人占用了,就表示端口號被服務占用了,如果有一天這里不提供餐飲服務了,這個餐廳被拆除了,自然也就沒有了端口號了。其實更形象的例子,就好比銀行大堂,端口號是那些柜臺,而那些取號辦理業務的人就好比鏈接到服務器的各種客戶端。他們通過端口重定向技術與柜臺發送業務聯系。再舉一個通俗易懂的例子,端口號,好比高鐵線上的每個站點,例如,長沙、岳陽等分別代表一個端口號,旅客通過火車票到各自的站點,就好比各個應用程序發往服務器端口的IP包。
端口有什么用呢?我們知道,一臺擁有IP地址的主機可以提供許多服務,比如Web服務、FTP服務、SMTP服務等,這些服務完全可以通過1個IP地址來實現。那么,主機是怎樣區分不同的網絡服務呢?顯然不能只靠IP地址,因為IP 地址與網絡服務的關系是一對多的關系。實際上是通過“IP地址+端口號”來區分不同的服務的。