萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 網路安全 >  >> 網路基礎知識

計算機網路協定核心解析:IP、TCP、UDP、ICMP、通訊埠與封裝格式

網路協定是異構系統互通的通用語言。本文深入解析 IP、TCP、UDP、ICMP 四大核心協定機制、通訊埠(Port)多工原理、以及資料封裝格式,並說明 IP 位址結構與偽造風險,為網管、開發者、資安人員打堅實協定層基礎。

一、網路協定本質:解決異構互通的契約

當字元集、顯示格式、行長、捲動方式皆不同時,協定規定:發送端轉為標準語法 → 傳輸 → 接收端轉為本地語法。這套「轉換-傳輸-還原」機制,正是所有協定的共同邏輯。

二、IP 協定:不可靠的分組轉發核心

位置與職責

網路層(OSI L3 / TCP/IP 網際層)。接收來自資料鏈路層的幀,解封裝取出 IP 封包,依目的 IP 查路由表決定下一跳,封裝新幀送出;反之向上交付 TCP/UDP。

關鍵特性

  • 無連線、不可靠、盡力而為:不保證送達、不保證順序、不重傳、不流控
  • 封包結構:版本、首部長度、服務類型、總長度、識別/旗標/片位移(分片重組)、TTL、協定(TCP=6/UDP=17/ICMP=1)、首部檢驗和、來源 IP、目的 IP、選項、資料
  • 來源路由選項:可指定強制路徑,但易被濫用繞過防火牆/存取控制,現多禁用

安全啟示

許多服務信任「來源 IP = 真實發送者」,IP 偽造(Spoofing)配合來源路由可繞過基於 IP 的存取控制清單(ACL),導致非法入侵。防禦:入口過濾(BCP38)、啟用 uRPF、棄用來源路由、採用應用層驗證(TLS/憑證/OAuth)。

三、TCP 協定:可靠、面向連線、位元組流服務

三次交握建立連線


Client: SYN(seq=x) → Server
Server: SYN+ACK(seq=y, ack=x+1) → Client
Client: ACK(ack=y+1) → Server
連線建立,雙方進入 ESTABLISHED

可靠性機制

  • 序號 + 確認號:位元組級排序、檢測遺失/重複/亂序
  • 肯定確認 + 重傳:超時重傳(RTO 自適應)、快速重傳(3 次重複 ACK)、SACK 選項
  • 滑動視窗流控:接收端通告視窗大小,限制發送端飛行封包量
  • 拥塞控制:慢啟動、拥塞避免、快速恢復、CUBIC/BBR 演算法

連線拆除:四次揮手


主動關閉方: FIN → 被動方: ACK → 被動方: FIN → 主動方: ACK → TIME_WAIT(2MSL) → CLOSED

應用層映射

Telnet(23)、FTP(20/21)、SSH(22)、SMTP(25)、HTTP(80)、HTTPS(443)、X Windows(6000+) 等需高可靠服務均採 TCP。DNS 區域傳輸(AXFR/IXFR)亦用 TCP。

四、UDP 協定:無連線、低延遲、不可靠資料報

特性

  • 無交握、無狀態、無流控/擁塞控制、首部極小(8 位元組:來源/目的埠、長度、檢驗和)
  • 支援單播、廣播、多播
  • 應用層需自行實作可靠性(序號、ACK、重傳、FEC)

典型應用

  • DNS 查詢(單次請求/回應 < 512 bytes)
  • NTP 時間同步
  • 即時語音/視訊(RTP over UDP)、線上遊戲、串流
  • SNMP、TFTP、DHCP、Syslog

安全風險

無交握機制,偽造來源 IP 極易,放大攻擊(DNS/NTP/SSDP 放大)常利用 UDP。防禦:入口過濾、速率限制、應用層驗證、啟用 BCP38。

五、ICMP 協定:IP 層的控制與診斷信使

  • 網路層協定,封裝在 IP 封包內(協定號 1)
  • 重定向:告知主機更佳下一跳
  • 不可達:網路/主機/埠/協定/片段不可達,含代碼細分
  • 時間超過:TTL=0 或重組逾時,traceroute 利用此機制
  • 回應請求/回應:Ping 核心機制
  • 參數問題、時間戳、資訊請求等

ICMP 讓 TCP 連線在路徑失效時能「體面終止」,也是網路診斷基石。

六、通訊埠:多工識別的 16 位元鑰匙

TCP/UDP 連線由四元組唯一標識:


(來源 IP, 來源埠, 目的 IP, 目的埠)
  • 知名埠:0-1023(HTTP 80、HTTPS 443、SSH 22、DNS 53、SMTP 25…)需系統權限綁定
  • 登記埠:1024-49151(應用程式向 IANA 登記)
  • 動態/私用埠:49152-65535(客戶端暫時埠,Ephemeral Ports)

伺服器監聽知名埠,客戶端自動獲取暫時埠發起連線,四元組確保百萬連線互不干擾。

七、資料封裝格式:從幀到位元組的層層包裹


【資料幀】= 幀頭(DMAC+SMAC+Type) + 【IP封包】 + 幀尾(FCS)
【IP封包】 = IP頭(Ver+IHL+TOS+Len+ID+Flags+Frag+TTL+Proto+Checksum+SIP+DIP+Opt) + 【TCP段/UDP資料報/ICMP訊息】
【TCP段】  = TCP頭(Sport+Dport+Seq+Ack+Offset+Flags+Win+Checksum+Urgent+Opt) + 【應用資料】

封裝:應用→傳輸層加 TCP/UDP 頭→網路層加 IP 頭→鏈路層加幀頭尾 → 物理層比特流。解封裝反向逐層剝離。

八、IP 位址:32 位元的網路門牌

  • IPv4:32 bits,點分十進制(如 202.116.0.1),每段 0-255
  • 分類:A/B/C/D/E 類(歷史),現採 CIDR 無類別域間路由(/8 - /30)
  • 特殊位址:0.0.0.0(預設路由)、127.0.0.1(本機回環)、169.254.x.x(APIPA)、私有網段(10/8、172.16/12、192.168/16)、多播(224.0.0.0/4)
  • 子網遮罩/前綴長度決定網路部份與主機部份

結語

協定堆疊如同精密齒輪組,IP 負責「送達」、TCP 負責「可靠」、UDP 負責「快速」、ICMP 負責「回報」、埠負責「多工」。深入理解各層機制與交互作用,才能在效能調優、故障診斷、資安防禦中遊刃有餘。

copyright © 萬盛學電腦網 all rights reserved