計(jì)算機(jī)網(wǎng)絡(luò)(3)——IP協(xié)議
IPV4數(shù)據(jù)報(bào)文的分組格式由首部和數(shù)據(jù)部分組成,首部的前部分是固定的20B長度,后續(xù)為可變部分的填充。
?

版本號(hào)通常為4,首部長度4bit 單位是4個(gè)字節(jié)。
標(biāo)識(shí)是一個(gè)計(jì)數(shù)器,每產(chǎn)生一個(gè)數(shù)據(jù)包就加1,IP數(shù)據(jù)包存在大小限制,需要分片傳輸之后重新組裝起來,與序列號(hào)無關(guān)因?yàn)镮P是無連接的服務(wù)。
源地址和目的地址的長度就是32位bit,4字節(jié)。
協(xié)議字段就是表明IP數(shù)據(jù)包傳輸?shù)膬?nèi)容是哪種上層協(xié)議,比如6代表TCP,17代表UDP。
分片的例子如下所示,MF和DF分別為標(biāo)志字段中的第二位和第三位。DF為0表示可以被分片,MF為1表示后續(xù)仍然有數(shù)據(jù)包。
?

???連接因特網(wǎng)上的每臺(tái)主機(jī)都會(huì)被分配一個(gè)32位長度的IPV4地址,具體則由<網(wǎng)絡(luò)號(hào),主機(jī)號(hào)>組成,ABC類網(wǎng)絡(luò)的劃分方式則是根據(jù)網(wǎng)絡(luò)號(hào)的位數(shù)來區(qū)分的,分別是1字節(jié),2字節(jié),3字節(jié)。

???一個(gè)路由器是有不同的接口都有不同的IP地址,甚至可以連接不同分類的廣播域,可以有分割廣播域的作用。但是轉(zhuǎn)發(fā)器和橋接器則不需要具備這個(gè)功能,他們連接的內(nèi)容,仍然屬于同一個(gè)網(wǎng)絡(luò)(同一個(gè)廣播域)。
?
主機(jī)號(hào)全0表示本網(wǎng)絡(luò)自身
主機(jī)號(hào)全1 表示網(wǎng)絡(luò)內(nèi)的廣播地址
網(wǎng)絡(luò)號(hào)127表示位環(huán)回地址 ,表示任意主機(jī)自身,可以作為目的地址。
32位全零表示本網(wǎng)絡(luò)本主機(jī),32位全一則是整個(gè)TCP/IP網(wǎng)絡(luò)的廣播地址。
?
所有的廣播地址都不能作為源地址。
網(wǎng)絡(luò)號(hào)全零就表示本網(wǎng)絡(luò)上的意思,直接根據(jù)主機(jī)號(hào)尋址即可。 ?????
?
NAT網(wǎng)絡(luò)地址轉(zhuǎn)換,從專用私有的網(wǎng)絡(luò)地址轉(zhuǎn)換為公用地址。
?

NAT路由器就承擔(dān)著將私有IP轉(zhuǎn)換為公有IP的任務(wù),根據(jù)端口號(hào)的不同來映射到不同的主機(jī)上,一般的路由器在轉(zhuǎn)發(fā)數(shù)據(jù)包時(shí)是不會(huì)改變源地址和目的地址的,但是NAT功能的路由器就會(huì)發(fā)生轉(zhuǎn)換。
?
?
子網(wǎng)劃分的目標(biāo)是減小主機(jī)號(hào)的浪費(fèi),可能一個(gè)網(wǎng)絡(luò)下沒有那么多個(gè)主機(jī)號(hào)的使用,就需要更加精細(xì)的劃分出網(wǎng)絡(luò)號(hào)的信息。
劃分子網(wǎng)是一個(gè)單位內(nèi)部的事情,不改變原有的網(wǎng)絡(luò)號(hào),只是對主機(jī)號(hào)進(jìn)行分割,對外還是正常表現(xiàn)。內(nèi)部組成是{ <網(wǎng)絡(luò)號(hào)> , <子網(wǎng)號(hào)> , <主機(jī)號(hào)> }三級IP的組成形式。
子網(wǎng)掩碼就是根據(jù)不同網(wǎng)絡(luò)種類的劃分以及子網(wǎng)掩碼的區(qū)別,網(wǎng)絡(luò)號(hào)全1 ,主機(jī)號(hào)全0 ,子網(wǎng)號(hào)被算進(jìn)網(wǎng)絡(luò)號(hào)中,也得是全1,主機(jī)號(hào)的位數(shù)要相應(yīng)的減少。將IP地址和子網(wǎng)掩碼按位進(jìn)行與操作就得到了子網(wǎng)的網(wǎng)絡(luò)號(hào)。
一臺(tái)主機(jī)在設(shè)置IP地址信息的同時(shí)必須設(shè)置子網(wǎng)掩碼。
同屬于一個(gè)子網(wǎng)的所有主機(jī)及路由器相應(yīng)端口,必須設(shè)置相同的子網(wǎng)掩碼。
路由器的路由表中必須包含目的網(wǎng)絡(luò)的IP地址,目的網(wǎng)絡(luò)的子網(wǎng)掩碼,下一跳的地址。路由器之間在交換信息的時(shí)候也得將自身的子網(wǎng)掩碼告訴給對方。
?
?
?
無分類編址CIDR相當(dāng)于變長子網(wǎng)掩碼的一種操作,消除了ABC類網(wǎng)絡(luò)和子網(wǎng)號(hào)的概念,直接使用網(wǎng)絡(luò)前綴來代替子網(wǎng)的概念,子網(wǎng)前綴的位數(shù)是不固定的,可以理解成網(wǎng)絡(luò)號(hào)長度也就是沒有限制的。{<網(wǎng)絡(luò)前綴>,<主機(jī)號(hào)>}組成,IP/20,20就表示前綴的位數(shù)。子網(wǎng)掩碼就是把網(wǎng)絡(luò)前綴全為1,主機(jī)號(hào)全0得到,可以就把網(wǎng)絡(luò)前綴理解成網(wǎng)絡(luò)號(hào)。
相同的連續(xù)IP地址組成CIDR地址塊,一個(gè)地址塊就表示很多個(gè)地址,這種就稱為路由聚合,或者稱為超網(wǎng)。CIDR的最大特性就是靈活分配,可以在主機(jī)號(hào)中進(jìn)一步來更加靈活的劃分子網(wǎng)。
路由算法:最長匹配原則,使用CIDR地址塊時(shí),通過計(jì)算得到的網(wǎng)絡(luò)前綴中,找到最長的相同的那個(gè)IP地址進(jìn)行轉(zhuǎn)發(fā)。注意并不是十進(jìn)制離得越近,二進(jìn)制表示位數(shù)相同的越多,有可能當(dāng)大于IP后會(huì)發(fā)生在前面位進(jìn)位的情況,最長匹配原則就不滿足了。
?
?
?