National Central University
Uedu Main Site
Explore Uedu
Student Console
Register as Member/Login
Research Informed Consent Center
Survey Center
Educational Big Data Challenge
Claim or create a course
Try an AI Scenario Task
Support & Messages
Uptime Data

UeduGPTs

--

Jupyters

3

Local AI

--

Uedu Code

--

中央大學 AQI 80 24°C PM2.5 21
AI Reply Desktop Notifications

Show a desktop notification when the AI TA finishes replying

Chat Message Notifications

Notify me when classmates post messages in the forum

Sound notification

Play an alert sound whenever there is a new notification

Unit 07

子網路切割與 VLSM

依需求切出大小不同的網段,以及路由彙總
Interaction 25 minute(s)

Learning Objectives

  • 把一個網段等分切成 2、4、8… 個子網路,算出每個子網路的範圍
  • 依各單位的主機數,用 VLSM 由大到小分配大小不同的子網路
  • 說明子網路必須從自己大小的整數倍開始,而且彼此不能重疊
  • 把幾個連續的網段彙總成一條路由,並判斷彙總是否過寬

為什麼要把網段切小

假設學校分給系館一段 192.168.10.0/24,共 256 個位址。全部放在同一個網段裡當然可以,但有幾個問題:

  • 廣播會傳到每一台:ARP、DHCP 這些廣播在同一個網段內人人都收到,網段越大越吵。
  • 難以分開管理:系辦、實驗室、教室的設備混在一起,防火牆規則(第 23 課)沒辦法依單位設定。
  • 出問題時範圍大:一台設備設錯或中毒,影響整個網段。

所以通常會把一段位址再切成幾個子網路(subnet),每個單位一個,中間用路由器(或第 4 課的 VLAN 加路由)隔開。 切割的方法是從主機部分借位元給網路部分:前綴越長,子網路越多、每個越小。

等分切割:借幾個位元

從主機部分借 k 個位元,就切成 2^k 個大小相同的子網路:

借幾個位元 子網路數 新的前綴 每個子網路的位址數 可用主機數
1 2 /25 128 126
2 4 /26 64 62
3 8 /27 32 30
4 16 /28 16 14

192.168.10.0/24 切成 4 個 /26:

子網路 可用的主機位址 廣播位址
192.168.10.0/26 .1~.62 .63
192.168.10.64/26 .65~.126 .127
192.168.10.128/26 .129~.190 .191
192.168.10.192/26 .193~.254 .255

每個子網路的網路位址都是 64 的倍數,這是位元運算自然的結果:借來的 2 個位元依序是 00、01、10、11。

等分切割簡單,但每個單位拿到的大小都一樣。系辦要 50 台,一個 /26(62)剛好;兩台路由器之間的連線只要 2 個位址,也得用掉一整個 /26,浪費 60 個。

VLSM:依需求切出大小不同的子網路

VLSM(Variable Length Subnet Mask,可變長度子網路遮罩)讓同一段位址裡的子網路用不同的前綴長度。步驟:

  1. 列出每個單位需要的主機數,由大到小排序。
  2. 每個單位找「容得下的最長前綴」:可用主機數 2^n − 2 ≥ 需求。
  3. 從位址空間的開頭依序分配,每一塊都要從自己大小的整數倍開始。

以系館為例:

單位 需要 前綴 可用 分配到
系辦 50 台 /26 62 192.168.10.0/26
實驗室 25 台 /27 30 192.168.10.64/27
教室 12 台 /28 14 192.168.10.96/28
路由器之間的點對點連線 2 台 /30 2 192.168.10.112/30

一共用掉 64+32+16+4 = 116 個位址,還剩 140 個可以留給以後。

為什麼要由大到小:大的區塊對齊要求比較嚴(/26 只能從 0、64、128、192 開始)。如果先放小的,例如先把 /30 放在 .0, /26 就不能從 .4 開始,只能跳到 .64,中間 .4~.63 就被切碎了。先放大的,後面小的區塊總能剛好接上,不留空隙。

不能重疊:兩個子網路如果有共同的位址,路由器收到給那個位址的封包時,會不知道該送去哪一個子網路。

