TCP/IP Subnet 的運用


若 公 司 不 上 Internet , 那 一 定 不 會 煩 惱 IP Address 的 問 題 , 因 為 可 以 任 意 使 用 所 有 的 IP Address , 不 管 是 A Class 或 是 B Class , 這 個 時 候 不 會 想 到 要 用 SubNet , 但 若 是 上 Internet 那 IP Address 便 彌 足 珍 貴 了 , 目 前 全 球 一 陣 Internet 熱 , IP Address 已 經 愈 來 愈 少 了 , 而 所 申 請 的 IP Address 目 前 也 趨 保 守 , 而 且 只 有 經 申 請 的 IP Address 能 在 Internet 使 用 , 但 對 某 些 公 司 只 能 申 請 到 一 個 C CLass 的 IP Address , 但 又 有 多 個 點 需 要 使 用 , 那 這 時 便 需 要 使 用 到 Subnet , 這 篇 短 文 說 明 Subnet 的 原 理 及 如 何 規 劃 。


Subnet Mask 的介紹

設 定 任 何 網 路 上 的 任 何 設 備 不 管 是 主 機 、 PC 、 Router 等 皆 需 要 設 定 IP Address , 而 跟 隨 著 IP Address 的 是 所 謂 的 Net Mask , 這 個 Net Mask 主 要 的 目 的 是 由 IP Address 中 也 能 獲 得 Network Number , 也 就 是 說 IP Address 和 Net Mask 作 AND 而 得 到 Network Number , 如 下 所 示


IP Address192. 10. 10. 611000000.00001010.00001010.00000110
Net Mask255.255.255. 011111111.11111111.11111111.00000000
AND---------------------------------------------------------------
Network Number192.10.10.011000000.00001010.00001010.00000000


Net Mask 有 所 謂 的 預 設 值 , 如 下 所 示


ClassIP Address 範 圍Net Mask
A1.0.0.0-126.255.255.255255.0.0.0
B128.0.0.0-191.255.255.255255.255.0.0
C192.0.0.0-223.255.255.255255.255.255.0


在 預 設 的 Net Mask 都 只 有 255 的 值 , 在 談 到 Subnet Mask 時 這 個 值 便 不 一 定 是 255 了 。
在 完 整 一 組 C Class 中 如 203.67.10.0-203.67.10.255 NetMask 255.255.255.0 , 203.67.10.0 稱 之 Network Number (將 IP Address 和 Netmask 作 AND) , 而 203.67.10.255 是 Broadcast 的 IP Address , 所 以 這 兩 者 皆 不 能 使 用 ,實 際 只 能 使 用 203.67.10.1 -- 203.67.10.254 等 254 個 IP Address , 這 是 以 255.255.255.0 作 Net Mask 的 結 果 , 而 所 謂 Subnet Msk 尚 可 將 整 組 C Class 分 成 數 組 Network Number , 這 要 在 NEt Mask 作 手 腳 , 若 是 要 將 整 組 C CLass 分 成 2 個 Network Number 那 Net Mask 設 定 為 255.255.255.192 , 若 是 要 將 整 組 C CLass 分 成 8 組 Network Number 則 Net Mask 要 為 255.255.255.224 , 這 是 怎 麼 來 的 , 由 以 上 知 道 Network Number 是 由 IP Address 和 Net Mask 作 AND 而 來 的 , 而 且 將 Net Mask 以 二 進 位 表 示 法 知 道 是 1 的 會 保 留 , 而 為 0 的 去 掉


192.10.10.193--11000000.00001010.00001010.10000001
255.255.255.0--11111111.11111111.11111111.00000000
--------------------------------------------------------------
192.10.10.0--11000000.00001010.00001010.00000000


以 上 是 以 255.255.255.0 為 Net Mask 的 結 果 , Network Number 是 192.10.10.0 , 若 是 使 用 255.255.255.224 作 Net Mask 結 果 便 有 所 不 同


192.10.10.193--11000000.00001010.00001010.10000000
255.255.255.224--11111111.11111111.11111111.11100000
--------------------------------------------------------------
192.10.10.192--11000000.00001010.00001010.10000000


