可變長度子網路遮罩與 CIDR#

VLSM(Variable Length Subnet Mask)#

  • 傳統子網路切割對所有子網段使用固定長度的子網路遮罩,導致每個子網段的主機容量相同,容易造成 IP 位址浪費。
  • VLSM 允許在同一網路中對不同子網段使用不同長度的遮罩,依據實際需求分配不同大小的子網段。
  • 典型應用:總公司需要 200 台主機的子網段,分公司僅需 10 台,可分別配置 /24 與 /28。

CIDR(Classless Inter-Domain Routing)#

  • 傳統分類式定址(Classful)以 A/B/C 類固定劃分,彈性不足且造成大量位址浪費。
  • CIDR 打破類別界線,以「前綴長度(prefix length)」標記網路範圍,又稱為無類別定址
CIDR 表示法子網路遮罩可用主機數常見用途
/24255.255.255.0254小型辦公室
/25255.255.255.128126部門子網段
/28255.255.255.24014小型伺服器群
/30255.255.255.2522點對點連線
/16255.255.0.065,534大型企業

CIDR 同時解決了**路由聚合(route aggregation)**的問題。多個連續的子網段可彙整為單一路由條目,大幅縮減路由表規模,提升路由器效率。

VLSM 與 CIDR 的關係#

  • VLSM 著重子網段內部的彈性切割。
  • CIDR 著重對外路由通告時的位址聚合。
  • 兩者互補,共同構成現代 IP 位址規劃的基礎。

MAC 位址#

基本概念#

  • MAC 位址(Media Access Control Address) 是網路介面卡(NIC)出廠時燒錄的實體位址,用於資料連結層的通訊識別。
  • 長度為 48 位元(6 bytes),以十六進位表示,如 00:1A:2B:3C:4D:5E

結構#

欄位位元數說明
OUI(Organizationally Unique Identifier)前 24 位元由 IEEE 分配給製造商
裝置識別碼後 24 位元製造商自行編號
  • MAC 位址理論上全球唯一,但僅在同一網路區段(LAN) 內有意義。
  • 跨網段通訊時,每經過一台路由器,訊框的來源與目的 MAC 位址都會被改寫為該區段內的位址。

MAC 位址運作在 OSI 第二層(資料連結層),而 IP 位址運作在第三層(網路層)。兩者在封包傳遞中各司其職:IP 負責端到端定址,MAC 負責逐跳(hop-by-hop)轉送。

ARP(Address Resolution Protocol)#

為什麼需要 ARP#

  • 傳送端知道目的 IP 位址,但在乙太網路中實際傳送訊框需要目的 MAC 位址。
  • ARP 負責將 IP 位址解析為對應的 MAC 位址。

ARP 解析流程#

sequenceDiagram
    participant A as 主機 A
    participant Net as 區域網路(廣播)
    participant B as 主機 B

    A->>A: 查詢 ARP 快取表
    alt 快取命中
        A->>A: 直接使用已知 MAC 位址
    else 快取未命中
        A->>Net: ARP Request(廣播)<br/>「誰擁有 192.168.1.10?」
        Net->>B: 廣播送達目標主機
        B->>A: ARP Reply(單播)<br/>「我的 MAC 是 00:1A:2B:3C:4D:5E」
        A->>A: 更新 ARP 快取表
    end

ARP 快取表#

  • 每台主機維護一張 ARP 快取表(ARP Cache),暫存已解析的 IP-MAC 對應。
  • 快取條目有存活時間(TTL),過期後自動刪除,需重新查詢。
  • 可使用 arp -a 指令查看當前快取內容。

ARP Spoofing(ARP 欺騙) 是常見的區域網路攻擊手法。攻擊者偽造 ARP Reply,將目標的 MAC 位址指向自己,藉此攔截或竄改流量。防禦措施包括 Dynamic ARP Inspection(DAI)與靜態 ARP 綁定。

網域名稱(Domain Name)#

DNS 的角色#

  • 人類難以記憶數字化的 IP 位址,DNS(Domain Name System) 將易讀的網域名稱(如 www.example.com)對應至 IP 位址。
  • DNS 採用階層式分散架構,由全球多台伺服器協作完成解析。

網域名稱的階層結構#

www.example.com.
 |     |     |  |
 |     |     | 根域(.)
 |     |   頂級域(TLD): .com
 |   二級域: example
 主機名稱: www
伺服器類型說明
根域名伺服器(Root DNS)全球共 13 組(A 至 M),是解析的起點
頂級域(TLD)分為通用型(.com、.org、.net)與國碼型(.tw、.jp)
權威名稱伺服器(Authoritative DNS)存放特定域名的最終解析記錄

DNS 查詢流程#

