日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何实现IP分配、子网划分、和子网掩码计算

發布時間:2023/12/14 编程问答 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何实现IP分配、子网划分、和子网掩码计算 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近再看java網絡編程精解,書中提到了一些過去很模糊的概念。在這里做一些記錄,下面的內容是在百度知道里面查到的。


一、子網掩碼的含義和根據子網掩碼劃分子網

一個IP地址必然屬于某一個網絡,或者叫子網。子網掩碼就是用來指定某個IP地址的網絡地址的,換一句話說,就是用來劃分子網的。

例如,一個A類網絡可以容納16777214臺主機。但是在實際運用中,不可能把一個A類網絡只用于一個子網,因為那樣管理起來很不方便,也會出現廣播風暴等種種問題,所以需要根據實際需求把它劃分為若干個較小的子網。一個B類網絡可以容納65534臺主機,往往也是需要劃分子網的。即便一個小型企業內部,為了部門之間的職能的需要,配置那些電腦可以互相訪問,哪些不能互相訪問,就需要通過劃分子網的方法來實現。

子網劃分的問題看起來很復雜,其實也不是很復雜。只要把IP地址的位數、網絡位數、主機位數、子網掩碼的位數這幾個概念搞清楚,就覺得很簡單了。

IP地址位數=網絡位數+主機位數=32位。子網掩碼的位數就是網絡的位數。

A類網絡的網絡位數是8位,子網掩碼就是11111111.00000000.00000000.00000000,換算成二進制表示為255.0.0.0。

B類網絡的網絡位數是16位,子網掩碼就是11111111.11111111.00000000.00000000,換算成十進制表示為255.255.0.0。

C類網絡的網絡位數是24位,子網掩碼就是11111111.11111111.11111111.00000000,換算成十進制表示為255.255.255.0。

A類網絡加長子網掩碼到16位就把一個A類網絡劃分為256個B類網絡同樣大小的網絡,再加長到24位就又把每個B類大小的子網劃分為256個C類網絡大小的子網。就是這個道理。一個大的網絡,通過把子網掩碼加長,使網絡位多了,也就是網絡數目多了,子網就多了。

當然你也可以不劃分為256個子網,而劃分為128個,64個,32個,16個,8個,4個,2個。

一個B類網絡的默認子網掩碼為255.255.0.0,你如果想把它劃分為2個子網,網絡位數就成立17位,也就是說子網掩碼就變成了255.255.128.0;想劃分為16個子網,因為16是2的4次方,所以網絡位數加4變成了20位,也就是說子網掩碼加長,成了20位,就是255.255.240.0。依此類推。

一個C類網絡的默認子網掩碼為24位的,那么主機位=32-24=8位,2的8次方等于256,所以一個C類網絡的IP地址數量(包括網絡地址和廣播地址)為256個。

但是你仍然可以通過加長子網掩碼的手段,把一個C類子網劃分為更多的子網。劃分的子網數必定是2的n次方個,每個子網的IP數量必定是2的(8- n)次方個。

子網掩碼加長1位,劃分2個子網;加長2位,劃分4個子網,加長6位,劃分2的6次方個,也就是64個子網。

子網掩碼的1的個數表示網絡位的個數,簡單地來說,網絡位是不屬于你控制的,是上級主管給你的,給你多少就是多少。但是主機位是你可以控制的,你可以把它縮短,把縮短出來的位數加到網絡位中,這樣網絡位就長了,子網數就多了,相應地每個子網的IP數量就少了。

記住下面的公式,遇到再復雜的子網劃分問題也難不倒你了。

IP地址位數=32
網絡位+主機位=32
子網掩碼加長n位,則在當前子網基礎上劃分為2的n次方個子網。每個子網的IP地址數量=2^(32-劃分前子網掩碼位數-n)

二、如何根據子網劃分的目標計算子網掩碼

簡單來說,子網掩碼就是網絡地址的位數。

一個IP地址一共有32位,其中靠前的某些位表示網絡地址,后面的某些位表示主機位。

網絡位數+主機位數=IP地址位數=32

知道了這個道理,計算子網掩碼的方法就是:已知子網內IP數的多少,求出主機位的位數,用32減去主機位數就等于網絡位數,也就是子網掩碼。

舉最簡單的例子。一個C類網絡,包括256個主機位置,256是2 的8次方,所以主機位是8,那么網絡位就是32-8=24,也就是說子網掩碼是24位,用二進制表示就是11111111.11111111.11111111.00000000,換算成十進制就是255.255.255.0

再比如一個C類網絡劃分的子網,每個網絡主機IP數是32, 而32是2的5次方,所以主機位是5,那么網絡位就是32-5=27,也就是說子網掩碼是27位,用二進制表示就是11111111.11111111.11111111.11100000,換算成十進制就是255.255.255.224

再比如一個B類網絡劃分的子網,每個網絡主機IP數是1024, 而1024是2的10次方,所以主機位是10,那么網絡位就是32-10=22,也就是說子網掩碼是22位,用二進制表示就是11111111.11111111.11111100.00000000,換算成十進制就是255.255.252.0

子網劃分是通過改變子網掩碼的位數來實現的。比如一個C類IP地址,默認子網掩碼是24位的,二進制表示是11111111.11111111.11111111.0000000,換算成10進制的就是255.255.255.0。

如果是這樣的子網掩碼,后面的8位都可以用來做為主機的位置,2 的8次方等于256,一共有256個IP位置,因為有2個不能用,所以可用的主機位置為254個。

但是你要把這樣一個地址劃分成2個子網,就要從主機位里拿出一位來作為網絡地址,網絡地址就成了25位了。相應地主機位就成了7位了,2 的7次方等于128,一共有126個地址可用。

這是從正向來說的,就是已知要劃分的子網數,求每個子網的主機數。但是在實際工作中往往是先知道每個子網的主機數,讓你劃分子網。其實也很簡單。

首先你算一下主機數更接近于2 的幾次方,那么主機位數就是幾位。32減去主機位就是網絡位。

舉例說明。假如給你一個C類IP地址192.168.0.0。假如你想劃分2個子網,一個里面有100臺電腦,另一個有50臺電腦。

100大于2的6次方,小于2的7次方,所以主機位數取7位。那么網絡位數就是32-7=25位。25位的子網掩碼11111111.11111111.11111111.10000000 換算成10進制的就是
255. 255. 255. 128,這就是第一個子網的子網掩碼,網絡號為192.168.0.0/25,網絡地址192.168.0.0,主機地址192.168.0.1~192.168.0.126,廣播地址192.168.0.127

50大于2的5次方,小于2的6次方,所以主機位數取6位。那么網絡位數就是32-6=26位。26位的子網掩碼11111111.11111111.11111111.11000000 換算成10進制的就是
255. 255. 255. 192,這就是第二個子網的子網掩碼,網絡號為192.168.0.128/26,網絡地址192.168.0.128,主機地址192.168.0.129~192.168.0.190,廣播地址192.168.0.191

總結

以上是生活随笔為你收集整理的如何实现IP分配、子网划分、和子网掩码计算的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。