目錄
什麼是 OSI 模型?
OSI 模型(Open Systems Interconnection Model) 是一個 7 層的網路架構標準,用來描述網路通訊的運作方式。
為什麼要分層?
- 模組化:每層負責特定功能,易於理解和維護
- 標準化:不同廠商的設備可以互通
- 除錯方便:問題發生時可以逐層檢查
OSI 七層模型
應用層面(軟體)
├─ 第 7 層:應用層 (Application Layer)
├─ 第 6 層:表現層 (Presentation Layer)
├─ 第 5 層:會話層 (Session Layer)
├─ 第 4 層:傳輸層 (Transport Layer)
├─ 第 3 層:網路層 (Network Layer)
├─ 第 2 層:資料連結層 (Data Link Layer)
└─ 第 1 層:實體層 (Physical Layer)
硬體層面
各層詳細說明
L7 - 應用層 (Application Layer)
功能:提供網路服務給使用者應用程式
負責:
- 應用程式之間的通訊
- 定義應用層協定和服務
常見協定:
HTTP/HTTPS:網頁瀏覽FTP:檔案傳輸SMTP:郵件發送DNS:域名解析SSH:遠端登入Telnet:遠端終端
範例:
瀏覽器 → HTTP 請求 → Web 伺服器
設備/技術:
- Web 應用程式防火牆 (WAF)
- L7 負載平衡器
- API Gateway
- DDoS 防護(應用層)
L6 - 表現層 (Presentation Layer)
功能:資料格式轉換、加密、壓縮
負責:
- 資料編碼/解碼
- 加密/解密
- 資料壓縮
常見技術:
SSL/TLS:加密通訊JPEG/PNG:圖片格式ASCII/Unicode:字元編碼MPEG:影片格式
範例:
HTTPS 的加密處理就在這層
L5 - 會話層 (Session Layer)
功能:建立、管理和終止通訊會話
負責:
- 會話建立與終止
- 會話同步
- 對話控制
常見協定:
NetBIOSRPC:遠端程序呼叫SQL:資料庫連線會話
範例:
登入網站時建立的會話(Session)
L4 - 傳輸層 (Transport Layer)
功能:提供端對端的資料傳輸和錯誤控制
負責:
- 資料分段和重組
- 流量控制
- 錯誤檢測和重傳
- 連接埠(Port)管理
常見協定:
TCP:可靠傳輸(三次握手)UDP:快速傳輸(不保證可靠)
資料單位:Segment(段)
範例:
TCP 連接埠:
- HTTP: 80
- HTTPS: 443
- SSH: 22
- MySQL: 3306
設備/技術:
- L4 負載平衡器
- L4 防火牆(基於 Port)
- NAT (Network Address Translation)
TCP vs UDP:
| 特性 | TCP | UDP |
|---|---|---|
| 連接 | 需要建立連接 | 無連接 |
| 可靠性 | 保證送達 | 不保證 |
| 速度 | 較慢 | 較快 |
| 應用 | 網頁、郵件、檔案傳輸 | 串流、遊戲、DNS |
L3 - 網路層 (Network Layer)
功能:路由選擇和 IP 定址
負責:
- IP 位址分配
- 路由選擇(找到最佳路徑)
- 封包轉發
- 跨網路通訊
常見協定:
IPv4/IPv6:網路位址ICMP:錯誤回報(ping)OSPF/BGP:路由協定
資料單位:Packet(封包)
範例:
來源 IP: 192.168.1.10
目的 IP: 8.8.8.8
路由器決定封包該走哪條路徑
設備:
- 路由器 (Router):L3 設備
- L3 交換器:具有路由功能的交換器
- L3 防火牆:基於 IP 位址過濾
關鍵概念:
- 子網路遮罩 (Subnet Mask)
- 預設閘道 (Default Gateway)
- 路由表 (Routing Table)
L2 - 資料連結層 (Data Link Layer)
功能:在相同網路內的節點間傳輸資料
負責:
- MAC 位址定址
- 錯誤偵測(CRC)
- 訊框封裝
- 媒體存取控制
常見協定:
Ethernet:有線網路Wi-Fi (802.11):無線網路PPP:點對點協定ARP:IP 轉 MAC 位址
資料單位:Frame(訊框)
範例:
MAC 位址:00:1A:2B:3C:4D:5E
在同一個區域網路(LAN)內通訊
設備:
- 交換器 (Switch):L2 設備
- 網路橋接器 (Bridge)
- 無線 AP (Access Point)
L1 - 實體層 (Physical Layer)
功能:實體傳輸媒介和訊號傳輸
負責:
- 電氣訊號傳輸
- 實體連接規格
- 傳輸媒介特性
資料單位:Bit(位元)
常見技術:
- 網路線(雙絞線、光纖)
- 無線電波
- 電氣訊號規格
設備:
- 集線器 (Hub):L1 設備
- 中繼器 (Repeater)
- 網路線、光纖
記憶口訣
由上到下(7→1)
英文:All People Seem To Need Data Processing 中文:應表會傳網資實
由下到上(1→7)
英文:Please Do Not Throw Sausage Pizza Away 中文:實資網傳會表應
網路設備對照表
| 設備 | OSI 層級 | 功能 | 使用情境 |
|---|---|---|---|
| Hub(集線器) | L1 | 廣播所有封包給所有端口 | 已淘汰,效能差 |
| Switch(交換器) | L2 | 根據 MAC 位址轉發訊框 | 區域網路內連接設備 |
| Router(路由器) | L3 | 根據 IP 位址路由封包 | 連接不同網路 |
| L3 Switch | L2+L3 | 交換 + 路由功能 | 大型企業內部網路 |
| L4 防火牆 | L4 | 根據 Port 和協定過濾 | 基本網路安全 |
| L7 防火牆 | L7 | 檢查應用層內容 | 進階安全防護(WAF) |
| 負載平衡器 | L4/L7 | 分散流量到多台伺服器 | 高可用性架構 |
主要網路設備說明
Switch(交換器)- L2 設備
功能:在同一個區域網路內連接多個設備
運作方式:
- 使用 MAC 位址來轉發資料
- 建立 MAC 位址表,記錄哪個 MAC 在哪個連接埠
- 只轉發到目的連接埠(不是廣播)
使用情境:
辦公室內連接多台電腦、印表機
電腦 1 ─┐
電腦 2 ─┤
電腦 3 ─┼─ Switch ─ 路由器 ─ 網際網路
印表機 ─┤
電腦 4 ─┘
Router(路由器)- L3 設備
功能:連接不同的網路
運作方式:
- 使用 IP 位址來路由封包
- 查路由表,決定封包的最佳路徑
- 支援 NAT、DHCP、防火牆等功能
使用情境:
家用網路 → Router → ISP → 網際網路
企業分公司 A → Router → 企業總部 → Router → 分公司 B
L3 Switch(第三層交換器)
功能:同時具備交換和路由功能
特點:
- 主要在區域網路內高速交換(L2)
- 附帶路由功能(L3)
- 適合大型企業內部網路
L3 防火牆 vs L7 防火牆
L3/L4 防火牆(傳統防火牆)
檢查內容:
- 來源/目的 IP 位址(L3)
- 來源/目的 Port(L4)
- 通訊協定(TCP/UDP)
優點:
- ✅ 速度快
- ✅ 低延遲
- ✅ 硬體加速
缺點:
- ❌ 無法檢查應用層內容
- ❌ 無法防禦應用層攻擊(如 SQL Injection)
規則範例:
允許:來源 192.168.1.0/24 → 目的 80 port (HTTP)
拒絕:來源 任何 → 目的 22 port (SSH)
使用情境:
- 基本網路隔離
- 阻擋特定 IP 或 Port
- 企業內部網路邊界
L7 防火牆(應用層防火牆 / WAF)
檢查內容:
- HTTP/HTTPS 內容
- URL 路徑
- Cookie、Header
- POST 資料內容
- API 呼叫內容
優點:
- ✅ 可以檢查應用層攻擊
- ✅ 防禦 SQL Injection、XSS
- ✅ DDoS 防護(應用層)
- ✅ API 保護
缺點:
- ❌ 較慢(需要解析內容)
- ❌ 較貴
- ❌ 需要更多運算資源
規則範例:
阻擋:URL 包含 "../../"(路徑穿越攻擊)
阻擋:POST 資料包含 "SELECT * FROM"(SQL Injection)
限制:單一 IP 每秒最多 100 個請求(防 DDoS)
使用情境:
- Web 應用程式保護
- API Gateway
- 電商網站、銀行系統
- 任何面向公網的應用
常見網路架構
家用網路架構
網際網路
|
光纖數據機(Modem)
|
路由器(Router)─ WiFi
|
交換器(Switch)
|
├─ 電腦
├─ NAS
└─ 印表機
說明:
- Modem:將 ISP 的訊號轉換
- Router:提供 NAT、DHCP、防火牆、WiFi
- Switch:擴充有線連接埠
企業網路架構(簡化版)
網際網路
|
L3 防火牆(邊界防護)
|
L3 交換器(核心交換器)
|
├─ L2 交換器(部門 A)─ 多台電腦
├─ L2 交換器(部門 B)─ 多台電腦
└─ 伺服器區
|
L7 防火牆 / WAF
|
Web 伺服器、資料庫
說明:
- L3 防火牆:邊界保護,阻擋外部攻擊
- L3 交換器:連接不同 VLAN
- L2 交換器:連接同部門設備
- L7 防火牆:保護 Web 應用程式
實際應用案例
案例 1:網站架構
使用者
|
CDN(內容分發)
|
L7 負載平衡器(nginx)
| → 檢查 HTTP 內容
| → 分配到後端伺服器
|
├─ Web Server 1
├─ Web Server 2
└─ Web Server 3
為什麼用 L7?
- 可以根據 URL 路徑分配(如
/api/*→ API 伺服器) - 可以檢查 Cookie 做 Session Sticky
- 可以終止 SSL/TLS 連線
案例 2:企業分公司連線
總公司(192.168.1.0/24)
|
Router(L3)
|
VPN 隧道(加密)
|
Router(L3)
|
分公司(192.168.2.0/24)
為什麼需要 Router?
- 連接不同網路(總公司 vs 分公司)
- 提供 VPN 功能
- 路由不同子網路的封包
案例 3:DDoS 防護
攻擊流量
|
L3/L4 防火牆
| → 過濾異常 IP
| → 限制連線數
|
L7 WAF
| → 檢查應用層攻擊
| → Challenge-Response
|
負載平衡器
|
後端伺服器
多層防護:
- L3/L4:快速過濾大量異常流量
- L7:深度檢查應用層攻擊
實用指令
查看網路設備資訊
# macOS/Linux
# 查看 IP 位址
ip addr show # Linux
ifconfig # macOS
# 查看路由表(L3)
ip route show # Linux
netstat -rn # macOS
# 查看 ARP 表(L2,IP 到 MAC 的對應)
ip neigh show # Linux
arp -a # macOS
# 追蹤路由路徑
traceroute google.com
# 測試連通性(ICMP,L3)
ping 8.8.8.8
# 查看開啟的 Port(L4)
netstat -tuln # Linux
lsof -i -P # macOS
# 查看連線狀態
ss -tuln # Linux(較新)
netstat -an # macOS
防火牆相關(Linux)
# iptables(L3/L4 防火牆)
# 查看規則
sudo iptables -L -n -v
# 阻擋特定 IP
sudo iptables -A INPUT -s 1.2.3.4 -j DROP
# 允許特定 Port
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# firewalld(較新的防火牆管理)
sudo firewall-cmd --list-all
sudo firewall-cmd --add-port=8080/tcp --permanent
關鍵概念總結
網路分層的意義
| 層級 | 關注點 | 範例設備 |
|---|---|---|
| L1-L2 | 實體連接和區域網路 | Hub, Switch |
| L3 | 網路之間的路由 | Router |
| L4 | 端對端連接和 Port | L4 防火牆 |
| L7 | 應用程式內容 | WAF, L7 負載平衡器 |
封包在各層的名稱
| OSI 層級 | 資料單位 | 包含資訊 |
|---|---|---|
| L7-L5 | Data(資料) | 應用程式資料 |
| L4 | Segment(段) | + Port 號碼 |
| L3 | Packet(封包) | + IP 位址 |
| L2 | Frame(訊框) | + MAC 位址 |
| L1 | Bit(位元) | 電氣訊號 |
位址類型對照
| 層級 | 位址類型 | 範例 | 用途 |
|---|---|---|---|
| L2 | MAC 位址 | 00:1A:2B:3C:4D:5E |
同一網路內識別設備 |
| L3 | IP 位址 | 192.168.1.10 |
跨網路識別設備 |
| L4 | Port | 80, 443, 3306 |
識別應用程式服務 |
| L7 | URL/Domain | https://example.com/api |
識別應用程式資源 |
常見問題
Q1: 為什麼需要 MAC 位址和 IP 位址?
A:
- MAC 位址(L2):在區域網路內識別設備,固定不變
- IP 位址(L3):在全球網路中識別設備,可以改變
比喻:
- MAC = 身分證號碼(固定)
- IP = 住址(會搬家)
Q2: L3 Switch 是 Switch 還是 Router?
A: L3 Switch 是增強版的 Switch:
- 主要功能:L2 交換(同網路內)
- 額外功能:L3 路由(跨網路)
- 優勢:交換速度快 + 支援路由
- 用途:企業內部大型網路
Router vs L3 Switch:
- Router:專注路由,功能豐富(VPN、NAT、防火牆)
- L3 Switch:專注交換,附帶路由功能
Q3: L7 防火牆就是 WAF 嗎?
A: 接近但不完全相同:
- WAF(Web Application Firewall):專門保護 Web 應用
- L7 防火牆:更廣泛,包含 WAF 但也支援其他應用層協定
關係:
L7 防火牆
├─ WAF(保護 HTTP/HTTPS)
├─ FTP 應用防火牆
├─ SMTP 應用防火牆
└─ 其他應用層防護
Q4: 為什麼 L7 防火牆比較慢?
A: 因為需要做更多事:
| 層級 | 檢查內容 | 處理複雜度 |
|---|---|---|
| L3 | IP 位址(32 或 128 位元) | 簡單比對 |
| L4 | + Port(16 位元) | 簡單比對 |
| L7 | + 完整 HTTP 請求內容(數 KB) | 需要解析、正則匹配 |
比喻:
- L3/L4:看信封上的地址(快)
- L7:拆開信封看內容(慢但更安全)
Q5: 家用路由器屬於哪一層?
A: 家用路由器是多功能設備:
- L1:實體連接(網路孔)
- L2:內建 Switch(區域網路交換)
- L3:Router 功能(連接網際網路)
- L4-L7:NAT、DHCP、防火牆、WiFi
所以家用路由器 = Router + Switch + Modem + WiFi AP + 防火牆
總結速查表
記住這些關鍵點
| 層級 | 別名 | 關鍵字 | 設備 |
|---|---|---|---|
| L1 | 實體層 | 訊號、線路 | Hub, 網路線 |
| L2 | 資料連結層 | MAC, Switch | Switch |
| L3 | 網路層 | IP, 路由 | Router |
| L4 | 傳輸層 | TCP/UDP, Port | L4 防火牆 |
| L7 | 應用層 | HTTP, 內容 | WAF, L7 防火牆 |
選擇設備的原則
- 同一網路連接設備 → Switch(L2)
- 連接不同網路 → Router(L3)
- 基本防護 → L3/L4 防火牆
- Web 應用保護 → L7 防火牆 / WAF
- 高效能內部網路 → L3 Switch
防火牆選擇
| 需求 | 選擇 |
|---|---|
| 基本 IP/Port 過濾 | L3/L4 防火牆 |
| 保護 Web 應用 | WAF(L7 防火牆) |
| 防止 SQL Injection/XSS | 必須用 L7 |
| 高速處理 | L3/L4(硬體加速) |
| 內容檢查 | L7(深度封包檢測) |
建立日期:2024-11-01 最後更新:2025-11-18