sequenceDiagram
    participant C as 客戶端
    participant L as 本地 DNS 伺服器
    participant R as 根域名伺服器
    participant T as TLD 伺服器
    participant A as 權威伺服器

    C->>L: 查詢 www.example.com
    L->>L: 檢查快取
    alt 快取命中
        L->>C: 回傳 IP 位址
    else 快取未命中
        L->>R: 查詢根域名伺服器
        R->>L: 回覆 .com TLD 伺服器位址
        L->>T: 查詢 TLD 伺服器
        T->>L: 回覆 example.com 權威伺服器位址
        L->>A: 查詢權威伺服器
        A->>L: 回覆 www.example.com 的 IP
        L->>L: 寫入快取
        L->>C: 回傳 IP 位址
    end

DNS 快取存在於多個層級:瀏覽器、作業系統、本地 DNS 伺服器。排查域名解析問題時,可使用 nslookupdig 指令,並考慮清除各層快取。

路由(Routing)#

路由的基本概念#

  • 路由是指在互聯網路中,將封包從來源端轉送至目的端的過程。
  • 路由器根據封包的目的 IP 位址,查詢自身的路由表(Routing Table) 決定下一跳(next hop)。

路由表的組成#

欄位說明
目的網路(Destination)封包要到達的網段
子網路遮罩(Netmask)定義目的網路的範圍
下一跳(Next Hop / Gateway)將封包轉送至哪一台路由器
介面(Interface)從哪個網路介面送出
度量值(Metric)該路徑的成本或優先順序

路由決策流程#

flowchart TD
    A[收到封包] --> B[提取目的 IP 位址]
    B --> C[比對路由表條目]
    C --> D{是否有匹配條目?}
    D -->|是| E[選擇最長前綴匹配]
    D -->|否| F{是否有預設路由?}
    F -->|是| G[轉送至預設閘道]
    F -->|否| H[丟棄封包並回傳 ICMP 錯誤]
    E --> I[從指定介面轉送]
    G --> I

最長前綴匹配(Longest Prefix Match) 是路由決策的核心原則。當多筆路由條目皆匹配時,路由器選擇前綴最長(最精確)的條目進行轉送。

預設閘道(Default Gateway)#

概念#

  • 預設閘道是主機路由表中的最後手段:當封包目的地不在任何已知子網段時,一律轉送至預設閘道。
  • 通常設定為該子網段的路由器介面位址,如 192.168.1.1

運作方式#

  1. 主機判斷目的 IP 是否在同一子網段(以子網路遮罩計算)。
  2. 同一子網段:直接透過 ARP 取得目的 MAC 位址,以訊框送出。
  3. 不同子網段:將封包送至預設閘道,由路由器負責後續轉送。

若預設閘道設定錯誤或閘道設備故障,該主機將無法與外部網路通訊,但同一子網段內的通訊不受影響。

靜態路由與動態路由#

比較#

項目靜態路由(Static Routing)動態路由(Dynamic Routing)
設定方式管理員手動輸入路由器自動學習並交換
適用規模小型網路、路徑固定中大型網路、拓撲多變
資源消耗低(不需執行路由協定)較高(需處理路由協定封包)
容錯能力低(路徑中斷須手動修改)高(自動偵測並重新收斂)
安全性較高(不廣播路由資訊)需額外防護(如路由認證)
維護成本路由數少時低,多時極高初期設定後維護成本較低

實務上常混合使用兩者:核心網路採用動態路由以確保容錯與彈性,末端或對外連線採用靜態路由(如預設路由指向 ISP)以簡化管理。

路由協定(Routing Protocol)#

分類#

flowchart LR
    RP[路由協定] --> IGP[內部閘道協定 IGP]
    RP --> EGP[外部閘道協定 EGP]
    IGP --> DV[距離向量型<br/>Distance Vector]
    IGP --> LS[鏈路狀態型<br/>Link State]
    DV --> RIP[RIP]
    LS --> OSPF[OSPF]
    EGP --> BGP[BGP]

主要路由協定比較#

協定類型演算法度量標準特性
RIPIGP / 距離向量Bellman-Ford跳躍數(最多 15)簡單但收斂慢,適合小型網路
OSPFIGP / 鏈路狀態Dijkstra(SPF)成本(可依頻寬計算)收斂快,支援大型網路與區域劃分
BGPEGP / 路徑向量路徑屬性比較AS 路徑、策略網際網路核心協定,ISP 間路由交換

距離向量 vs. 鏈路狀態#

比較項目距離向量(Distance Vector)鏈路狀態(Link State)
路由資訊來源僅從鄰居取得路由表摘要全網拓撲資訊(LSA)
收斂速度
頻寬消耗定期全量交換僅在拓撲變化時增量更新
運算負擔較高(需執行 SPF 演算法)
迴圈風險較高(需 split horizon 等機制)

BGP 是維繫全球網際網路路由的關鍵協定。每個 ISP 或大型組織構成一個自治系統(AS, Autonomous System),BGP 負責在 AS 之間交換路由可達性資訊。

DHCP 伺服器#

DHCP 的角色#

  • DHCP(Dynamic Host Configuration Protocol) 自動分配 IP 位址及相關網路設定給客戶端,免除手動配置的負擔。
  • 分配內容包括:IP 位址、子網路遮罩、預設閘道、DNS 伺服器位址。

