1.概述
IP是TCP/IP協(xié)議族中最為核心的協(xié)議。所有的TCP,UDP,ICMP,IGMP數(shù)據(jù)都以IP數(shù)據(jù)報(bào)格式傳輸。
IP提供不可靠,無連接的數(shù)據(jù)報(bào)傳送服務(wù)。
- 不可靠:它不能保證IP數(shù)據(jù)報(bào)能成功的到達(dá)目的地。
- 無連接:IP并不維護(hù)關(guān)于后續(xù)數(shù)據(jù)報(bào)的狀態(tài)信息。每個(gè)數(shù)據(jù)報(bào)的處理都是相互獨(dú)立的。
2.IP數(shù)據(jù)報(bào)
IP數(shù)據(jù)報(bào)的格式如圖所示,普通的IP數(shù)據(jù)報(bào)首部為20個(gè)字節(jié),除非含有選項(xiàng)字段。
- 版本號(hào):目前的版本號(hào)為4,即IPv4
- 首部長(zhǎng)度:指的是首部占32bit字的數(shù)目,包括選項(xiàng)長(zhǎng)度
- 服務(wù)類型(TOS):(現(xiàn)在大多數(shù)的TCP/IP實(shí)現(xiàn)不支持TOS特性)4bit的TOS分別代表:最小延遲,最大吞吐量,最高可靠性和最小費(fèi)用。4bit只能置其中1bit,如果4bit均為0,則為一般服務(wù)。
- 總長(zhǎng)度字段:整個(gè)IP數(shù)據(jù)報(bào)的長(zhǎng)度,以字節(jié)為單位??傞L(zhǎng)度是IP首部中必要的內(nèi)容
- 標(biāo)識(shí)字段:唯一地標(biāo)識(shí)主機(jī)發(fā)送的每一份數(shù)據(jù)報(bào)。
- 標(biāo)志字段:會(huì)在IP分片和重組的時(shí)候使用到。標(biāo)志字段的最低位記為MF,中間的一位記為DF。MF=1表示后面還有分片。DF=0時(shí),才能進(jìn)行分片。
- TTL(time-to-live):設(shè)置了數(shù)據(jù)可以經(jīng)過的最多的路由器數(shù),每經(jīng)過一次路由器,該值-1.
- 首部檢驗(yàn)和:是根據(jù)IP首部計(jì)算的檢驗(yàn)和碼。
- 源地址:
- 目的地址:
- 任選項(xiàng):(一般沒有)包括以下內(nèi)容
- 安全和處理限制
- 記錄路徑(每個(gè)路由器都記錄它的IP地址)
- 時(shí)間戳
- 寬松的源站選路
- 嚴(yán)格的源站選路
3.IP路由選擇(見TCP/IP詳解學(xué)習(xí)(6)-- IP選路)
路由表:
路由表項(xiàng):包括5bit標(biāo)志,目的IP地址(主機(jī),網(wǎng)絡(luò),默認(rèn)),下一站路由的IP地址(間接路由)或者本地接口的我IP地址(直接路由)及指向本接口的指針。
路由表中的每一項(xiàng)都包含下面這些信息:
- 目的IP地址。可以是完整的主機(jī)地址,也可以是網(wǎng)絡(luò)地址,由標(biāo)志字段來指定
- 下一站(或者下一跳)路由器的IP地址。
- 標(biāo)志。其中一個(gè)標(biāo)志指明目的IP地址是網(wǎng)絡(luò)地址還是主機(jī)地址,另一個(gè)標(biāo)志指明下一站路由器是否為真的下一站路由器,還是一個(gè)直接相連的接口。
- 為數(shù)據(jù)報(bào)的傳輸指定一個(gè)網(wǎng)絡(luò)接口。
IP路由選擇主要完成以下功能:
- 搜索路由表,尋找能與目的IP地址完全匹配的表目。
- 搜索路由標(biāo),尋找能與網(wǎng)絡(luò)號(hào)相匹配的表目。
- 搜索路由表,尋找標(biāo)為默認(rèn)的表目
4.IP地址
如今的IP網(wǎng)絡(luò)使用32位地址,以點(diǎn)分十進(jìn)制表示,如192.168.0.1。
地址格式為:IP地址=網(wǎng)絡(luò)地址+主機(jī)地址或 IP地址=網(wǎng)絡(luò)地址+子網(wǎng)地址+主機(jī)地址。
根據(jù)用途和安全性級(jí)別的不同,IP地址還可以大致分為兩類:公共地址和私有地址。公用地址在Internet中使用,可以在Internet中隨意訪問。私有地址只能在內(nèi)部網(wǎng)絡(luò)中使用,只有通過代理服務(wù)器才能與Internet通信。
5.IP地址分類
用于識(shí)別主機(jī)所在的網(wǎng)絡(luò);
用于識(shí)別該網(wǎng)絡(luò)中的主機(jī)。
- IP地址分為五類,A類保留給政府機(jī)構(gòu),B類分配給中等規(guī)模的公司,C類分配給任何需要的人,D類用于組播,E類用于實(shí)驗(yàn),各類可容納的地址數(shù)目不同。
A、B、C三類IP地址的特征:當(dāng)將IP地址寫成二進(jìn)制形式時(shí),A類地址的第一位總是0,B類地址的前兩位總是10,C類地址的前三位總是110。
(1)A類地址第1字節(jié)為網(wǎng)絡(luò)地址,其它3個(gè)字節(jié)為主機(jī)地址。它的第1個(gè)字節(jié)的第一位固定為0.
(2)A類地址范圍:1.0.0.1---126.255.255.254
(3)A類地址中的私有地址和保留地址:
① 10.X.X.X是私有地址(所謂的私有地址就是在互聯(lián)網(wǎng)上不使用,而被用在局域網(wǎng)絡(luò)中的地址)。
范圍(10.0.0.1---10.255.255.254)
② 127.X.X.X是保留地址,用做循環(huán)測(cè)試用的。
(1) B類地址第1字節(jié)和第2字節(jié)為網(wǎng)絡(luò)地址,其它2個(gè)字節(jié)為主機(jī)地址。它的第1個(gè)字節(jié)的前兩位固定為10.
(2) B類地址范圍:128.0.0.1---191.255.255.254。
(3) B類地址的私有地址和保留地址
① 172.16.0.0---172.31.255.254是私有地址
② 169.254.X.X是保留地址。如果你的IP地址是自動(dòng)獲取IP地址,而你在網(wǎng)絡(luò)上又沒有找到可用的DHCP服務(wù)器。就會(huì)得到其中一個(gè)IP。
191.255.255.255是廣播地址,不能分配。
(1)C類地址第1字節(jié)、第2字節(jié)和第3個(gè)字節(jié)為網(wǎng)絡(luò)地址,第4個(gè)字節(jié)為主機(jī)地址。另外第1個(gè)字節(jié)的前三位固定為110。
(2)C類地址范圍:192.0.0.1---223.255.255.254。
(3) C類地址中的私有地址:
192.168.X.X是私有地址。(192.168.0.1---192.168.255.255)
(1) D類地址不分網(wǎng)絡(luò)地址和主機(jī)地址,它的第1個(gè)字節(jié)的前四位固定為1110。
(2) D類地址范圍:224.0.0.1---239.255.255.254
(1) E類地址不分網(wǎng)絡(luò)地址和主機(jī)地址,它的第1個(gè)字節(jié)的前四位固定為1111。
(2) E類地址范圍:240.0.0.1---255.255.255.254
IP地址如果只使用ABCDE類來劃分,會(huì)造成大量的浪費(fèi):一個(gè)有500臺(tái)主機(jī)的網(wǎng)絡(luò),無法使用C類地址。但如果使用一個(gè)B類地址,6萬多個(gè)主機(jī)地址只有500個(gè)被使用,造成IP地址的大量浪費(fèi)。因此,IP地址還支持VLSM技術(shù),可以在ABC類網(wǎng)絡(luò)的基礎(chǔ)上,進(jìn)一步劃分子網(wǎng)。
為了標(biāo)識(shí)IP地址的網(wǎng)絡(luò)部分和主機(jī)部分,要和地址掩碼(Address Mask)結(jié)合,掩碼跟IP地址一樣也是32 bits,用點(diǎn)分十進(jìn)制表示。IP地址網(wǎng)絡(luò)部分對(duì)應(yīng)的掩碼部分全為“1”,主機(jī)部分對(duì)應(yīng)的掩碼全為“0”。 缺省狀態(tài)下,如果沒有進(jìn)行子網(wǎng)劃分,A類網(wǎng)絡(luò)的子網(wǎng)掩碼為255.0.0.0,B類網(wǎng)絡(luò)的子網(wǎng)掩碼為255.255.0.0,C類網(wǎng)絡(luò)的子網(wǎng)掩碼為255.255.255.0。利用子網(wǎng),網(wǎng)絡(luò)地址的使用會(huì)更加有效。
有了子網(wǎng)掩碼后,IP地址的標(biāo)識(shí)方法如下:
例:192.168.1.1 255.255.255.0或者標(biāo)識(shí)成192.168.1.1/24(掩碼中“1”的個(gè)數(shù))
6.特殊的IP地址
在IP地址空間中,有的IP地址不能為設(shè)備分配的,有的IP地址不能用在公網(wǎng),有的IP地址只能在本機(jī)使用,諸如此類的特殊IP地址眾多:注意它和廣播的區(qū)別。從224.0.0.0到239.255.255.255都是這樣的地址。224.0.0.1特指所有主機(jī), 224.0.0.2特指所有路由器。
主機(jī)使用了DHCP功能自動(dòng)獲得一個(gè)IP地址。
廣播通信是一對(duì)所有的通信方式。若一個(gè)IP地址的2進(jìn)制數(shù)全為1,也就是255.255.255.255,則這個(gè)地址用于定義整個(gè)互聯(lián)網(wǎng)。如果設(shè)備想使IP數(shù)據(jù)報(bào)被整個(gè)Internet所接收,就發(fā)送這個(gè)目的地址全為1的廣播包,但這樣會(huì)給整個(gè)互聯(lián)網(wǎng)帶來災(zāi)難性的負(fù)擔(dān)。因此網(wǎng)絡(luò)上的所有路由器都阻止具有這種類型的分組被轉(zhuǎn)發(fā)出去,使這樣的廣播僅限于本地網(wǎng)段。
一個(gè)網(wǎng)絡(luò)中的最后一個(gè)地址為直接廣播地址,也就是HostID全為1的地址。主機(jī)使用這種地址把一個(gè)IP數(shù)據(jù)報(bào)發(fā)送到本地網(wǎng)段的所有設(shè)備上,路由器會(huì)轉(zhuǎn)發(fā)這種數(shù)據(jù)報(bào)到特定網(wǎng)絡(luò)上的所有主機(jī)。
當(dāng)某個(gè)主機(jī)向同一網(wǎng)段上的其他主機(jī)發(fā)送報(bào)文時(shí)就可以使用這樣的地址,分組也不會(huì)被路由器轉(zhuǎn)發(fā)。
127網(wǎng)段的所有地址都稱為環(huán)回地址,主要用來測(cè)試網(wǎng)絡(luò)協(xié)議是否工作正常的作用。比如使用ping環(huán)回地址127.0.0.1就可以測(cè)試本地TCP/IP協(xié)議是否已正確安裝。另外一個(gè)用途是當(dāng)客戶進(jìn)程用環(huán)回地址發(fā)送報(bào)文給位于同一臺(tái)機(jī)器上的服務(wù)器進(jìn)程,來測(cè)試服務(wù)是否正常啟動(dòng)。
IP地址空間中,有一些IP地址被定義為專用地址,這樣的地址不能為Internet網(wǎng)絡(luò)的設(shè)備分配,只能在企業(yè)內(nèi)部使用,因此也稱為私有地址。
這些專有地址是:
10/8 地址范圍:10.0.0.0到10.255.255.255 共有2的24次方個(gè)地址
172.16/12 地址范圍:172.16.0.0至172.31.255.255 共有2的20次方個(gè)地址
192.168/16 地址范圍:192.168.0.0至192.168.255.255 共有2的16次方個(gè)地址