互動練習:切割系館的位址

系館分到 192.168.10.0/24。先看看等分切割,再依需求一個一個分配。下方的長條是整段位址空間,分配出去的網段會畫上顏色。

小測驗:子網路切割

1.

172.16.0.0/16 要切成至少 50 個大小相同的子網路,最少要借幾個位元?

2.

192.168.10.0/24 等分成 8 個子網路,第 3 個子網路是?

3.

下列哪一個不是合法的子網路寫法(網路位址不是網段的起點)?

4.

VLSM 分配時為什麼要由大到小?

第 1 次作答

路由彙總:把連續的網段合成一條

切割是把大的網段分成小的;路由彙總(route summarization,也叫 supernetting)反過來,把幾個連續的網段寫成一條較短前綴的路由。

研究大樓的路由器 R2 後面有四個網段:10.1.0.0/24、10.1.1.0/24、10.1.2.0/24、10.1.3.0/24。把第 3 段寫成二進位:

10.1.0.0   → 00001010.00000001.000000|00.00000000
10.1.1.0   → 00001010.00000001.000000|01.00000000
10.1.2.0   → 00001010.00000001.000000|10.00000000
10.1.3.0   → 00001010.00000001.000000|11.00000000

直線左邊的 22 個位元完全相同,所以四條路由可以合成 10.1.0.0/22。校園其他路由器只要記這一條,路由表比較小, R2 後面某個網段的線路有變化時,其他路由器也不必跟著更新。

彙總要注意兩件事:

  • 彙總的範圍要剛好:寫成 10.1.0.0/16 也涵蓋這四個網段,但同時涵蓋了 10.1.4.0~10.1.255.255,那些位址如果在別的地方,封包會被送錯。
  • 網段不連續時會多包:10.2.1.0/24 與 10.2.2.0/24 的共同前綴只有 22 位元,彙總成 10.2.0.0/22 會連 10.2.0.0/24 和 10.2.3.0/24 一起包進來。 如果那兩段不在這個方向,就不要彙總,或另外加更精確的路由(第 9 課的最長前綴比對會選精確的那一條)。

規劃位址時把同一棟樓、同一個區域的網段排在連續的範圍,就是為了之後方便彙總。

互動練習:找出彙總路由

表格列出每個網段的 32 個位元,藍色是所有網段都相同的開頭位元。在下方輸入彙總路由按「檢查」。

互動練習:用一條彙總路由通往四個網段

R2 後面有研究大樓的四個網段,每個網段各有一台伺服器。R2 已經設好往回走的預設路由;你只需要在 R1 加路由。 設備指令是本課程自訂的教學用指令,各廠牌實際的指令以手冊為準。

小測驗:路由彙總

1.

192.168.16.0/24 到 192.168.23.0/24 共 8 個網段,最精確的彙總路由是?

2.

10.5.4.0/24 與 10.5.5.0/24 彙總成哪一條,不會多包任何位址?

3.

10.3.1.0/24 與 10.3.2.0/24 彙總成 10.3.0.0/22,多包進了哪些位址?

第 1 次作答

重點整理

  • 等分切割:從主機部分借 k 個位元,得到 2^k 個子網路,前綴加 k,每個子網路的大小減半 k 次。
  • VLSM:依需求用不同的前綴長度;每個單位用容得下的最長前綴,由大到小從位址空間開頭依序分配。
  • 子網路必須從自己大小的整數倍開始,而且不能重疊。
  • 路由彙總:找出幾個連續網段共同的開頭位元,合成一條較短前綴的路由;範圍要剛好,太寬會把封包送錯,甚至形成迴圈。

到這裡你已經會規劃位址了。下一課回到封包本身:同一個網段裡,電腦怎麼用 ARP 從 IP 位址問到對方的 MAC 位址,跨網段時為什麼要把封包交給預設閘道。

這一課完成了!
Next lesson:ARP 與預設閘道
你目前沒有登入,學習進度只存在這個瀏覽器。 Login 後,進度會跟著帳號,換電腦也看得到。