DHCP 四步驟(DORA)#

sequenceDiagram
    participant C as 客戶端
    participant S as DHCP 伺服器

    C->>S: 1. DHCP Discover(廣播)<br/>「有 DHCP 伺服器嗎?」
    S->>C: 2. DHCP Offer(單播/廣播)<br/>「提供 192.168.1.100 給你」
    C->>S: 3. DHCP Request(廣播)<br/>「我要使用 192.168.1.100」
    S->>C: 4. DHCP Ack(單播/廣播)<br/>「確認,租約時間 24 小時」

租約機制#

  • DHCP 分配的 IP 位址具有租約期限(Lease Time)
  • 客戶端在租約到達 50% 時嘗試向原伺服器續約;到達 87.5% 時向任意 DHCP 伺服器續約。
  • 租約到期未續約,IP 位址將被回收至位址池。

網路中若出現未授權的 DHCP 伺服器(Rogue DHCP),可能派發錯誤設定導致用戶端無法上網或流量被劫持。防禦手段包括在交換器上啟用 DHCP Snooping

DHCP Relay 的應用
  • DHCP Discover 為廣播封包,預設無法跨越路由器。
  • 當 DHCP 伺服器與客戶端不在同一子網段時,需在路由器上設定 DHCP Relay Agent(中繼代理),將廣播轉為單播轉送至遠端 DHCP 伺服器。
  • 這使得單一 DHCP 伺服器可服務多個子網段,簡化管理。

NAT 與 NAPT#

NAT(Network Address Translation)#

  • NAT 在路由器或閘道設備上,將內部私有 IP 位址轉換為外部公網 IP 位址,使內部主機能存取網際網路。
  • 解決了 IPv4 位址不足的問題,也隱藏了內部網路結構,提供基本的安全防護。

基本 NAT 的運作#

flowchart LR
    subgraph 內部網路
        A[主機 A<br/>192.168.1.10]
        B[主機 B<br/>192.168.1.20]
    end
    subgraph NAT 設備
        R[路由器<br/>轉換表]
    end
    subgraph 外部網路
        S[Web 伺服器<br/>203.0.113.50]
    end
    A -->|私有 IP| R
    B -->|私有 IP| R
    R -->|公網 IP<br/>1.2.3.4| S

NAT vs. NAPT#

比較項目NAT(基本 NAT)NAPT(Network Address Port Translation)
別稱Static NAT / Basic NATPAT、IP Masquerade、Port NAT
轉換內容僅轉換 IP 位址同時轉換 IP 位址與連接埠號
公網 IP 用量一個私有 IP 對應一個公網 IP多個私有 IP 共用一個公網 IP
同時連線數受公網 IP 數量限制可達數萬(受連接埠數量限制,理論上 65,535)
典型場景伺服器需固定公網 IP家庭、企業內部多台主機共用上網

NAPT 轉換流程#

sequenceDiagram
    participant A as 主機 A<br/>192.168.1.10:3000
    participant R as NAT 路由器<br/>公網 1.2.3.4
    participant S as 伺服器<br/>203.0.113.50:80

    A->>R: 來源 192.168.1.10:3000<br/>目的 203.0.113.50:80
    R->>R: 建立轉換條目<br/>192.168.1.10:3000 ↔ 1.2.3.4:50001
    R->>S: 來源 1.2.3.4:50001<br/>目的 203.0.113.50:80
    S->>R: 來源 203.0.113.50:80<br/>目的 1.2.3.4:50001
    R->>R: 查詢轉換表
    R->>A: 來源 203.0.113.50:80<br/>目的 192.168.1.10:3000

現今家用路由器與企業防火牆幾乎都使用 NAPT 而非基本 NAT。NAPT 透過連接埠複用,讓數百台內部主機僅需一個公網 IP 即可上網。

NAT/NAPT 會破壞端對端連線的透通性,導致部分協定(如 FTP 主動模式、SIP)運作異常。解決方式包括 ALG(Application Layer Gateway) 或使用 UPnP/NAT-PMP 進行動態連接埠映射。

個人反思與延伸(2026-02-23)
  • 本章從 VLSM/CIDR 的位址規劃,到 MAC/ARP 的逐跳解析,再到 DNS/路由/DHCP/NAT 的端到端通訊,完整描繪了封包從應用層產生到抵達目的地的全程機制。
  • 實務建議:
    1. 規劃 IP 位址時,預先以 VLSM 表格列出各子網段需求,避免日後擴充困難。
    2. ARP 與 DHCP 相關的安全威脅(ARP Spoofing、Rogue DHCP)應在交換器層級部署防禦措施。
    3. NAT 環境下排查連線問題時,優先檢查轉換表(show ip nat translations)與連接埠映射規則。
  • 下一步:第四章將深入探討網路設備(交換器、路由器)的運作原理與虛擬化技術。