TCP 埠


介紹

傳輸控制協議 (TCP) 是用於透過網際網路和其他網路傳輸資料的基本通訊協議。TCP 埠是一個 16 位數字,用於標識在網路環境中裝置上執行的特定程序。TCP 埠的功能與 IP 地址的概念密切相關,IP 地址標識網路上的單個裝置。

埠本質上是虛擬通道,允許多個應用程式和服務使用相同的 IP 地址相互通訊。IP 地址和埠號的組合唯一地標識裝置上執行的程序或服務。

理解 TCP 埠

TCP(傳輸控制協議)是計算機網路中使用最廣泛的協議之一,因為它在執行在終端系統上的應用程式之間提供可靠、有序且經過錯誤檢查的資料交付。埠在 TCP 通訊中的作用是幫助區分單個主機內的多個通訊通道。

每個 TCP 連線都由四個元素定義:源 IP 地址、源埠號、目標 IP 地址和目標埠號。前兩個元素標識傳送主機和生成資料的應用程式,而後兩個元素標識接收主機和應用程式。

埠在 TCP 通訊中的作用

埠是 TCP 使用的邏輯結構,用於區分一臺機器上各種正在進行的通訊。每個埠代表一個端點,應用程式透過該端點在網路上傳送或接收資料。當應用程式使用 TCP 協議傳送流量時,它會指定自己的源埠和預期的目標埠以進行路由,以便網路上的其他裝置可以準確地將響應導回。

埠型別:眾所周知、已註冊和動態埠

TCP 中有三種類型的埠:眾所周知的埠 (0-1023)、已註冊的埠 (1024-49151) 和動態或私有埠 (49152-65535)。眾所周知的埠通常保留用於系統服務,例如 HTTP (埠 80) 和 FTP (埠 21),而已註冊的埠由網際網路號碼分配機構 (IANA) 分配給特定的應用程式或服務。

另一方面,動態埠未預先分配,客戶端應用程式使用它們來啟動與伺服器應用程式的通訊。它們是從可用埠號範圍內隨機分配的。

眾所周知的埠

眾所周知的埠的定義和示例

在計算機網路中,眾所周知的埠是指其編號範圍為 0 到 1023 的 TCP/IP 埠。這些埠已被網際網路號碼分配機構 (IANA) 保留用於特定目的。

眾所周知的埠的一些示例包括:用於 HTTP 流量的埠 80、用於 HTTPS 流量的埠 443、用於 SSH 流量的埠 22 和用於 SMTP 流量的埠 25。這些只是一些示例,還有許多其他眾所周知的埠用於各種目的。

眾所周知的埠的常見用途

眾所周知的埠被各種應用程式和服務使用,例如 Web 伺服器、電子郵件伺服器、檔案傳輸協議和遠端訪問工具。例如,當您使用 Web 瀏覽器透過 HTTP (埠 80) 訪問網站時,您的連線將透過該埠建立。

同樣,當您透過 SMTP (埠 25) 傳送或接收電子郵件時,通訊將透過該埠進行。瞭解應用程式或服務使用哪個埠可以幫助解決網路連線問題。

已註冊的埠

已註冊埠的定義和示例

已註冊的埠是由網際網路號碼分配機構 (IANA) 分配給需要高階口號但不能使用動態埠分配的應用程式的埠。這些埠的範圍從 1024 到 49151,任何應用程式都可以使用它們,只要它在 IANA 註冊即可。當應用程式具有已註冊的埠號時,它保證沒有其他應用程式將使用相同的編號。

已註冊埠的一些示例包括:

  • SSH(安全外殼)— 埠 22

  • Telnet — 埠 23

  • SMTP(簡單郵件傳輸協議)— 埠 25

  • HTTP(超文字傳輸協議)— 埠 80

  • POP3(郵局協議版本 3)— 埠 110

  • IMAP(網際網路訊息訪問協議)— 埠 143

  • SMB(用於 Windows 中檔案共享的伺服器訊息塊協議)— 埠:TCP/445、UDP/137-138、TCP/139

使用已註冊埠的應用程式

許多應用程式使用已註冊的埠進行通訊。這些包括像 SMTP 和 POP3 伺服器這樣的電子郵件伺服器,在埠 80 或 HTTPS 上埠 443 上監聽的像 Apache 或 Nginx 這樣的 Web 伺服器,在埠號範圍分別從 3306 到 5432 之間的 MySQL 或 PostgreSQL 等資料庫管理系統。其他應用程式可能包括使用諸如 HTTP/HTTPS 隧道協議(例如 WebSockets)在 TCP/843 和 UDP/3478 等埠號上使用 STUN 協議的線上遊戲平臺。

動態埠

動態埠是應用程式用於客戶端-伺服器通訊的臨時埠,它們不像眾所周知和已註冊的埠那樣預先分配。它們也稱為私有埠或臨時埠。動態埠號的範圍是 49152 到 65535,並在執行時應用程式請求埠時由作業系統動態分配。

如何將動態埠分配給應用程式

動態埠號的分配基於先進先得 (FCFS) 的概念。當應用程式想要使用 TCP/IP 與網路上的另一個端點通訊時,它會發送一個 SYN 資料包,其中包含其源 IP 地址、源埠號、目標 IP 地址和目標埠號。如果目標使用眾所周知或已註冊的埠號,它將回復一個包含其自身源和目標 IP 地址和埠號的 SYN-ACK 資料包。

然後,客戶端應用程式傳送一個 ACK 資料包,確認已收到響應資料包。在此過程成功完成之後,兩個端點都使用動態分配的臨時埠建立通訊。

TCP 埠掃描技術

什麼是埠掃描?

埠掃描是將資料包傳送到目標計算機或網路上一系列 TCP 或 UDP 埠的過程,以確定哪些埠已開啟並且可以用於通訊。駭客經常使用埠掃描技術來識別易受攻擊的系統並利用它們。可以使用專門的軟體工具(如 Nmap、Angry IP Scanner 和 Zenmap)手動或自動進行埠掃描。

駭客為什麼要使用埠掃描?

駭客將埠掃描用作偵察技術來收集有關目標系統或網路的資訊。透過識別開放的埠,駭客可以確定哪些服務正在系統上執行以及它們可能存在哪些漏洞。他們還可以使用埠掃描來查詢先前攻擊者或管理員可能留下的後門。

結論

TCP 埠是當今控制網際網路通訊的最重要方面之一。在本文中,我們介紹了不同型別的 TCP 埠——眾所周知、已註冊和動態埠。我們還提供了一個包含 TCP/IP 埠號及其說明的詳盡列表。

瞭解這些細節可以幫助開發人員和網路管理員更好地管理網路並防止潛在的安全風險。透過及時瞭解 TCP 埠技術的最新發展,我們可以繼續為每個人構建一個更安全、更高效的網際網路。

更新於:2023年7月11日

瀏覽量 729 次

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告