PCZONE 討論區 - 觀看單一文章 - 【技巧】Class C 子網路切割 - 速算法
觀看單一文章
linux_xp
Kree

/26 的意義

netmask (子網路遮罩)一般會用十進位的表示法,例如:255.255.255.0

但我們知道,ip實際上是二進位的
Class A、B、C,在RFC規範中的定義,是第一碼為1、10、110
而netmask的作用,也是先換算成二進位,才有辦法和ip做AND邏輯運算
換句話說,netmask 用十進位來表示,是多此一舉

所謂的255.255.255.0
實際上就是 11111111 11111111 11111111 00000000
這就像裹腳布,又臭又長

現在國際上有一種新式的 netmask 正規表示法
如上所示的255.255.255.0,它的二進位前面有24個1
新式的正規表示法為 /24

255.0.0.0 = /8
255.255.0.0 = /16
255.255.255.0 = /24

有借位的話(subneting,子網路切割)
就是看借幾位,就往後加多少,粉簡單的加法
可參考樓上那張圖

這種新式的正規表示法,是不是非常簡單明瞭呢
換算子網路切割也非常方便

從上面的速算法就可以看出
十進位的netmask 簡直就是多餘的,反而造成換算上的困擾

目前比較新的網路軟體,甚至是較新型的Linux核心硬體路由器
設定檔都可以接受這種寫法了
如:apache,bind....等等



不過 Cisco 的機器好像不支援這種寫法?
也有可能是我用的模擬器比較舊的關係
回覆