理解ip地址組成
ipv4地址是32位的二進(jìn)制數,通常我們會(huì )用點(diǎn)分十進(jìn)制表示,例如:192.188.222.213
每個(gè)ip地址又可分為兩部分,一部分是網(wǎng)絡(luò )號部分,另一部分是主機號,網(wǎng)絡(luò )號表示其所屬的網(wǎng)絡(luò )段編號,主機號則表示該網(wǎng)段中該主機的地址編號,按照網(wǎng)絡(luò )規模的大小,IP地址可以分為A、B、C、D、E五類(lèi),其中A、B、C類(lèi)是三種主要的類(lèi)型地址,D類(lèi)專(zhuān)供多目傳送用的多目地址,E類(lèi)用于擴展備用地址。A、B、C三類(lèi)IP地址有效范圍如下表:
類(lèi)別 網(wǎng)絡(luò )號 /占位數 主機號 /占位數 用途(X位網(wǎng)絡(luò )斷,Y位主機段)
A 1~126 / 8 0~255 0~255 1~254 / 24 國家級
根據規定,A類(lèi)地址的網(wǎng)絡(luò )標識必須以“0”開(kāi)頭。那么其網(wǎng)段數應該為0XXXXXXX.YYYYYYYY.YYYYYYYY.YYYYYYYY即后面有七位數字
B 128~191 0~255 / 16 0~255 1~254 / 16 跨過(guò)組織
根據規定,B類(lèi)地址的網(wǎng)絡(luò )標識必須以“10”開(kāi)頭。那么其網(wǎng)段數應該為10XXXXXX.XXXXXXXX.YYYYYYYY.YYYYYYYY即后面有14位數字
C 192~223 0~255 0~255 / 24 1~254 / 8 企業(yè)組織
根據規定,C類(lèi)地址的網(wǎng)絡(luò )標識必須以“110”開(kāi)頭。那么其網(wǎng)段數應該為110XXXXX.XXXXXXXX.XXXXXXXX.YYYYYYYY即后面有21位數字
虛擬Ip地址(所有路由器對于虛擬ip地址數據表一律不轉發(fā)):
10.0.0.0~10.255.255.255
172.16.0.0~172.31.255.255
192.168.0.0. ~192.168.255.255
對于A(yíng)類(lèi)地址來(lái)說(shuō), 網(wǎng)絡(luò )斷取值編號只能是1-126(127作為回路地址使用), 主機號編號取值范圍為1-2^24, 如此大的主機編號數量,但是只能對應一個(gè)ip使用,例如對于126.x.x.x這個(gè)ip來(lái)說(shuō),其實(shí)在126這個(gè)ip下面可以配置(2^24-1)個(gè)主機進(jìn)行使用,但是很難全部進(jìn)行使用和管理,為了高效率的使用這些主機編號,同時(shí)著(zhù)互連網(wǎng)應用的不斷擴大,原先的IPv4的弊端也逐漸暴露出來(lái),即網(wǎng)絡(luò )號占位太多,而主機號位太少,所以其能提供的主機地址也越來(lái)越稀缺,目前除了使用NAT在企業(yè)內部利用保留地址自行分配以外,通常都對一個(gè)高類(lèi)別的IP地址進(jìn)行再劃分,以形成多個(gè)子網(wǎng),提供給不同規模的用戶(hù)群使用。
可以將126想象成一個(gè)小區的編號,然后主機號(2^32-1)想象成居民的房號,如果要管理這個(gè)小區將變得特別困難,為了方便管理,我們將這個(gè)小區內部再劃分出多個(gè)子區,這就是子網(wǎng)的由來(lái),如果我們想給某一個(gè)子小區的成員分發(fā)數據,我們總不可能一個(gè)個(gè)的居民找過(guò)去吧, 如果我們知道這個(gè)居民在小區的哪一個(gè)子小區,不就更容易找到居民了嗎,那么子網(wǎng)掩碼就是來(lái)幫我們找到當前ip所屬哪一個(gè)子網(wǎng)的。
子網(wǎng)的組成
為了在網(wǎng)絡(luò )分段情況下有效地利用IP地址,通過(guò)對主機號的高位部分取作為子網(wǎng)號,從通常的網(wǎng)絡(luò )位界限中擴展或壓縮子網(wǎng)掩碼,用來(lái)創(chuàng )建某類(lèi)地址的更多子網(wǎng)。但創(chuàng )建更多的子網(wǎng)時(shí),在每個(gè)子網(wǎng)上的可用主機地址數目會(huì )比原先減少
距離來(lái)說(shuō),對于126.0.0.1,我們將其轉換為32位2進(jìn)制數,前8位時(shí)網(wǎng)絡(luò )段(即126), 然后剩下的24位可以從高位截取位數來(lái)作為子網(wǎng)數量(以及編號),剩下的位數作為主機號,例如我們取24位前兩位作為子網(wǎng),則子網(wǎng)的數量是2^2個(gè)(也就是四個(gè)),每個(gè)子網(wǎng)下管理的主機編號是(1-2^22),但是對于每一個(gè)子網(wǎng)來(lái)說(shuō),會(huì )把主機編號的開(kāi)始作為網(wǎng)絡(luò )地址,將主機編號最后一個(gè)作為廣播地址,所以每個(gè)子網(wǎng)可用主機數為(2^22-2)個(gè), 此時(shí)的子網(wǎng)掩碼(32位)11111111,11000000,00000000,00000000轉換成點(diǎn)分十進(jìn)制是:255.192.0.0, 注:網(wǎng)絡(luò )段必須是都是1
一、利用子網(wǎng)數來(lái)計算
在求子網(wǎng)掩碼之前必須先搞清楚要劃分的子網(wǎng)數目,以及每個(gè)子網(wǎng)內的所需主機數目。
1)將子網(wǎng)數目轉化為二進(jìn)制來(lái)表示
2)取得該二進(jìn)制的位數,為 N
3)取得該IP地址的類(lèi)子網(wǎng)掩碼,將其主機地址部分的的前N位置 1 即得出該IP地址劃分子網(wǎng)的子網(wǎng)掩碼。
如欲將B類(lèi)IP地址168.195.0.0劃分成27個(gè)子網(wǎng):
1)27=11011
2)該二進(jìn)制為五位數,N = 5
3)將B類(lèi)地址的子網(wǎng)掩碼255.255.0.0的主機地址前5位置 1(從高位截取時(shí)必須都是1),得到 255.255.248.0
即為劃分成 27個(gè)子網(wǎng)的B類(lèi)IP地址 168.195.0.0的子網(wǎng)掩碼。
方法2:
其實(shí)我們可以想一下2^位數,剛剛大于要劃分的子網(wǎng)數量,對于27來(lái)說(shuō),2^5=32剛剛大于27, 所以截取主機段高位的前五位作為子網(wǎng)掩碼,上述地址是b類(lèi),因此前16位時(shí)網(wǎng)絡(luò )段,此時(shí)的子網(wǎng)掩碼(32位)11111111,11111111,11111000,00000000轉換成點(diǎn)分十進(jìn)制是:255.255.248.0, 注:網(wǎng)絡(luò )段必須是都是1
二、利用主機數來(lái)計算
1)將主機數目轉化為二進(jìn)制來(lái)表示
2)如果主機數小于或等于254(注意去掉保留的兩個(gè)IP地址),則取得該主機的二進(jìn)制位數,為 N,這里肯定 N<8。如果大于254,則 N>8,這就是說(shuō)主機地址將占據不止8位。
3)使用255.255.255.255來(lái)將該類(lèi)IP地址的主機地址位數全部置1,然后從后向前的將N位全部置為 0,即為子網(wǎng)掩碼值。
如欲將B類(lèi)IP地址168.195.0.0劃分成若干子網(wǎng),每個(gè)子網(wǎng)內有主機700臺:
1) 700=1010111100
2)該二進(jìn)制為十位數,N = 10
3)將該B類(lèi)地址的子網(wǎng)掩碼255.255.0.0的主機地址全部置 1,得到255.255.255.255
然后再從后向前將后 10位置0,即為: 11111111.11111111.11111100.00000000
即255.255.252.0。這就是該欲劃分成主機為700臺的B類(lèi)IP地址 168.195.0.0的子網(wǎng)掩碼。
方法2:其實(shí)我們可以想一下2^位數的值,剛剛大于要劃分的主機數量,對于700來(lái)說(shuō),2^11=1024, 剛剛大于700,但是主機位是低位截取, 所以截取主機段低位的后十位作為主機位,上述地址是b類(lèi),因此前16位時(shí)網(wǎng)絡(luò )段,此時(shí)的子網(wǎng)掩碼(32位)11111111,11111111,11111100,00000000轉換成點(diǎn)分十進(jìn)制是:255.255.252.0, 注:網(wǎng)絡(luò )段必須是都是1
下面列出各類(lèi)IP地址所能劃分出的所有子網(wǎng),其劃分后的主機和子網(wǎng)占位數,以及主機和子網(wǎng)的(最大)數目,注意要去掉保留的IP地址(即劃分后有主機位或子網(wǎng)位全為“0”或全為“1”的):
A類(lèi)IP地址:
子網(wǎng)位 /主機位 子網(wǎng)掩碼 子網(wǎng)最大數 /主機最大數
2/22 255.192.0.0 2/4194302
3/21 255.224.0.0 6/2097150
4/20 255.240.0.0 14/1048574
5/19 255.248.0.0 30/524286
6/18 255.252.0.0 62/262142
7/17 255.254.0.0 126/131070
8/16 255.255.0.0 254/65536
9/15 255.255.128.0 510/32766
10/14 255.255.192.0 1022/16382
11/13 255.255.224.0 2046/8190
12/12 255.255.240.0 4094/4094
13/11 255.255.248.0 8190/2046
14/10 255.255.252.0 16382/1022
15/9 255.255.254.0 32766/510
16/8 255.255.255.0 65536/254
17/7 255.255.255.128 131070/126
18/6 255.255.255.192 262142/62
19/5 255.255.255.224 524286/30
20/4 255.255.255.240 1048574/14
21/3 255.255.255.248 2097150/6
22/2 255.255.255.252 4194302/2
B類(lèi)IP地址:
子網(wǎng)位 /主機位 子網(wǎng)掩碼 子網(wǎng)最大數 /主機最大數
2/14 255.255.192.0 2/16382
3/13 255.255.224.0 6/8190
4/12 255.255.240.0 14/4094
5/11 255.255.248.0 30/2046
6/10 255.255.252.0 62/1022
7/9 255.255.254.0 126/510
8/8 255.255.255.0 254/254
9/7 255.255.255.128 510/126
10/6 255.255.255.192 1022/62
11/5 255.255.255.224 2046/30
12/4 255.255.255.240 4094/14
13/3 255.255.255.248 8190/6
14/2 255.255.255.252 16382/2
C類(lèi)IP地址:
子網(wǎng)位 /主機位 子網(wǎng)掩碼 子網(wǎng)最大數 /主機最大數
2/6 255.255.255.192 2/62
3/5 255.255.255.224 6/30
4/4 255.255.255.240 14/14
5/3 255.255.255.248 30/6
6/2 255.255.255.252 62/2
我們看一個(gè)考試中常見(jiàn)的題型:一個(gè)主機的IP地址是202.112.14.137,掩碼是255.255.255.224,要求計算這個(gè)主機所在網(wǎng)絡(luò )的網(wǎng)絡(luò )地址和廣播地址。
方法1. 常規辦法是把這個(gè)主機地址和子網(wǎng)掩碼都換算成二進(jìn)制數,兩者進(jìn)行邏輯與運算后即可得到網(wǎng)絡(luò )地址,得出202.112.14.128, 上述是1個(gè)c類(lèi)地址,因此主機號位后8位, 將224轉為二進(jìn)制的11100000, 也就說(shuō)截取了前3位作為子網(wǎng),所以子網(wǎng)數位2^3=8個(gè),主機數一個(gè)2^8=256個(gè),分為8份,則一個(gè)子網(wǎng)為32個(gè)主機數,因為網(wǎng)絡(luò )地址是一個(gè)子網(wǎng)的開(kāi)始地址,廣播地址是一個(gè)子網(wǎng)的結束地址,所以128+32-1 = 159,因為廣播地址為202.112.14.159