面試官問(wèn):講講IP地址的分配原理?
閱讀本文大概需要 6 分鐘。
網(wǎng)絡(luò)模型介紹

分類的IP地址
IP地址的表示方法

在A、B、C 三類地址中灰色的部分即為網(wǎng)絡(luò)號(hào),網(wǎng)絡(luò)號(hào)的前三位是類別位,分別是0,10,110。
也就是說(shuō)我們可以憑借這個(gè)類別位置來(lái)判斷網(wǎng)絡(luò)類別。
32位的總長(zhǎng)度,由于A、B、C 三類網(wǎng)絡(luò)號(hào)的長(zhǎng)度的不同,導(dǎo)致A、B、C 類地址的主機(jī)號(hào)字段的字節(jié)數(shù)分別為3、2、1(一個(gè)字節(jié)8位)。
D 類地址的網(wǎng)絡(luò)號(hào)為1110,用于多播(一對(duì)多通訊)。
E 類地址的網(wǎng)絡(luò)號(hào)為1111,保留以后使用。
常用IP地址的指派范圍
網(wǎng)絡(luò)號(hào)指派范圍
A類地址網(wǎng)絡(luò)號(hào)占用一個(gè)字節(jié),但是由于有一位是類別位,只有7位可供使用,但是由于規(guī)定,網(wǎng)絡(luò)字段全0是個(gè)保留字段表示本網(wǎng)絡(luò),而127(01111111)是另外一個(gè)保留字段,作為本地軟件的環(huán)回測(cè)試。
我們常見的127.0.0.1表示本機(jī),原因也是出自這里。
所以A類地址可以指派的網(wǎng)絡(luò)號(hào)個(gè)數(shù)為(27-2).
B類網(wǎng)絡(luò)地址網(wǎng)絡(luò)號(hào)有兩個(gè)字節(jié),前兩位為10已經(jīng)固定,只剩下14位可用,由于這14位無(wú)論怎么取值都不會(huì)使得網(wǎng)絡(luò)號(hào)為全0或者全1,單實(shí)際上規(guī)定,規(guī)定B類最小網(wǎng)絡(luò)地址為128.1.0.0。
因此B類地址可指派的網(wǎng)絡(luò)號(hào)個(gè)數(shù)為(214-1).
C類地址有3個(gè)字節(jié)的網(wǎng)絡(luò)字段號(hào),前三位固定110,只有剩下21位可用,同樣C類地址可指派的最小網(wǎng)絡(luò)地址也是192.0.1.0。
因此C類地址可指派的網(wǎng)絡(luò)號(hào)個(gè)數(shù)為(221-1).
主機(jī)號(hào)指派范圍
由于主機(jī)號(hào)有規(guī)定,全0的主機(jī)號(hào)代表IP地址是“本主機(jī)”所連接到的單個(gè)網(wǎng)絡(luò)地址(例,一主機(jī)地址為5.6.7.8,則該主機(jī)所在的網(wǎng)絡(luò)地址為5.0.0.0),而全1則表示“所有的”,即表示該網(wǎng)絡(luò)上的所有主機(jī)。
A類地址的主機(jī)號(hào)是由三個(gè)字節(jié),24位組成,所以每一個(gè)A類網(wǎng)絡(luò)中可分配的主機(jī)個(gè)數(shù)為(224-2).
B類地址的主機(jī)號(hào)是由兩個(gè)字節(jié),16位組成,所以每一個(gè)B類網(wǎng)絡(luò)中可分配的主機(jī)個(gè)數(shù)為(216-2).
C類地址的主機(jī)號(hào)是由一個(gè)字節(jié),8位組成,所以每一個(gè)C類網(wǎng)絡(luò)中可分配的主機(jī)個(gè)數(shù)為(28-2).
總結(jié)IP指派范圍
所有A類地址共有(27-2)??(224-2)個(gè),大約231,占50%;
所有B類地址共有(214-1)??(216-2)個(gè),大約230,占25%;
所有C類地址共有(221-1)??(28-2)個(gè),大約229,占12.5%;

所以可以這樣來(lái)表示一個(gè)A類IP地址 n.x.y.zn.x.y.z,若1≤n≤1261≤n≤126,0≤x,y,z≤2550≤x,y,z≤255,其中 x,y,zx,y,z不同時(shí)為0也不能同時(shí)為255.
所以可以這樣來(lái)表示一個(gè)B類IP地址 n.m.x.yn.m.x.y,若128≤n≤191128≤n≤191,0≤m≤2550≤m≤255,0≤x,y≤2550≤x,y≤255,其中 I. 當(dāng)n=128n=128時(shí),m≠0m≠0; II. x,yx,y不同時(shí)為0也不能同時(shí)為255;
所以可以這樣來(lái)表示一個(gè)C類IP地址 n.m.k.xn.m.k.x,若192≤n≤223192≤n≤223,0≤m,k≤2550≤m,k≤255,1≤x≤2541≤x≤254,其中 當(dāng)n=192n=192時(shí),k≠0k≠0.
IP地址和硬件地址
子網(wǎng)和超網(wǎng)
子網(wǎng)
A類地址的默認(rèn)子網(wǎng)掩碼是255.0.0.0 B類地址的默認(rèn)子網(wǎng)掩碼是255.255.0.0 C類地址的默認(rèn)子網(wǎng)掩碼是255.255.255.0
超網(wǎng)
第一,消除了傳統(tǒng)的ABC類地址及劃分子網(wǎng)的概念,CIRD把32位的IP地址劃分成為兩個(gè)部分,網(wǎng)絡(luò)前綴和剩下的部分,表示方法為,在IP地址后面加上“/”,然后寫上網(wǎng)絡(luò)前綴所占位數(shù)。
第二,把網(wǎng)絡(luò)前綴相同的IP地址組成一個(gè)CIDR地址塊,例如,IP地址 128.14.35.7/20 用二進(jìn)制表示 100000000 00001110 00100011 00000111,所以我們很容易可以得出這塊地址中最小地址為128.14.32.0,即 100000000 00001110 00100000 00000000,最大地址為128.14.47.255,即 100000000 00001110 00101111 11111111.
推薦閱讀:
Spring Boot 整合微信小程序?qū)崿F(xiàn)登錄與增刪改查
說(shuō)實(shí)話,Intellij IDEA 自帶的 Vim 插件真心不錯(cuò)!
微信掃描二維碼,關(guān)注我的公眾號(hào)
朕已閱?

