1. 故事
按「下一步」一步一步看。每一步都有一位角色出場,解釋自己正在做什麼。
序幕:溫習一下
第 1 步/共 10 步
/24 是什麼意思?
我在家的位址是 192.168.1.10/24。/24 表示前 24 個位元,即前三組數字,是網絡部分;最後一組是裝置部分,可以有 256 個位址。
動畫文字版(全部步驟)
- 序幕:溫習一下
- /24 是什麼意思? 阿麥:我在家的位址是
192.168.1.10/24。/24表示前 24 個位元,即前三組數字,是網絡部分;最後一組是裝置部分,可以有 256 個位址。- IPv4 共 32 個位元
- /24 = Subnet Mask(子網絡遮罩)
255.255.255.0 - 256 個位址中,
.0是網段位址、.255是 Broadcast 位址,可用 254 個
- 第一幕:一個蛋糕,三位客人
- 工作室要三個網絡 路路:樓上的工作室有自己的 Router,需要三個獨立的網絡:辦公室、閉路電視和伺服器。可是我只預留了一組位址給工作室:
192.168.40.0/24。- 辦公室:約 30 部裝置
- 閉路電視:約 10 部鏡頭
- 伺服器:約 5 部
- 每區一整組?太浪費了 路路:如果每區都用一整組
/24,閉路電視只用 10 個位址,其餘 240 多個就白白浪費。我們要把這一組位址切開,這叫 Subnetting(子網絡劃分)。 - 第二幕:路路切蛋糕
- 向裝置部分借位元 路路:我把 Subnet Mask 由
/24變長到/26:向裝置部分借 2 個位元。2 個位元有 4 種組合(00、01、10、11),所以可以切成 4 件,每件 64 個位址。- /24 =
…11111111.00000000 - /26 =
…11111111.11000000=255.255.255.192 /26這種寫法叫 CIDR(無類別域間路由)表示法
- /24 =
- 第一件:辦公室 路路:第一件是
192.168.40.0/26,給辦公室。位址由.0到.63:.0是網段位址,.63是 Broadcast 位址,中間.1至.62共 62 個可以用。- Default Gateway 習慣用第一個可用位址:
192.168.40.1
- Default Gateway 習慣用第一個可用位址:
- 第二件、第三件 路路:第二件
192.168.40.64/26給閉路電視(可用.65至.126);第三件192.168.40.128/26給伺服器(可用.129至.190)。第四件.192/26先預留。- 公式:裝置部分 6 個位元 → 2⁶ − 2 = 62 個可用位址
- 每件 64 個,所以 Subnet 由 0、64、128、192 開始
- 第三幕:誰是鄰居?
- 前三組一樣,就是鄰居? 阿麥:辦公室電腦
192.168.40.10要找錄影機192.168.40.70。前三組數字都是192.168.40,所以在同一個網絡,可以直接送……對嗎? - 不對!要看 /26 路路:用
/26時,第四組的首 2 個位元也是網絡部分。10 落在 0 至 63,屬於辦公室;70 落在 64 至 127,屬於閉路電視。兩者是不同的網絡,要經我轉送!- 10 =
00001010→ 首 2 位元00→.0/26 - 70 =
01000110→ 首 2 位元01→.64/26
- 10 =
- 同一件蛋糕,才直接送 阿麥:明白了!
192.168.40.10和192.168.40.20都在.0/26這一件,才是鄰居,可以直接送。判斷的方法,要看前綴長度,不是只看前三組數字。 - 總結:切得剛剛好 路路:Subnetting 把一組位址切成大小合適的幾件,每件都是獨立的網絡,由 Router 連接。可是家中的路路怎樣知道
192.168.40.x要交給工作室 Router?下一個故事,看看我的地圖!- 可用位址 = 2ⁿ − 2(n = 裝置部分的位元數)
- /26 =
255.255.255.192,每件 64 個位址 - 不同 Subnet 之間要經 Router
2. 問題在哪裡
樓上的工作室有自己的 Router(路由器),需要三個獨立的網絡:
| 網絡 | 大約裝置數目 |
|---|---|
| 辦公室 | 30 |
| 閉路電視 | 10 |
| 伺服器 | 5 |
可是路路只預留了一組位址給工作室:192.168.40.0/24。
如果每區都用一整組 /24(254 個可用位址),閉路電視只用 10 個,其餘 240 多個就白白浪費。而且工作室只有一組,根本不夠分三區。
3. 網絡怎樣解決
一組位址好像一個蛋糕。與其每位客人都給一整個蛋糕,不如把它切成幾件,每件大小剛好。
把一組 IP Address(網絡位址)切成幾個較細小的網絡,叫 Subnetting(子網絡劃分)。每一件就是一個 Subnet(子網絡)。
方法是把 Subnet Mask(子網絡遮罩)變長:向裝置部分「借」幾個位元,撥給網絡部分。借 2 個位元,就可以切成 4 件。每件都是獨立的網絡,彼此之間要經 Router 轉送。
4. 看深一點
先溫習:/24 是什麼意思?
IPv4 位址共 32 個位元,分成四組,每組 8 個位元。/24 的「24」叫 Prefix Length(前綴長度),表示前 24 個位元是網絡部分,餘下 8 個位元是裝置部分。
- 8 個位元有 2⁸ = 256 個位址(
.0至.255)。 .0是 Network Address(網段位址),代表整個網絡本身。.255是 Broadcast Address(廣播位址),寄給網絡內所有裝置。- 所以可以分給裝置的有 256 − 2 = 254 個。
借 2 個位元:/24 變 /26
/24 11111111.11111111.11111111.00000000 = 255.255.255.0
/26 11111111.11111111.11111111.11000000 = 255.255.255.192
最後一組的首 2 個位元變成網絡部分。2 個位元有 4 種組合(00、01、10、11),所以切成 4 件。裝置部分剩 6 個位元:每件 2⁶ = 64 個位址,可用 64 − 2 = 62 個。
/26 這種「斜線加數字」的寫法,叫 CIDR(無類別域間路由)表示法。它讓前綴長度可以是 0 至 32 之間任何一個數字,不一定剛好落在「.」上。
四件蛋糕
| Subnet | 用途 | 網段位址 | 可用範圍 | Broadcast 位址 |
|---|---|---|---|---|
192.168.40.0/26 |
辦公室 | .0 |
.1 至 .62 |
.63 |
192.168.40.64/26 |
閉路電視 | .64 |
.65 至 .126 |
.127 |
192.168.40.128/26 |
伺服器 | .128 |
.129 至 .190 |
.191 |
192.168.40.192/26 |
預留 | .192 |
.193 至 .254 |
.255 |
每件 64 個位址,所以 Subnet 由 0、64、128、192 開始。Default Gateway(預設閘道)習慣用每件第一個可用位址,例如辦公室是 192.168.40.1。
誰是鄰居?要看前綴,不是看前三組
用 /26 時,第四組的首 2 個位元也屬於網絡部分:
10 = 00001010 → 首 2 位元 00 → 192.168.40.0/26 (辦公室)
70 = 01000110 → 首 2 位元 01 → 192.168.40.64/26 (閉路電視)
130 = 10000010 → 首 2 位元 10 → 192.168.40.128/26 (伺服器)
所以 192.168.40.10 和 192.168.40.70 雖然前三組一樣,卻是不同的網絡,要經工作室 Router 轉送。192.168.40.10 和 192.168.40.20 都在 .0/26,才可以直接送。
不想換算二進制?看第四組數字落在哪一段就可以:0–63、64–127、128–191、192–255。
常見前綴一覽
| 前綴 | Subnet Mask | 每件位址數目 | 可用位址(2ⁿ − 2) |
|---|---|---|---|
/24 |
255.255.255.0 |
256 | 254 |
/25 |
255.255.255.128 |
128 | 126 |
/26 |
255.255.255.192 |
64 | 62 |
/27 |
255.255.255.224 |
32 | 30 |
/28 |
255.255.255.240 |
16 | 14 |
/29 |
255.255.255.248 |
8 | 6 |
/30 |
255.255.255.252 |
4 | 2 |
n 是裝置部分的位元數,即 32 減去前綴長度。前綴每長 1,每件的大小就減半。
辦公室約 30 部裝置,再加上 Default Gateway 一共要 31 個位址;/27 只有 30 個可用位址,不夠用,所以這裡選 /26(62 個),還留有餘地。
5. 動手試試
任務:找出你家的 Subnet Mask
- 在手機的 Wi-Fi(無線網絡)設定中,點選已連接的網絡,找出「子網絡遮罩」或「Subnet Mask」一欄。
- 大部分家庭會看到
255.255.255.0,即/24。 - 用上面的表,算一算你家的網絡最多可以有多少部裝置。
小互動
這個位址在哪個 Subnet?
以下每個位址,屬於工作室哪一件蛋糕?
-
1
192.168.40.10 -
2
192.168.40.70 -
3
192.168.40.130 -
4
192.168.40.62 -
5
192.168.40.65 -
6
192.168.40.200
全部分對了!/26 每件 64 個位址,Subnet 由 0、64、128、192 開始;看第四組數字落在哪一段就知道。
6. 比喻的極限
- 蛋糕切了就不能還原,Subnet 可以重新規劃。 只要更改設定,就可以把幾件合併或切得更細;不過正在使用的裝置都要跟著改位址。
- 每件蛋糕不一定一樣大。 這個故事每件都是
/26;真實網絡可以按需要切出大小不同的 Subnet,例如一件/26、兩件/27,但各件不可以重疊。 - 每件都有兩個位址不能「吃」。 網段位址和 Broadcast 位址不能分給裝置,所以切得越細,浪費的比例越高。(特別的
/31和/32另有規則,這裡不詳談。) - 切蛋糕不會令網絡變快。 Subnetting 主要是為了分配位址、把 Broadcast 限制在較小範圍,以及方便設定保安規則。
- 位址夠多也可以切。 家中的 Private IP(私人位址)幾乎用不完,但公司仍然會切 Subnet,好讓不同部門分開管理。
7. 小測驗
8. 重點筆記
- Subnetting(子網絡劃分)把一組位址切成幾個較細小的網絡,每件都是獨立的 Subnet,彼此之間要經 Router 轉送。
- 把前綴變長,就是向裝置部分借位元:借 m 個位元,可以切成 2ᵐ 件。
- 每件的可用位址 = 2ⁿ − 2(n = 裝置部分的位元數);減去的是網段位址和 Broadcast 位址。
/26=255.255.255.192,每件 64 個位址,由 0、64、128、192 開始。- 判斷兩部裝置是否鄰居,要看前綴長度,不是只看前三組數字。
延伸閱讀
工作室的三個網絡切好了,都接在工作室 Router 身上。可是家中的路路怎樣知道 192.168.40.x 要交給工作室 Router?下一個故事,打開路路的地圖:Routing Table(路由表)與 Static Route(靜態路由)。