子網劃分和子網掩碼的計算方法

   Internet 組織機構定義了五種IP地址,用於主機的有ABC三類地址。其中A類網絡有126個,每一個A類網絡可能有16777214臺主機,它們處於同一廣播域。而在同一廣播域中有這麼多結點是不可能的,網絡會由於廣播通訊而飽和,結果形成16777214個地址大部分沒有分配出去,造成了浪費。而另外一方面,隨着互連網應用的不斷擴大,IP地址資源愈來愈少。爲了實現更小的廣播域並更好地利用主機地址中的每一位,能夠把基於類的IP網絡進一步分紅更小的網絡,每一個子網由路由器界定並分配一個新的子網網絡地址,子網地址是借用基於類的網絡地址的主機部分建立的。劃分子網後,經過使用掩碼,把子網隱藏起來,使得從外部看網絡沒有變化,這就是子網掩碼。
 
1. 子網掩碼
    RFC 950 定義了子網掩碼的使用,子網掩碼是一個32位的2進制數,其對應網絡地址的全部位都置爲1,對應於主機地址的全部位都置爲0。由此可知,A類網絡的缺省的子網掩碼是255.0.0.0B類網絡的缺省的子網掩碼是255.255.0.0C類網絡的缺省的子網掩碼是255.255.255.0。將子網掩碼和IP地址按位進行邏輯運算,獲得IP地址的網絡地址,剩下的部分就是主機地址,從而區分出任意IP地址中的網絡地址和主機地址。子網掩碼經常使用點分十進制表示,咱們還能夠用網絡前綴法表示子網掩碼,即「/<網絡地址位數>」。如138.96.0.0/16表示B類網絡138.96.0.0的子網掩碼爲255.255.0.0。子網掩碼告知路由器,地址的哪一部分是網絡地址,哪一部分是主機地址,使路由器正確判斷任意IP地址是不是本網段的,從而正確地進行路由。例如,有兩臺主機,主機一的IP地址爲222.21.160.6,子網掩碼爲255.255.255.192,主機二的IP地址爲222.21.160.73,子網掩碼爲255.255.255.192。如今主機一要給主機二發送數據,先要判斷兩個主機是否在同一網段。
主機一
222.21.160.6 即:11011110.00010101.10100000.00000110
255.255.255.192 即:11111111.11111111.11111111.11000000
按位邏輯與運算結果爲: 11011110.00010101.10100000.00000000
主機二
222.21.160.73 即:11011110.00010101.10100000.01001001
255.255.255.192 即:11111111.11111111.11111111.11000000
按位邏輯與運算結果爲:11011110.00010101.10100000.01000000
兩個結果不一樣,也就是說,兩臺主機不在同一網絡,數據需先發送給默認網關,
而後再發送給主機二所在網絡。那麼,假如主機二的
子網掩碼誤設爲255.255.255.128,會發生什麼狀況呢?
讓咱們將主機二的IP地址與錯誤的子網掩碼相
222.21.160.73 即:11011110.00010101.10100000.01001001
255.255.255.128 即:11111111.11111111.11111111.10000000
結果爲 11011110.00010101.10100000.00000000
這個結果與主機的網絡地址相同,主機與主機二將被認爲處於同一網絡中,數據再也不發送給默認網關,而是直接在本網內傳送。因爲兩臺主機實際並不在同一網絡中,數據包將在本子網內循環,直到超時並拋棄。數據不能正確到達目的機,致使網絡傳輸錯誤。反過來,若是兩臺主機的子網掩碼原來都是255.255.255.128,誤將主機二的設爲255.255.255.192,主機一貫主機二發送數據時,因爲IP地址與錯誤的子網掩碼相與,誤認兩臺主機處於不一樣網絡,則會將原本屬於同一子網內的機器之間的通訊看成是跨網傳輸,數據包都交給缺省網關處理,這樣勢必增長缺省網關的負擔,形成網絡效率降低。因此,子網掩碼不能任意設置,子網掩碼的設置關係到
子網的劃分。
 
2. 子網劃分與掩碼的設置
子網劃分是經過借用IP地址的若干位主機位來充當子網地址從而將原網絡劃分爲若干子網而實現的。劃分子網時,隨着子網地址借用主機位數的增多,子網的數目隨之增長,而每一個子網中的可用主機數逐漸減小。以C類網絡爲例,原有8位主機位,2^8256個主機地址,默認子網掩碼255.255.255.0。借用1位主機位,產生2^1個子網,每一個子網有2^7個主機地址;借用2位主機位,產生2^2個子網,每一個子網有2^6個主機地址……根據子網ID借用的主機位數,咱們能夠計算出劃分的子網數、掩碼、每一個子網主機數,列表以下:
劃分子網數
子網位數
子網掩碼(二進制)
子網掩碼(十進制)
每一個子網主機數
1 2
1
11111111.11111111.11111111.10000000
255.255.255.128
128
3 4
2
11111111.11111111.11111111.11000000
255.255.255.192
64
5 8
3
11111111.11111111.11111111.11100000
255.255.255.224
32
9 16
4
11111111.11111111.11111111.11110000
255.255.255.240
16
17 32
5
11111111.11111111.11111111.11111000
255.255.255.248
8
33 64
6
11111111.11111111.11111111.11111100
255.255.255.252
4

