網路的本質與標準化#

網路是多部電腦透過媒體連接,以標準化協定進行資料傳輸的系統。標準的重要性在於讓不同廠商的硬體能相互相容——TCP/IP 與乙太網路的成功,正是因為被國際組織認可並廣泛採用。

OSI 七層參考模型#

OSI 模型將網路通訊拆分為七個獨立的層級,各層有明確的職責分工:

層級名稱核心職責
7應用層HTTP、SMTP、DNS 等使用者可見的服務
6表現層資料格式轉換、加密
5會談層連線建立與結束管理
4傳輸層TCP/UDP、埠口、連線管理
3網路層IP 封包、路由、邏輯位址
2資料鏈結層MAC 訊框、CSMA/CD、硬體位址
1實體層信號、電壓、位元串編碼

各層獨立運作,上層資料被逐層封裝成下層的載體。這種分層設計讓每一層可以獨立演進,不影響其他層。

實務上採用簡化的 TCP/IP 四層模型:鏈結層(對應 OSI 1-2)、網路層(3)、傳輸層(4)、應用層(5-7)。

鏈結層:乙太網路與 MAC#

MAC 位址#

每張網路卡出廠時被賦予獨一無二的 48 位元 MAC 位址,前 24 位為廠商代碼,後 24 位為設備碼。MAC 位址是區域網路中辨識設備的基礎。

CSMA/CD 傳輸機制#

乙太網路的共享媒體採用 CSMA/CD(載波監聽多點存取與碰撞偵測):

  1. 監聽:發送前確認網路無人使用
  2. 多點傳輸:資料被集線器複製給所有主機,目標主機接收,其他主機丟棄
  3. 碰撞偵測:多部主機同時發送則碰撞,各自隨機等待後重試

集線器 vs. 交換器#

  • Hub(集線器):共享媒體,頻寬在所有設備間分享,易碰撞
  • Switch(交換器):內含 MAC-Port 對應表,每個 Port 獨立擁有完整頻寬,已克服碰撞問題

現代網路幾乎全面使用交換器,支援全雙工(同時收發達最大速度)和自動速度協商。

網路層:IP 位址與路由#

IP 位址的組成#

32 位元 IP 分為 Network ID(網域號碼)與 Host ID(主機號碼)兩部分,以四組十進位數字表示(每組 0-255)。

IP 分級系統#

等級首位位元範圍規模
Class A0 開頭0-127超大型網域
Class B10 開頭128-191中型網域
Class C110 開頭192-223小型網域

Netmask(子網路遮罩)#

Netmask 是定義網域邊界最重要的參數。它以 32 位元表示,Net ID 位置為 1,Host ID 位置為 0。與 IP 位址結合即可確定網域範圍。

CIDR 記號法(如 /24)直接表示網域位元數,簡潔且常用。例如 192.168.0.0/24 表示前 24 位定義網域,後 8 位為主機可用。

同一網域中,Host ID 全為 0 代表網段位址,全為 1 代表廣播位址,兩者都不可指派給主機。

特殊 IP 位址#

  • 私有 IP10.0.0.0/8172.16.0.0/12192.168.0.0/16,不能直接連上 Internet,供內部網路使用
  • Loopback127.0.0.0/8,用於系統內部迴圈測試與本機服務

路由的基本觀念#

主機透過路由表決定封包傳輸路徑:

  • 目標 IP 與本機同網域 → 直接透過區網傳送
  • 目標 IP 在不同網域 → 送至 Default Gateway 轉遞

路由表規定了封包的傳送途徑,封包一旦送出就由下一個路由器繼續轉遞。

ARP 與 ICMP#

  • ARP(Address Resolution Protocol):解析 IP 與 MAC 的對應關係,結果快取約 20 分鐘
  • ICMP(Internet Control Message Protocol):用於網路偵測與錯誤回報,ping 指令即使用 ICMP

防火牆不應完全擋掉 ICMP,否則會影響網路偵錯與 MTU 發現等正常功能。

傳輸層:TCP 與 UDP#

TCP — 可靠傳輸#

TCP 提供連線導向的可靠傳輸,透過序號與確認機制確保資料完整。建立連線需要三向交握

  1. 用戶端送 SYN(帶序號)
  2. 伺服器回 SYN + ACK(確認對方序號,送出自己序號)
  3. 用戶端送 ACK(確認伺服器序號)

UDP — 快速傳輸#

UDP 是非連線導向的協定,不保證可靠性,但表頭簡化、效率更高。適用於即時傳輸(如視訊串流)等對速度要求高於可靠性的場景。

埠口(Port)的角色#

埠口是應用程式與網路通訊的介面,16 位元編號範圍 0-65535:

  • 特權埠口(0-1023):供知名服務使用,需 root 權限啟動
  • 使用者埠口(1024 以上):用戶端通常使用的隨機埠口

IP 是門牌,埠口是樓層。透過埠口區分同一主機上的不同服務。由「來源 IP:Port + 目標 IP:Port」組成的 Socket Pair 唯一定義一條連線。

連上 Internet 的必要參數#

一部主機需要四個基本參數才能正常運作:

  1. IP 位址 — 唯一識別碼
  2. Netmask — 定義網域範圍
  3. Default Gateway — 非本網域封包的轉遞者
  4. DNS 伺服器 IP — 主機名稱解析服務

這些參數可手動設定(靜態)或透過 DHCP 自動取得。