此 時 Network Number 變 成 了 192.10.10.192 , 這 便 是 Subnet 。
那 要 如 何 決 定 所 使 用 的 Net Mask , 255.255.255.224 以 二 進 位 表 示 法 為 11111111.11111111.11111111.11100000 , 變 化 是 在 最 後 一 組 , 11100000 便 是 224 , 以 三 個 Bit 可 表 示 2 的 3 次 方 便 是 8 個 Network Number


Net Mask二進位表示法可分幾個 Network
255.255.255.011111111.11111111.11111111.000000001
255.255.255.12811111111.11111111.11111111.100000002
255.255.255.19211111111.11111111.11111111.110000004
255.255.255.22411111111.11111111.11111111.111000008
255.255.255.24011111111.11111111.11111111.1111000016
255.255.255.24811111111.11111111.11111111.1111100032
255.255.255.25211111111.11111111.11111111.1111110064


以 下 使 用 255.255.255.224 將 C Class 203.67.10.0 分 成 8 組 Network Number , 各 個 Network Number 及 其 Broadcast IP Address 及 可 使 用 之 IP Address


序號Network NumberBroadcast可使用之 IP Address
1203.67.10.0203.67.10.31203.67.10.1-203.67.10.30
2203.67.10.32203.67.10.63203.67.10.33-203.67.10.62
3203.67.10.64203.67.10.95203.67.10.65-203.67.10.94
4203.67.10.96203.67.10.127203.67.10.97-203.67.10.126
5203.67.10.128203.67.10.159203.67.10.129-203.67.10.158
6203.67.10.160203.67.10.191203.67.10.161-203.67.10.190
7203.67.10.192203.67.10.223203.67.10.193-203.67.10.222
8203.67.10.224203.67.10.255203.67.10.225-203.67.10.254


可 驗 證 所 使 用 的 IP Address 是 否 如 上 表 所 示


203.67.10.115--11001011.01000011.00001010.01110011
255.255.255.224--11111111.11111111.11111111.11100000
--------------------------------------------------------------
203.67.10.96--11001011.01000011.00001010.01100000


203.67.10.55--11001011.01000011.00001010.00110111
255.255.255.224--11111111.11111111.11111111.11100000
--------------------------------------------------------------
203.67.10.32--11001011.01000011.00001010.00100000


其 他 的 Net Mask 所 分 成 的 Network Number 可 自 行 以 上 述 方 法 自 行 推 演 出 來 。


Subnet 的應用

使 用 Subnet 是 要 解 決 只 有 一 組 C Class 但 需 要 數 個 Network Number 的 問 題 , 並 不 是 解 決 IP Address 不 夠 用 的 問 題 , 因 為 使 用 Subnet 反 而 能 使 用 的 IP Address 會 變 少 , Subnet 通 常 是 使 用 在 總 公 司 在 台 北 , 但 分 公 司 在 台 中 , 兩 者 之 間 使 用 Router 連 線 , 同 時 也 上 Internet , 但 只 申 請 到 一 組 C CLass IP Address , 過 Router 又 需 不 同 的 Network , 所 以 此 時 就 必 須 使 用 到 Subnet , 當 然 二 辦 公 司 間 可 以 Remote Bridge 連 接 , 那 便 沒 有 使 用 Subnet 的 問 題 , 這 點 在 此 不 討 論 , 所 以 在 以 上 情 況 下 的 網 路 連 線 架 構 及 IP Address 的 使 用




圖 一

圖 一 中 Router 1 及 Router 2 所 在 的 Network Number 是 203.67.10.0 , 可 使 用 的 IP Address 是 203.67.10.1 -- 203.67.10.30 , Router 1 的 IP Address 是 203.67.10.30 , Router 2 的 IP Address 為 203.67.10.29 , 所 以 其 他 Hosts 可 用 的 IP Address 為 203.67.10.1 -- 203.67.10.28 , Router 3 所 在 的 Network Number 是 203.67.10.192 , 可 使 用 的 IP Address 是 203.67.10.193 -- 203.67.10.222 , Router 3 使 用 的 IP Address 為 203.67.10.222 , 所 以 其 他 的 Hosts 可 使 用 的 IP Address 為 203.67.10.193 -- 203.67.10.221 , 以 上 的 範 圍 可 參 考 上 表 之 資 料 。
上 圖 是 將 Subnet 運 用 在 WAN 的 環 境 , 若 在 LAN 也 需 要 數 個 Network Number 也 可 使 用