如上表所示的C類網絡中,若子網佔用7位主機位時,主機位只剩一位,不管設爲0仍是1,都意味着主機位是全0或全1。因爲主機位全0表示本網絡,全1留做廣播地址,這時子網實際沒有可用主機地址,因此主機位至少應保留2位。從上表可總結出子網劃分的步驟或者說子網掩碼的計算步驟:
2.1 肯定要劃分的子網數目以及每一個子網的主機數目。
2.2 求出子網數目對應二進制數的位數N及主機數目對應二進制數的位數M
2.3 對該IP地址的原子網掩碼,將其主機地址部分的前N位置 1或後M位置0 即得出該IP地址劃分子網後的子網掩碼。
 
例如,對B類網絡135.41.0.0/16須要劃分爲20個能容納200臺主機的網絡。由於162032,即2^4202^5,因此,子網位只須佔用5位主機位就可劃分紅32個子網,能夠知足劃分紅20個子網的要求。B類網絡的默認子網掩碼是255.255.0.0,轉換爲二進制爲11111111.11111111.00000000.00000000。如今子網又佔用了5位主機位,根據子網掩碼的定義,劃分子網後的子網掩碼應該爲11111111.11111111.11111000.00000000,轉換爲十進制應該爲255.255.248.0。如今咱們再來看一看每一個子網的主機數。子網中可用主機位還有11位,2^112048,去掉主機位全0和全1的狀況,還有2046個主機ID能夠分配,而子網能容納200臺主機就能知足需求,按照上述方式劃分子網,每一個子網能容納的子網數目遠大於需求的主機數目,形成了IP地址資源的浪費。爲了更有效地利用資源,咱們也能夠根據子網所需主機數來劃分子網。還以上例來講,128200256,即2^72002^8,也就是說,在B類網絡的16位主機位中,保留8位主機位,其它的1688位當成子網位,能夠將B類網絡138. 96.0.0劃分紅256(2^8)個能容納256111=253臺(去掉全01狀況和留給路由器的地址)主機的子網。此時的子網掩碼爲11111111.11111111.11111111.00000000,轉換爲十進制爲255.255.255.0
在上例中,咱們分別根據子網數和主機數劃分了子網,獲得了兩種不一樣的結果,都能知足要求,實際上,子網佔用5~8位主機位時所獲得的子網都能知足上述要求,那麼,在實際工做中,應按照什麼原則來決定佔用幾位主機位呢?在劃分子網時,不只要考慮目前須要,還應瞭解未來須要多少子網和主機。對子網掩碼使用比須要更多的主機位,能夠獲得更多的子網,節約了IP地址資源,若未來須要更多子網時,不用再從新分配IP地址,但每一個子網的主機數量有限;反之,子網掩碼使用較少的主機位,每一個子網的主機數量容許有更大的增加,但可用子網數量有限。通常來講,一個網絡中的節點數太多,網絡會由於廣播通訊而飽和,因此,網絡中的主機數量的增加是有限的,也就是說,在條件容許的狀況下,會將更多的主機位用於子網位。綜上所述,子網掩碼的設置關係到子網的劃分。子網掩碼設置的不一樣,所獲得的子網不一樣,每一個子網能容納的主機數目不一樣。若設置錯誤,可能致使數據傳輸錯誤。

子網掩碼的計算方法
 
1、利用子網數來計算
在求子網掩碼以前必須先搞清楚要劃分的子網數目,以及每一個子網內的所需主機數目。
1)
將子網數目轉化爲二進制來表示
2)
取得該二進制的位數,爲 N
3)
取得該IP地址的類子網掩碼,將其主機地址部分的的前N位置 1 即得出該IP地址劃分子網的子網掩碼。
如欲將BIP地址168.195.0.0劃分紅27個子網:
1)27=11011
2)
該二進制爲五位數,N = 5
3)
B類地址的子網掩碼255.255.0.0的主機地址前5位置 1,獲得
255.255.248.0 ,即爲劃分紅 27個子網的BIP地址 168.195.0.0
子網掩碼。

