不管是學(xué)習(xí)網(wǎng)絡(luò)還是上網(wǎng),IP地址都是出現(xiàn)頻率非常高的詞。Windows系統(tǒng)中設(shè)置IP地址的界面如圖1所示,圖中出現(xiàn)了IP地址、子網(wǎng)掩碼、默認(rèn)網(wǎng)關(guān)和DNS服務(wù)器這幾個(gè)需要設(shè)置的地方,只有正確設(shè)置,網(wǎng)絡(luò)才能通,那這些名詞都是什么意思呢?學(xué)習(xí)IP地址的相關(guān)知識(shí)時(shí)還會(huì)遇到網(wǎng)絡(luò)地址、廣播地址、子網(wǎng)等概念,這些又是什么意思呢?
圖1
要解答這些問(wèn)題,先看一個(gè)日常生活中的例子。如圖2所示,住在北大街的住戶(hù)要能互相找到對(duì)方,必須各自都要有個(gè)門(mén)牌號(hào),這個(gè)門(mén)牌號(hào)就是各家的地址,門(mén)牌號(hào)的表示方法為:北大街+XX號(hào)。假如1號(hào)住戶(hù)要找6號(hào)住戶(hù),過(guò)程是這樣的,1號(hào)在大街上喊了一聲:"誰(shuí)是6號(hào),請(qǐng)回答。",這時(shí)北大街的住戶(hù)都聽(tīng)到了,但只有6號(hào)作了回答,這個(gè)喊的過(guò)程叫"廣播",北大街的所有用戶(hù)就是他的廣播范圍,假如北大街共有20個(gè)用戶(hù),那廣播地址就是:北大街21號(hào)。也就是說(shuō),北大街的任何一個(gè)用戶(hù)喊一聲能讓"廣播地址-1"個(gè)用戶(hù)聽(tīng)到。
圖2
從這個(gè)例中可以抽出下面幾個(gè)詞:
街道地址:北大街,如果給該大街一個(gè)地址則用第一個(gè)住戶(hù)的地址-1,此例為:北大街0號(hào)
住戶(hù)的號(hào):如1號(hào)、2號(hào)等。
住戶(hù)的地址:街道地址+XX號(hào),如北大街 1號(hào)、北大街 2號(hào)等
廣播地址:最后一個(gè)住戶(hù)的地址+1,此例為:北大街21號(hào)
Internet網(wǎng)絡(luò)中,每個(gè)上網(wǎng)的計(jì)算機(jī)都有一個(gè)像上述例子的地址,這個(gè)地址就是IP地址,是分配給網(wǎng)絡(luò)設(shè)備的門(mén)牌號(hào),為了網(wǎng)絡(luò)中的計(jì)算機(jī)能夠互相訪問(wèn),IP地址=網(wǎng)絡(luò)地址+主機(jī)地址,圖1中的IP地址是192.168.100.1,這個(gè)地址中包含了很多含義。如下所示:
網(wǎng)絡(luò)地址(相當(dāng)于街道地址): 192.168.100.0
主機(jī)地址(相當(dāng)于各戶(hù)的門(mén)號(hào)):0.0.0.1
IP地址(相當(dāng)于住戶(hù)地址):網(wǎng)絡(luò)地址+主機(jī)地址=192.168.100.1
廣播地址: 192.168.100.255
這些地址是如何計(jì)算出來(lái)的呢?為什么計(jì)算這些地址呢?要想知道如何,先要明白一個(gè)道理,學(xué)習(xí)網(wǎng)絡(luò)的目的就是如何讓網(wǎng)絡(luò)中的計(jì)算機(jī)相互通訊,也就是說(shuō)要圍繞著"通"這個(gè)字來(lái)學(xué)習(xí)和理解網(wǎng)絡(luò)中的概念,而不是只為背幾個(gè)名詞。
注:192.168.100.1是私有地址,是不能直接在Internet網(wǎng)絡(luò)中應(yīng)用的,上Internet要轉(zhuǎn)為公有地址,下面詳細(xì)說(shuō)明。
一、為什么要計(jì)算網(wǎng)絡(luò)地址
一句話(huà)就是讓網(wǎng)絡(luò)中的計(jì)算機(jī)能夠相互通訊。先看看最簡(jiǎn)單的網(wǎng)絡(luò),圖3中是用網(wǎng)線(交叉線)直接將兩臺(tái)計(jì)算機(jī)連起來(lái)。下面是幾種IP地址設(shè)置,看看在不同設(shè)置下網(wǎng)絡(luò)是通還是不通。
1、設(shè)置1號(hào)機(jī)的IP地址為192.168.0.1子網(wǎng)掩碼為255.255.255.0,2號(hào)機(jī)的IP地址為192.168.0.200子網(wǎng)掩碼為255.255.255.0,這來(lái)臺(tái)計(jì)算機(jī)就能正常通訊。
2、如果1號(hào)機(jī)地址不變,將2號(hào)機(jī)的IP地址改為192.168.1.200子網(wǎng)掩碼還是為255.255.255.0,那這兩臺(tái)就無(wú)法通訊。
3、設(shè)置1號(hào)機(jī)的IP地址為192.168.0.1子網(wǎng)掩碼為255.255.255.192,2號(hào)機(jī)的IP地址為192.168.0.200子網(wǎng)掩碼為255.255.255.192,注意和第1種情況的區(qū)別在于子網(wǎng)掩碼,1為255.255.255.0本例是255.255.255.192這來(lái)臺(tái)計(jì)算機(jī)就能正常通訊。
圖3
第1種情況能通是因?yàn)檫@兩臺(tái)計(jì)算機(jī)處在同一網(wǎng)絡(luò)192.168.0.0,所以能通,而2、3種情況下兩臺(tái)計(jì)算機(jī)處在不同的網(wǎng)絡(luò),所以不通。
這里先給個(gè)結(jié)論:用網(wǎng)線直接連接的計(jì)算機(jī)或是通過(guò)HUB或普通交換機(jī)間接的計(jì)算機(jī)之間要能夠相互通,計(jì)算機(jī)必須要在同一網(wǎng)絡(luò),也就是說(shuō)它們的網(wǎng)絡(luò)地址必須相同,而且主機(jī)地址必須不一樣。如果不在一個(gè)網(wǎng)絡(luò)就無(wú)法通。這就像我們上面舉的例子,同是北大街的住戶(hù)由于街道名稱(chēng)都是北大街,且各自的門(mén)牌號(hào)不同,所以能夠相互找到對(duì)方。
計(jì)算網(wǎng)絡(luò)地址就是判斷網(wǎng)絡(luò)中的計(jì)算機(jī)在不在同一網(wǎng)絡(luò),在就能通,不在就不能通。注意,這里說(shuō)的在不在同一網(wǎng)絡(luò)指的是IP地址而不是物理連接。那么如何計(jì)算呢?
二、如何計(jì)算網(wǎng)絡(luò)地址
我們?nèi)粘I钪械牡刂啡纾罕贝蠼?號(hào),從字面上就能看出街道地址是北大街,而我們從IP地址中卻難以看出網(wǎng)絡(luò)地址,要計(jì)算網(wǎng)絡(luò)地址,必須借助我們上邊提到過(guò)的子網(wǎng)掩碼。
計(jì)算過(guò)程是這樣的,將IP地址和子網(wǎng)掩碼都換算成二進(jìn)制,然后進(jìn)行與運(yùn)算,結(jié)果就是網(wǎng)絡(luò)地址。與運(yùn)算如下所示,上下對(duì)齊,1位1位的算,1與1=1 ,其余組合都為0
圖4
例如:計(jì)算IP地址為:202.99.160.50子網(wǎng)掩碼是255.255.255.0的網(wǎng)絡(luò)地址步驟如下:
1)將IP地址和子網(wǎng)掩碼分別換算成二進(jìn)制
202.99.160.50 換算成二進(jìn)制為 11001010·01100011·10100000·00110010
255.255.255.0 換算成二進(jìn)制為 11111111·11111111·11111111·00000000
2)將二者進(jìn)行與運(yùn)算
圖5
3)將運(yùn)算結(jié)果換算成十進(jìn)制,這就是網(wǎng)絡(luò)地址。
11001010·01100011·10100000·00000000換算成十進(jìn)制就是202.99.160.0
現(xiàn)在我們就可以解答上面三種情況的通與不通的問(wèn)題了。
1、從下面運(yùn)算結(jié)果可以看出二臺(tái)計(jì)算機(jī)的網(wǎng)絡(luò)地址都為192.168.0.0且IP地址不同,所以可以通。
圖6
2、從下面運(yùn)算結(jié)果可以看出1號(hào)機(jī)的網(wǎng)絡(luò)地址為192.168.0.0,2號(hào)機(jī)的網(wǎng)絡(luò)地址為192.168.1.0 不在一個(gè)網(wǎng)絡(luò),所以不通。
圖7
3、從下面運(yùn)算結(jié)果可以看出1號(hào)機(jī)的網(wǎng)絡(luò)地址為192.168.0.0,2號(hào)機(jī)的網(wǎng)絡(luò)地址為192.168.0.192 不在一個(gè)網(wǎng)絡(luò),所以不通
圖8
相信看到這應(yīng)該明白了為何計(jì)算網(wǎng)絡(luò)地址和如何計(jì)算了,但也許還有很多疑問(wèn),如IP地址為什么寫(xiě)成這樣,子網(wǎng)掩碼到底是怎么回事等等,別急,下面慢慢介紹。
1、IP地址的表示方法 IP地址 = 網(wǎng)絡(luò)號(hào)+主機(jī)號(hào) 把整個(gè)Internet網(wǎng)堪稱(chēng)單一的網(wǎng)絡(luò),IP地址就是給每個(gè)連在Internet網(wǎng)的主機(jī)分配一個(gè)在全世界范圍內(nèi)唯一的標(biāo)示符,Internet管理委員會(huì)定義了A、B、C、D、E五類(lèi)地址,在每類(lèi)地址中,還規(guī)定了網(wǎng)絡(luò)編號(hào)和主機(jī)編號(hào)。在TCP/IP協(xié)議中,IP地址是以二進(jìn)制數(shù)字形式出現(xiàn)的,共32bit,1bit就是二進(jìn)制中的1位,但這種形式非常不適用于人閱讀和記憶。因此Internet管理委員會(huì)決定采用一種"點(diǎn)分十進(jìn)制表示法"表示IP地址:面向用戶(hù)的文檔中,由四段構(gòu)成的32 比特的IP地址被直觀地表示為四個(gè)以圓點(diǎn)隔開(kāi)的十進(jìn)制整數(shù),其中,每一個(gè)整數(shù)對(duì)應(yīng)一個(gè)字節(jié)(8個(gè)比特為一個(gè)字節(jié)稱(chēng)為一段)。A、B、C類(lèi)最常用,下面加以介紹。本文介紹的都是版本4的IP地址,稱(chēng)為IPv4. 從上圖可以看出: A類(lèi)地址: C類(lèi)地址: 有些人對(duì)范圍是2x不太理解,舉個(gè)簡(jiǎn)單的例子加以說(shuō)明。如C類(lèi)網(wǎng),每個(gè)網(wǎng)絡(luò)允許有28-2= 254臺(tái)主機(jī)是這樣來(lái)的。因?yàn)镃類(lèi)網(wǎng)的主機(jī)位是8位,變化如下: 00000000 00000001 00000010 00000011 …… 11111110 11111111 除去00000000和11111111不用外,從00000001到11111110共有254個(gè)變化,也就是28-2個(gè)。下圖是IP地址的使用范圍。 2、幾個(gè)特殊的IP地址 1)私有地址 10.0.0.0~10.255.255.255 172.16.0.0~172.131.255.255 192.168.0.0~192.168.255.255 2)回送地址 A類(lèi)網(wǎng)絡(luò)地址127是一個(gè)保留地址,用于網(wǎng)絡(luò)軟件測(cè)試以及本地機(jī)進(jìn)程間通信,叫做回送地址(loopback address)。無(wú)論什么程序,一旦使用回送地址發(fā)送數(shù)據(jù),協(xié)議軟件立即返回之,不進(jìn)行任何網(wǎng)絡(luò)傳輸。含網(wǎng)絡(luò)號(hào)127的分組不能出現(xiàn)在任何網(wǎng)絡(luò)上。 小技巧: Ping 127.0.0.1,如果反饋信息失敗,說(shuō)明IP協(xié)議棧有錯(cuò),必須重新安裝TCP/IP協(xié)議。如果成功,ping本機(jī)IP地址,如果反饋信息失敗,說(shuō)明你的網(wǎng)卡不能和IP協(xié)議棧進(jìn)行通信。 3)廣播地址 TCP/IP規(guī)定,主機(jī)號(hào)全為"1"的網(wǎng)絡(luò)地址用于廣播之用,叫做廣播地址。所謂廣播,指同時(shí)向同一子網(wǎng)所有主機(jī)發(fā)送報(bào)文。 4)網(wǎng)絡(luò)地址 TCP/IP協(xié)議規(guī)定,各位全為"0"的網(wǎng)絡(luò)號(hào)被解釋成"本"網(wǎng)絡(luò)。由上可以看出:一、含網(wǎng)絡(luò)號(hào)127的分組不能出現(xiàn)在任何網(wǎng)絡(luò)上;二、主機(jī)和網(wǎng)關(guān)不能為該地址廣播任何尋徑信息。由以上規(guī)定可以看出,主機(jī)號(hào)全"0"全"1"的地址在TCP/IP協(xié)議中有特殊含義,一般不能用作一臺(tái)主機(jī)的有效地址。 3、子網(wǎng)掩碼 從上面的例子可以看出,子網(wǎng)掩碼的作用就是和IP地址與運(yùn)算后得出網(wǎng)絡(luò)地址,子網(wǎng)掩碼也是32bit,并且是一串1后跟隨一串0組成,其中1表示在IP地址中的網(wǎng)絡(luò)號(hào)對(duì)應(yīng)的位數(shù),而0表示在IP地址中主機(jī)對(duì)應(yīng)的位數(shù)。 1)標(biāo)準(zhǔn)子網(wǎng)掩碼 A類(lèi)網(wǎng)絡(luò)(1 - 126)缺省子網(wǎng)掩碼:255·0·0·0 255·0·0·0 換算成二進(jìn)制為 11111111·00000000·00000000·00000000 可以清楚地看出前8位是網(wǎng)絡(luò)地址,后24位是主機(jī)地址,也就是說(shuō),如果用的是標(biāo)準(zhǔn)子網(wǎng)掩碼,看第一段地址即可看出是不是同一網(wǎng)絡(luò)的。如21.0.0.0.1和21.240.230.1,第一段為21屬于A類(lèi),如果用的是默認(rèn)的子網(wǎng)掩碼,那這兩個(gè)地址就是一個(gè)網(wǎng)段的。 B類(lèi)網(wǎng)絡(luò)(128 - 191)缺省子網(wǎng)掩碼:255·255·0·0 C類(lèi)網(wǎng)絡(luò)(192 - 223)缺省子網(wǎng)掩碼:255·255·255·0 B類(lèi)、C類(lèi)分析同上。 2)特殊的子網(wǎng)掩碼 標(biāo)準(zhǔn)子網(wǎng)掩碼出現(xiàn)的都是255和0的組合,在實(shí)際的應(yīng)用中還有下面的子網(wǎng)掩碼 255·128·0·0 255·192·0·0 。。。。。。 255·255·192·0 255·255·240·0 。。。。。。 255·255·255·248 255·255·255·252 這些子網(wǎng)掩碼又是什么意思呢?這些子網(wǎng)掩碼的出現(xiàn)是為了把一個(gè)網(wǎng)絡(luò)劃分成多個(gè)網(wǎng)絡(luò)。 還記得上面的例子嗎?如下所示:192·168·0·1和192·168·0·200如果是默認(rèn)掩碼255.255.255.0兩個(gè)地址就是一個(gè)網(wǎng)絡(luò)的,如果掩碼變?yōu)?55.255.255.192這樣各地址就不屬于一個(gè)網(wǎng)絡(luò)了。下面的子網(wǎng)劃分將作詳細(xì)介紹。 表1是幾個(gè)子網(wǎng)掩碼計(jì)算過(guò)程中非常有用的十進(jìn)制和二進(jìn)制的對(duì)照 |