-
tcp/ip的網(wǎng)絡(luò)層相關(guān)封包與數(shù)據(jù)
????1)? IP封包的封裝:IPv4有32位,IPv6有128位。IP封包最大可以為65535bytes。其結(jié)構(gòu)如下圖:
????需要額外說明的有:
????????服務(wù)類型:主要分為,PPP,表示此IP封包的優(yōu)先度,目前很少是使用;D,若為0表示一般延遲(delay),若為1表示為低延遲;T,若為0表示為一般傳輸量,若為1表示為高傳輸量;R,若為0表示為一般可靠度,若為1表示為高可靠度;UU:保留尚未被使用;總共合起來為格式為PPPDTRUU。
????????旗標:格式為DM,其中,D,若為0表示可以分段,若為1表示不可分段;M,若為0表示此IP為最后分段,若為1表示非最后分段。
????????分段偏移:表示目前這個IP分段在原始IP封包中所占的位置。透過TotalLength,Identification,F(xiàn)lags以及Fragment Offset才能將小的IP分段在收受端組合起來。
????????存活時間:范圍0-255,當IP封包通過一個路由器時,TTL會減一,當TTL為0時,這個封包將會被丟棄。
????????協(xié)議代碼:各個代碼的含義為,1,ICMP(InternetMessage Control);2,IGMP(Internet Group Management Protocol);3,GGP(gateway-to-GatewayProtocol);4,IP(IP in IP encapsulation);6,TCP(Transmission Control Protocol);8,EGP(ExteriorGateway Protocol);17,udp(Use Data Program)。
????????表頭檢查碼:用來檢查這個IP表頭的錯誤檢查碼之用。
????????目標地址:目標IP地址
????????其他參數(shù):額外選項,提供包括安全處理機制,路由記錄,時間戳,嚴格與寬松之來源路由等。
????????補齊項目:由于Options的內(nèi)容不一定有多大,但IP每個數(shù)據(jù)都必須是32bits,所以,若Options的數(shù)據(jù)不足32bits時,則有padding補齊。
????????2)? IP地址的組成與分級:
????????IP組成:網(wǎng)絡(luò)號碼和主機號碼。
????????同一網(wǎng)域(網(wǎng)段):在同一個物理網(wǎng)段內(nèi),主機的IP具有相同的網(wǎng)絡(luò)號和獨立的主機號。而主機號全為0和全為1(廣播地址)的IP是不可用的。同一網(wǎng)段內(nèi)的主機如果設(shè)定相同的網(wǎng)域IP范圍(不可重復)可以透過CSMA/CD的功能直接在區(qū)網(wǎng)內(nèi)用廣播進行網(wǎng)絡(luò)的聯(lián)機(亦即可以直接網(wǎng)卡對網(wǎng)卡傳遞數(shù)據(jù))。在同一個物理網(wǎng)段之內(nèi),如果兩部主機設(shè)定成不同的IP網(wǎng)段,則由于廣播地址的不同,導致無法透過廣播的方式來進行聯(lián)機。此時要透過路由器(router)來進行溝通才能將兩個網(wǎng)域連接在一起。
????????IP分級:整個IP分為五個等級,如下圖:
????????
????????D類:一般用來作為群播的特殊功能只用(最常用在大批計算機的網(wǎng)絡(luò)還原)。
????????E類:保留沒有使用的網(wǎng)段。
????3)? IP種類與獲取方式
????????IP種類:公共IP,由InterNIC統(tǒng)一規(guī)劃的IP,這種IP才能連上Internet;私有(保留)IP:不能連上Internet的IP,主要用于局域網(wǎng)絡(luò)內(nèi)的主機聯(lián)機規(guī)劃。
????????私有IP分類:A類,10.0.0.0~10.255.255.255;B類,172.16.0.0~172.31.255.255;C類,192.168.0.0~192.168.255.255
????????自動取得網(wǎng)絡(luò)參數(shù):在局域網(wǎng)絡(luò)內(nèi)會有一部主機專門負責管理所有計算機的網(wǎng)絡(luò)參數(shù),當其他主機網(wǎng)絡(luò)啟動時,會主動向該服務(wù)要求IP參數(shù),若取得網(wǎng)絡(luò)相關(guān)參數(shù)后,主機就能夠自行設(shè)定好所有服務(wù)器給你的網(wǎng)絡(luò)參數(shù),從而連上Internet。
????4)? Netmask,子網(wǎng)與CIDR(Classless Interdomain Routing)
????????Netmask:網(wǎng)絡(luò)號碼全取1而主機號碼全取0的IP地址。
????????Network:該網(wǎng)段的第一個IP地址,即網(wǎng)絡(luò)號碼為網(wǎng)絡(luò)號碼,而主機號碼全為0
????????網(wǎng)域表示方法:常用Network以及Netmask來表示一個網(wǎng)域。192.168.0.0/255.255.255.0或192.168.0.0/24(其中24表示網(wǎng)絡(luò)號占24位)
????????無等級網(wǎng)域間路由(無類域間路由):將網(wǎng)絡(luò)號借用來作為主機號,以使得多個網(wǎng)域?qū)懗梢粋€,這種打破原本IP代表等級的方式就被稱為無等級網(wǎng)域間路由(可以減少路由信息,從而提升性能)。
????5)? 路由的概念:當一部主機發(fā)送數(shù)據(jù)到另一臺主機時,這臺主機會查看本身的路由信息并與數(shù)據(jù)的目標地址比較,若找到目標IP,則發(fā)送到指定的機器,否則傳送到默認網(wǎng)關(guān),再進行傳輸。重復此過程,直到數(shù)據(jù)到達目的地。
????6)? route [-n]:觀察路由表的指令,參數(shù)
????? ? a)-n:將主機名以IP的方式顯示。
????????b)數(shù)據(jù)顯示解讀,
????????Destination:Network的意思
????????Gateway:默認網(wǎng)關(guān),若為0.0.0.0表示不需要額外的IP
????????Genmask:Netmask
????????Flags:旗標,U,代表該路由可用;G,代表該網(wǎng)絡(luò)需要經(jīng)由Gateway來幫忙傳遞;H:代表該行路由為一部主機,而非一整個網(wǎng)絡(luò)
????????Iface:接口(Interface)即網(wǎng)卡代號。
????7)? ARP(Address Resolution Protocol,網(wǎng)絡(luò)地址解析協(xié)議),RARP(Revers ARP,反向地址解析協(xié)議。
????8)? arp [-nd];arp –s hostname(IP) Hardware_address:獲取本機的ARP表格內(nèi)的IP/MAC對應(yīng)的數(shù)據(jù),參數(shù):
????????a)-n:以主機IP的形態(tài)顯示
????????b)-d:將hostname的hardware_address由ARP table當中刪除掉。
????????c)-s:設(shè)定某個IP或hostname的MAC到ARP table中(用于建立靜態(tài)的ARP)。
????9)? ICMP(Internet Control Message Protocol,因特網(wǎng)訊息控制協(xié)議):是一個錯誤偵測與回報的機制,最大的功能就是可以確保我們網(wǎng)絡(luò)的聯(lián)機狀態(tài)與聯(lián)機的正確性。ICMP也是網(wǎng)絡(luò)層重要的封包之一,不過,這個封包并非獨立存在,而是納入到IP封包中,也就是說,ICMP同樣是透過IP封包來進行數(shù)據(jù)傳送的。ICMP比較常見的ICMP的類別:
????????0:echo Reply,代表一個響應(yīng)信息
????????3:Destination Unreachable,表示目的地不可到達
????????4:Source Quench(當router的負載過高時,此類別碼可用來讓發(fā)送端停止發(fā)送訊息)
????????5:Redirect,(用來重新導向路由路徑信息)
????????8:Echo Request,請求響應(yīng)消息
????????11:Time Exceeded for a Datagram,當數(shù)據(jù)封包在某些路由傳送的現(xiàn)象中造成超時狀態(tài),此類別碼可告知來源該封包已被忽略的訊息
????????12:Parameter Problem on a Datagram,當一個ICMP封包重復之前的錯誤時,會回復來源主機關(guān)于參數(shù)錯誤的訊息。
????????13:timestamp Request,要求對方送出時間訊息,用以計算路由時間差異,以滿足同步性協(xié)議的要求
????????14:Timestamp Replay,此訊息純粹是響應(yīng)TImestamp Request用的
????????15:Information Request,在RARP協(xié)議應(yīng)用之前,此訊息用來在開機時,取得網(wǎng)絡(luò)信息。
????????16:Information Replay,用以響應(yīng)Information Request訊息
????????17:Address Mask Request,這訊息是用來查詢子網(wǎng)mask設(shè)定信息
????????18:Address Mask Reply,響應(yīng)子網(wǎng)mask查詢訊息的。
????ping和trcaceroute兩個指令可以透過ICMP封包來確認與回報網(wǎng)絡(luò)主機的狀態(tài),