2、利用主機數來計算
1)
將主機數目轉化爲二進制來表示
2)
若是主機數小於或等於254(注意去掉保留的兩個IP地址),則取得該主機的二進制位數,爲 N,這裏確定 N8,這就是說主機地址將佔據不止8位。
3)
使用255.255.255.255來將該類IP地址的主機地址位數所有置1,而後從後向前的將N位所有置爲 0,即爲子網掩碼值。
如欲將B(c)IP地址168.195.0.0劃分紅若干子網,每一個子網內有主機700(17)
1) 700=1010111100
2)
該二進制爲十位數,N = 10(1001)
3)
將該B類地址的子網掩碼255.255.0.0的主機地址所有置1,獲得255.255.255.255,而後再從後向前將後10位置0,即爲:11111111.11111111.11111100.00000000(100),即255.255.252.0。這就是該欲劃分紅主機爲700臺的BIP地址 168.195.0.0的子網掩碼。一個很容易算子網掩碼的方法。(我的以爲沒什麼用!!!仍是掌握上面的方法好!!!)
你們都應該知道20次方到10次方是多少把?也給你們說一下,分別是:
1 2 4 8 16 32 64 128 256 512 1024
。若是你但願每一個子網中只有5ip地址能夠給機器用,那麼你就最少須要準備給每一個子網7ip地址,由於須要加上兩頭的不可用的網絡和廣播ip,因此你須要選比7多的最近的那位,也就是8,就是說選每一個子網8ip。好,到這一步,你就能夠算掩碼了,這個方法就是:最後一位掩碼就是256減去你每一個子網所須要的ip地址的數量,那麼這個例子就是256-8=248,那麼算出這個,你就能夠知道那些ip是不能用的了,看:0-7,8-15,16-23,24-31依此類推,寫在上面的0781516232431(依此類推)都是不能用的,你應該用某兩個數字之間的IP,那個就是一個子網可用的IP,怎麼了?是否是不相信?太簡單了。。。
我再試驗一下,就拿200臺機器分紅4個子網來作例子吧。
200
臺機器,4個子網,那麼就是每一個子網50臺機器,設定爲192.168.10.0C類的IP,大子網掩碼應爲255.255.255.0,對巴,可是咱們要分子網,因此按照上面的,咱們用32IP一個子網內不夠,應該每一個子網用64IP(其中62位可用,足夠了吧),而後用個人辦法:子網掩碼應該是256-64=192,那麼總的子網掩碼應該爲:255.255.255.192。不相信?算算:0-6364-127128-191192-255,這樣你就能夠把四個區域分別設定到四個子網的機器上了,是否是很簡單?不須要軟件算了吧。。。呵呵。。但願你們能看懂我寫的。。。。
子網的再劃分就是這樣:好比一個c類地址19216810/24,這個子網中可用主機地址爲2552253個,一個網絡地址和一個廣播地址不可分配給主機用,網絡地址是10,廣播地址是1255。那麼若是我有些機器,ip都是這個子網中的地址,那麼他們互ping,能夠通,不用通過路由,由於是一個子網內的通訊。若是個人規劃是這樣的:公司每一個部門佔用一個子網,爲了安全性考慮,部門之間不能通訊,那麼若是一個部門只有2臺機器,怎麼辦?一個c類子網有253個地址,就只讓那兩臺機器給佔用了嗎?難道就這麼浪費?私網地址也就罷了,隨便用吧,反正用不完,若是這是公網地址呢?因此出現了子網劃分,就是將一個子網,劃分稱更多的小子網,可是子網數目有規定,就是2n次方,也就是一個子網能夠分紅248163264128個子網,若是分紅2個,那麼原先的256個地址除2等於128,就是說每一個小子網有128個地址了,而掩碼原來是24位的,如今分了一次,變成兩個小子網,那麼掩碼就加1,變長了,變成25了,這就叫vlsm,若是又分了一次,就是說在原來的基礎上分紅4個子網(也能夠把25位的小子網再分一次,就和細胞分裂同樣的。),那麼2564就是64,也就是一個小子網有64個地址,掩碼再次加1,變成26了,一樣,再分,再加,每子網32個(掩碼27),16個(28),8個(29),4個(30),2個(31),1個(32),31位的子網已經沒有可用地址了,只有一個網絡地址和一個廣播地址了(每一個子網開頭第一個地址爲網絡地址,最後一個爲廣播地址,這是規定),32位的就不叫網了,叫單主機了。若是不用242526,等表示掩碼,也能夠用256-子網地址數的值來表示(見樓上)。這樣,若是給一個有28臺主機的部門分一個子網,那麼用那個子網好呢?看看來,12481632。。。。。。。。28介於1632之間因此只能分一個比32大的子網給他,爲了節約地址,分一個32地址的,因此,掩碼爲25632224,若是用位數表示,好,256÷328,因此分了8個子網,也就是分了3次,因此24+3=27。地址範圍:031326364127128159160191192223224256,分哪個子網都行,可是掩碼必定要帶着,不然按照默認的abc類地址掩碼算!就像切豆腐同樣,一塊大的,切成若干小的,小的還能夠再分,不過必定要是2n次方。
相關文章
相關標籤/搜索