圖 二

圖 二 是 LAN 環 境 中 使 用 Subnet , 其 中 Router 的 介 面 1 所 定 的 IP Address 為 203.67.10.158 , Net Mask 為 255.255.255.224 , 所 以 其 Network Number 為 203.67.10.128 , 所 以 在 這 個 LAN 上 Host 所 能 使 用 的 IP Address 為 203.67.10.129-203.67.10.157 , 連 同 Router 所 定 的 IP Address 總 共 有 30 個 IP Address 可 使 用。 其 他 的 介 面 也 是 一 樣 。
Subnet 可 使 用 於 WAN 又 可 使 用 於 LAN , 當 然 也 可 以 在 LAN 及 WAN 中 同 時 使 用。 又 將 一 個 C Class 以 Net Mask 255.255.255.224 分 成 8 個 Network , 每 個 Subnet 扣 掉 Network Number 及 Broadcast IP Address 則 只 能 使 用 30 個 IP Address , 但 是 在 實 際 運 用 上 可 能 是 一 個 Network 需 要 100 個 IP Address , 而 另 一 個 需 要 60 個 IP Address , 這 可 以 使 用 Router 的 Multi-IP-Address 的 功 能 , 也 就 是 在 Router 的 一 個 介 面 上 可 定 義 多 個 IP Address , 那 在 這 個 網 路 上 便 同 時 有 多 個 Network Number , 以 下 是 一 個 實 際 使 用 Subnet 的 範 例



圖 三

圖 三 的 設 定 方 式 Router 1 介 面 1 的 Network Number 為 203.67.10.1 , Router 1 介 面 2 設 定 了 5 個 IP Address , 所 以 在 這 個 LAN 上 有 5 個 Network Number , 所 能 使 用 的 IP Address 共 有 5 x 30 = 150 個 IP Address , 這 樣 的 設 定 在 使 用 Subnet 時 IP Address 的 運 用 便 更 具 彈 性 , 而 Router 2 也 使 用 一 個 Network Number 203.67.10.192 , 這 是 一 個 實 際 在 使 用 的 案 例 , 運 作 正 常 。


使用 Subnet 時 Routing Table 的設定

在 不 使 用 Subnet 的 情 況 下 在 Router 的 Routing Table 的 Destination Network 皆 是 使 用 如 203.67.10.0 當 Network Number , 但 是 在 使 用 Subnet 時 , Network Number 可 能 是 203.67.10.32 或 203.67.10.128 , 這 要 視 使 用 何 種 Net Mask 而 定 , 這 在 前 面 已 經 說 明 過 了 , 所 以 Router 的 Routing Table 有 些 不 一 樣 , 以 下 列 了 圖 二 及 圖 三 Router 的 Routing Table 的 設 定

圖 二 Router 之 Routing Table
序號Destination NetworkNet MaskGatewayMetric
1203.67.10.128255.255.255.224203.67.10.1580
2203.67.10.0255.255.255.224203.67.10.300
3203.67.10.160255.255.255.224203.67.10.1900
4Default192.10.10.11


圖 三 Router 1 之 Routing Table
序號Destination NetworkNet MaskGatewayMetric
1203.67.10.0255.255.255.224203.67.10.300
2203.67.10.32255.255.255.224203.67.10.620
3203.67.10.64255.255.255.224203.67.10.940
4203.67.10.96255.255.255.224203.67.10.1260
5203.67.10.128255.255.255.224203.67.10.1580
6203.67.10.160255.255.255.224203.67.10.1900
7203.67.10.192255.255.255.224155.10.10.11
8Default192.10.10.11


圖 三 Router 2 之 Routing Table
序號Destination NetworkNet MaskGatewayMetric
1203.67.10.192255.255.255.224203.67.10.2220
2Default155.10.10.21



Lastest Updated : 1996 年 02 月 06 日

若有話告訴我 , 請留下您的悄悄話 , 同時也歡迎到葉建良的家坐坐