計(jì)算機(jī)網(wǎng)絡(luò)第5章ICMPv6及應(yīng)用.ppt_第1頁
計(jì)算機(jī)網(wǎng)絡(luò)第5章ICMPv6及應(yīng)用.ppt_第2頁
計(jì)算機(jī)網(wǎng)絡(luò)第5章ICMPv6及應(yīng)用.ppt_第3頁
計(jì)算機(jī)網(wǎng)絡(luò)第5章ICMPv6及應(yīng)用.ppt_第4頁
計(jì)算機(jī)網(wǎng)絡(luò)第5章ICMPv6及應(yīng)用.ppt_第5頁
已閱讀5頁,還剩87頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、李向麗,鄭州大學(xué)信息工程學(xué)院,下一代互聯(lián)網(wǎng)協(xié)議IPv6,第一部分IPv6技術(shù),第2章IPv6概述 第3章IPv6編址技術(shù) 第4章IPv6分組及協(xié)議機(jī)制 第5章ICMPv6及應(yīng)用 第6章IPv6過渡機(jī)制,5.1 ICMPv6概述 5.2 ICMPv6報(bào)文基本格式 5.3 ICMPv6差錯(cuò)報(bào)告報(bào)文 5.4 ICMPv6信息報(bào)文 5.5 鄰節(jié)點(diǎn)探測協(xié)議(NDP) 5.6 ICMPv6多播組成員報(bào)文,第5章 ICMPv6及應(yīng)用,5.1 ICMPv6概述,在RFC2463中定義Internet Control Message Protocol Version 6(ICMPv6協(xié)議)。 在IPv6中,IC

2、MPv6實(shí)現(xiàn)IPv4中ICMP、ARP和IGMP的功能。 ICMPv6協(xié)議功能: 向源節(jié)點(diǎn)報(bào)告關(guān)于目的地址傳輸IPv6包的錯(cuò)誤和信息,具有差錯(cuò)報(bào)告、網(wǎng)絡(luò)診斷、鄰節(jié)點(diǎn)發(fā)現(xiàn)和多播實(shí)現(xiàn)等功能。,ICMPv6報(bào)文的封裝,ICMPv6報(bào)文封裝在IPv6中,具有擴(kuò)展首部的IPv6,封裝ICMPv6報(bào)文,封裝在IPv6分組中的ICMPv6報(bào)文,ICMP:是在TCP/IP網(wǎng)絡(luò)中傳遞網(wǎng)絡(luò)控制信息的主要手段,同時(shí),ICMP還提供了差錯(cuò)報(bào)告的功能。 IPv6的定義中,對IPv4的ICMP進(jìn)行了修訂。刪除了一些極少使用的ICMP報(bào)文,更完整地加入了ICMP的多播控制功能,對其他原有的ICMP報(bào)文做了針對IPv6的修改

3、。經(jīng)過修改,ICMPv6與原有的ICMP已經(jīng)不再兼容。,已定義的ICMPv6報(bào)文類型,5.2 ICMPv6報(bào)文的基本格式,5.2.1 ICMPv6報(bào)文校驗(yàn)和的計(jì)算 5.2.2 封裝ICMPv6報(bào)文的IPv6分組的源地址 5.2.3 ICMPv6報(bào)文的處理規(guī)則,5.2 ICMPv6報(bào)文的基本格式,類型:標(biāo)識ICMPv6報(bào)文類型,它的值根據(jù)報(bào)文的內(nèi)容來確定。 代碼:用于確定ICMPv6進(jìn)一步的信息,對同一類型的報(bào)文進(jìn)行了更詳細(xì)的分類。 校驗(yàn)和:用于檢測ICMPv6的報(bào)文是否正確傳送。 報(bào)文體:用于返回出錯(cuò)的參數(shù)和記錄出錯(cuò)報(bào)文的片段,幫助源節(jié)點(diǎn)判斷錯(cuò)誤的原因?;蚴瞧渌鼌?shù)。,5.2.1 ICMPv6

4、報(bào)文校驗(yàn)和的計(jì)算,校驗(yàn)和16bit,計(jì)算范圍包括兩部分。 ICMPv6報(bào)文 IPv6偽首部(偽首部中下一首部字段的值為58)。 計(jì)算方法: 校驗(yàn)和字段被設(shè)置為0 ICMPv6對校驗(yàn)范圍內(nèi)的數(shù)據(jù)以16比特為單位,做1的補(bǔ)碼的加法運(yùn)算。 在ICMPv6首部校驗(yàn)和字段中,置入此16比特的和。,ICMPv6校驗(yàn)和的校驗(yàn)范圍,IPv6的偽首部,ICMPv6報(bào)文,5.2.2 封裝ICMPv6報(bào)文的IPv6分組的源地址,源地址幫助IPv6分組的源節(jié)點(diǎn)判斷分組在何處出錯(cuò)。一個(gè)發(fā)送ICMPv6報(bào)文的節(jié)點(diǎn)在計(jì)算校驗(yàn)和以前,要在IPv6首部中謹(jǐn)慎填寫源地址和目的 IPv6地址。選擇ICMPv6報(bào)文源地址的主要原則有

5、四個(gè): 前二個(gè)規(guī)則是針對ICMPv6信息報(bào)文制定的。 第一個(gè)規(guī)則:若原IPv6分組是單播分組,ICMPv6應(yīng)答報(bào)文的源地址應(yīng)該設(shè)置為原IPv6分組中的目的地址。 第二個(gè)規(guī)則:若是多播Multi-cast group或任播any-cast group報(bào)文,則ICMPv6應(yīng)答報(bào)文必須將收到該IPv6分組的接口的IP地址作為源地址。,第三個(gè)規(guī)則:適用于ICMP差錯(cuò)報(bào)告報(bào)文。 在許多情況下,生成差錯(cuò)報(bào)文的并非是目的節(jié)點(diǎn)。因此差錯(cuò)報(bào)文不能將原報(bào)文中的目的地址作為ICMP差錯(cuò)報(bào)文的源地址使用,而應(yīng)將報(bào)告IPv6分組出錯(cuò)信息的節(jié)點(diǎn)地址作為源地址。 例如,若是分組過大ICMPv6差錯(cuò)報(bào)文時(shí),該源地址應(yīng)該是不能

6、接納原IPv6分組的路由器的某個(gè)接口的IPv6地址。 第四個(gè)規(guī)則:主動(dòng)發(fā)送的ICMPv6報(bào)文及不適用上述規(guī)則的ICMP報(bào)文,發(fā)送ICMPv6報(bào)文的節(jié)點(diǎn)必須查看自己的路由表,判斷哪一個(gè)網(wǎng)絡(luò)接口將被用于發(fā)送ICMPv6報(bào)文,則將該接口的一個(gè)單播地址作為源地址。,5.2.3 ICMPv6報(bào)文的處理規(guī)則,當(dāng)接收到ICMPv6差錯(cuò)報(bào)告報(bào)文時(shí),如果無法識別具體的類型,必須將它交給上層協(xié)議模塊進(jìn)行處理。 當(dāng)接收到ICMPv6信息報(bào)文時(shí),如果無法識別具體的類型,必須將它丟棄。 所有的ICMPv6差錯(cuò)報(bào)告報(bào)文,都應(yīng)該在IPv6所要求的最小MTU允許范圍內(nèi),盡可能多地包括引發(fā)該ICMPv6差錯(cuò)報(bào)文的IPv6分組片

7、段,以便給IPv6分組的源節(jié)點(diǎn)提供盡可能多的診斷信息。,ICMPv6報(bào)文的處理規(guī)則(續(xù)1),在需要將ICMPv6報(bào)文上傳給其上層協(xié)議模塊處理的情況下,上層協(xié)議的具體類型,應(yīng)該從封裝該ICMPv6報(bào)文的IPv6分組的下一首部字段中獲取。但是,如果該IPv6分組攜帶有很多擴(kuò)展首部,則可能會(huì)導(dǎo)致有關(guān)上層協(xié)議類型的信息沒有被包含在ICMPv6報(bào)文中。這時(shí),只能將該差錯(cuò)報(bào)告報(bào)文在IP層處理完后丟棄掉。 不能產(chǎn)生ICMPv6差錯(cuò)報(bào)告報(bào)文的發(fā)送情況: 一個(gè)ICMPv6差錯(cuò)報(bào)告報(bào)文。這主要是為了避免無休止地產(chǎn)生ICMPv6報(bào)文而引起網(wǎng)絡(luò)擁塞。,ICMPv6報(bào)文的處理規(guī)則(續(xù)2),一個(gè)發(fā)往多播地址的IPv6分組

8、。但有兩個(gè)例外: 當(dāng)使用IPv6多播地址進(jìn)行路徑MTU探測時(shí),可以發(fā)送“報(bào)文過長”差錯(cuò)報(bào)告報(bào)文; 允許使用參數(shù)錯(cuò)誤報(bào)文報(bào)告:存在不可識別的TLV可選項(xiàng)。 鏈路層的多播報(bào)文。對這類報(bào)文也具有與上面第二類情況相同的例外。 鏈路層的廣播報(bào)文。對這類報(bào)文也具有與上面第二類情況相同的例外。 IPv6分組的源地址無法唯一確定一個(gè)單獨(dú)節(jié)點(diǎn)時(shí),這種情況也不能夠引起ICMPv6差錯(cuò)報(bào)告報(bào)文的發(fā)送。例如,IPv6不明確地址等。,ICMPv6報(bào)文的處理規(guī)則(續(xù)3),最后,為了限制在發(fā)送ICMPv6差錯(cuò)報(bào)告報(bào)文時(shí)對網(wǎng)絡(luò)帶寬和轉(zhuǎn)發(fā)處理的消耗,一個(gè)IPv6節(jié)點(diǎn)必須限制其發(fā)送ICMPv6差錯(cuò)報(bào)告報(bào)文的速率。但是,這樣可能會(huì)

9、導(dǎo)致一個(gè)差錯(cuò)報(bào)告報(bào)文的源節(jié)點(diǎn)因?yàn)闆]有及時(shí)收到報(bào)文出錯(cuò)的報(bào)告而不斷地重發(fā)該錯(cuò)誤報(bào)文。目前有幾種提供限制ICMPv6速率的方法,例如: 基于計(jì)時(shí)器的方法。例如,將發(fā)往某個(gè)源節(jié)點(diǎn)或所有源節(jié)點(diǎn)的ICMPv6差錯(cuò)報(bào)告報(bào)文的速率,限制在每T時(shí)間段內(nèi)只發(fā)送一個(gè)差錯(cuò)報(bào)告報(bào)文之內(nèi)。 基于帶寬的方法。例如,將某個(gè)網(wǎng)絡(luò)接口發(fā)送的ICMPv6差錯(cuò)報(bào)告報(bào)文所占用的帶寬限制在這個(gè)接口所在鏈路帶寬的某個(gè)比例F上。,5.3 ICMPv6差錯(cuò)報(bào)告報(bào)文,5.3.1 目的不可達(dá)ICMPv6報(bào)文 5.3.2 分組過大ICMPv6報(bào)文 5.3.3 超時(shí)ICMPv6報(bào)文 5.3.4 參數(shù)錯(cuò)誤ICMPv6報(bào)文,ICMPv6報(bào)文分成兩大類:

10、 ICMPv6差錯(cuò)報(bào)告報(bào)文:一個(gè)IPv6節(jié)點(diǎn)在處理一個(gè)接收到的報(bào)文時(shí),如果有錯(cuò)誤出現(xiàn),則需要向源節(jié)點(diǎn)發(fā)送ICMPv6差錯(cuò)報(bào)告報(bào)文。目前ICMPv6共定義了四種類型的差錯(cuò)報(bào)告報(bào)文:目的不可到達(dá)、報(bào)文過長、超時(shí)、參數(shù)差錯(cuò)報(bào)告報(bào)文。 ICMPv6信息報(bào)文:傳遞用于控制的請求和應(yīng)答信息。比如用于實(shí)現(xiàn)Ping功能的回聲請求報(bào)文和回聲應(yīng)答報(bào)文,以及對多播組控制的ICMPv6信息報(bào)文。,ICMPv6差錯(cuò)報(bào)文基本格式,5.3 ICMPv6差錯(cuò)報(bào)告報(bào)文,ICMPv6差錯(cuò)報(bào)文基本格式,ICMPv6差錯(cuò)報(bào)告報(bào)文中的類型字段、代碼字段及校驗(yàn)和字段的內(nèi)容,根據(jù)差錯(cuò)報(bào)告報(bào)文類型的不同而不同。 ICMPv6報(bào)文體分為兩個(gè)部

11、分,前4字節(jié)是參數(shù)字段,剩余部分是引起該ICMPv6報(bào)文產(chǎn)生的出錯(cuò)IPv6分組片段。 在整個(gè)ICMPv6報(bào)文的長度不超過IPv6對路徑傳輸單元的最低限制(1280字節(jié))的條件下,應(yīng)該包含盡可能多的出錯(cuò)IPv6分組信息。這樣可以使出錯(cuò)IPv6分組的源節(jié)點(diǎn)獲得盡可能多的信息來診斷出錯(cuò)原因。,ICMPv6字段:類型值為1 代碼 0-沒有到目的的路由 1-與目的的通信由于管理被禁止 ,e.g.防火墻 2-(沒有定義) 3-目的地址不可達(dá),e.g.不能轉(zhuǎn)換為MAC地址 4-端口不可達(dá),e.g.端口沒有開放 參數(shù)字段:未用,發(fā)送者設(shè)置為0,接收者忽略。 描述:該報(bào)文應(yīng)該由路由器或節(jié)點(diǎn)的IPv6層產(chǎn)生,作為

12、對除擁塞以外的原因使得包不能傳送到目的地址的回應(yīng)。,5.3.1 目的不可達(dá)報(bào)文,一個(gè)節(jié)點(diǎn)在收到該報(bào)文后,必須通知上層協(xié)議進(jìn)行相應(yīng)處理。,ICMPv6字段: 類型值為2 代碼:未用,發(fā)送者設(shè)置為 0,接收者忽略。 參數(shù)字段:記錄在出現(xiàn)包過大錯(cuò)誤時(shí)鏈路的MTU。 描述:包過大報(bào)文必須由路由器發(fā)出,當(dāng)路由器發(fā)現(xiàn)包太大,超過了出口鏈路的MTU而不能轉(zhuǎn)發(fā)時(shí),丟棄該包,并向源節(jié)點(diǎn)發(fā)送ICMPv6報(bào)文。 可以用于IPv6路徑MTU發(fā)現(xiàn)(PMTUD)。 在RFC1981中定義,IPv6 的PMTU使用ICMPv6類型2報(bào)文,即分組過大ICMPv6報(bào)文。,5.3.2 分組過大報(bào)文,一個(gè)節(jié)點(diǎn)在收到該報(bào)文后,必須通

13、知上層協(xié)議進(jìn)行相應(yīng)處理。,使用ICMPv6路徑MTU發(fā)現(xiàn)(PMTUD)探測路徑MTU的過程。,源,路由器,路由器,目的,MTU=1500,MTU=1400,MTU=1300,報(bào)文(MTU=1500),ICMPv6(類型=2),使用MTU=1400,報(bào)文(MTU=1400),ICMPv6(類型=2),使用MTU=1300,報(bào)文(MTU=1300),收到報(bào)文,用IPv6 PMTUD發(fā)現(xiàn)的MTU值被源節(jié)點(diǎn)緩存,ICMPv6字段:類型值為3 代碼: 0-跳數(shù)限制為0 1-分片重組超時(shí) 參數(shù)字段:未用,發(fā)送者初始化為0,接收者忽略。 描述: 如果路由器收到跳數(shù)限制為0的包,或是它將跳數(shù)限制減去1后變?yōu)?

14、,該路由器必須丟棄這個(gè)包,并發(fā)一個(gè)代碼為0的超時(shí)報(bào)文給源站點(diǎn)。 若在收到第1個(gè)分片后60秒內(nèi),還沒有收到全部分片,則丟棄所有分片,并發(fā)送代碼為1的超時(shí)報(bào)文給源站點(diǎn)。 一個(gè)節(jié)點(diǎn)在收到該報(bào)文后,必須通知上層協(xié)議處理。,5.3.3 超時(shí)ICMPv6報(bào)文,超過跳數(shù)限制,回送ICMPv6差錯(cuò)報(bào)文,ICMPv6字段: 類型值為4 代碼: 0-錯(cuò)誤的首部字段 1-不可識別的下一首部類型 2-不可識別的IPv6的TLV可選項(xiàng) 參數(shù)字段:稱為指針,指出了在引起出錯(cuò)的包中錯(cuò)誤出現(xiàn)地方的偏移量。,5.3.4 參數(shù)錯(cuò)誤ICMPv6報(bào)文,一個(gè)節(jié)點(diǎn)在收到該報(bào)文后,必須通知上層協(xié)議進(jìn)行相應(yīng)處理。,參數(shù)錯(cuò)誤報(bào)告報(bào)文描述:如果

15、節(jié)點(diǎn)發(fā)現(xiàn)了IPv6首部或擴(kuò)展首部中某個(gè)字段有問題,它必須丟棄這個(gè)包,并發(fā)送一個(gè)ICMPv6參數(shù)錯(cuò)誤報(bào)文,指出出錯(cuò)的地方和出錯(cuò)的類型。 指針字段指出檢測出錯(cuò)誤的地方相對于原IPv6分組首部的偏移量,以字節(jié)為單位。 比如,一個(gè)類型為 4、代碼為1、指針字段值為40的ICMPv6報(bào)文,說明原分組中緊跟在IPv6基本首部后的擴(kuò)展首部中的下一首部字段有一個(gè)不被識別的值。,先介紹ICMPv6回聲請求和回聲應(yīng)答報(bào)文格式。其它報(bào)文將在相關(guān)機(jī)制中介紹。,5.4 ICMPv6信息報(bào)文,ICMPv6字段: 類型值為128(回聲請求)、129(回聲應(yīng)答) 代碼:0。 標(biāo)識符:用于請求和應(yīng)答的匹配,也可能是0。 序列號

16、:用于請求和應(yīng)答的匹配,也可能是0。 數(shù)據(jù):為0或任意字節(jié)的數(shù)據(jù)。 描述:每一個(gè)節(jié)點(diǎn)必須能夠完成ICMPv6回聲應(yīng)答功能,即在收到ICMPv6回聲請求時(shí)發(fā)出相應(yīng)的ICMPv6回聲應(yīng)答報(bào)文。,ICMPv6回聲請求和回聲應(yīng)答報(bào)文,5.5 鄰節(jié)點(diǎn)探測協(xié)議NDP,5.5.1 鄰節(jié)點(diǎn)探測協(xié)議NDP概述 5.5.2 鄰節(jié)點(diǎn)探測協(xié)議定義的ICMPv6報(bào)文 5.5.3 替代ARP 5.5.4 無狀態(tài)地址自動(dòng)配置 5.5.5 重復(fù)地址探測DAD 5.5.6 前綴重新編址 5.5.7 路由器重定向 5.5.8 NDP總結(jié),5.5 鄰節(jié)點(diǎn)探測協(xié)議NDP(Neighbor Discovery Protocol,NDP

17、),IPv4的缺點(diǎn)之一:主機(jī)換網(wǎng)必須換地址,配置麻煩。 IPv4的解決辦法: 啟動(dòng)協(xié)議( BOOTP ) 動(dòng)態(tài)主機(jī)配置協(xié)議( DHCP ) 允許節(jié)點(diǎn)從BOOTP服務(wù)器或DHCP服務(wù)器獲取配置信息。但是這些協(xié)議支持所謂的“狀態(tài)自動(dòng)配置”,即服務(wù)器必須保持每個(gè)節(jié)點(diǎn)的狀態(tài)信息,并管理這些保存的信息。,IPv6的最重要目標(biāo)之一是支持“即插即用”不需要任何人工干預(yù),就能將一個(gè)節(jié)點(diǎn)插入IPv6網(wǎng)絡(luò),并在網(wǎng)絡(luò)中啟動(dòng)。,IPv6使用兩種不同機(jī)制來支持即插即用。 1、有狀態(tài)地址自動(dòng)配置:BOOTP和 DHCP ; 2、無狀態(tài)地址自動(dòng)配置。在這種方式下,需要配置地址的節(jié)點(diǎn),使用鄰節(jié)點(diǎn)探測機(jī)制獲得一個(gè)IPv6地址。

18、,5.5.1 NDP概述,NDP是IPv6的一個(gè)重要組成部分,它不是一個(gè)全新的協(xié)議,而是由IPv4中的地址解析協(xié)議ARP、ICMP路由探測協(xié)議RDISC、ICMP報(bào)文重定向等協(xié)議綜合而成的。,1、 鄰節(jié)點(diǎn)探測協(xié)議的應(yīng)用,2、為NDP定義的ICMPv6報(bào)文,3、NDP機(jī)制使用的ICMPv6報(bào)文,5.5.2 鄰節(jié)點(diǎn)探測協(xié)議定義的ICMPv6報(bào)文,在本節(jié)中,我們介紹一下為NDP定義的五個(gè)ICMPv6報(bào)文: 鄰節(jié)點(diǎn)請求 鄰節(jié)點(diǎn)通告 路由器請求 路由器通告 重定向報(bào)文,1. 鄰節(jié)點(diǎn)請求報(bào)文和鄰節(jié)點(diǎn)通告報(bào)文,鄰節(jié)點(diǎn)請求/通告報(bào)文可以完成ARP功能,還可以用來測試目的主機(jī)的連通性。 用于ARP功能時(shí),鄰節(jié)點(diǎn)

19、請求報(bào)文一般以多播的形式發(fā)送,主機(jī)一旦收到鄰節(jié)點(diǎn)請求報(bào)文,它們將檢查ICMP報(bào)文中的IPv6地址。如果這個(gè)地址恰好是自己的主機(jī)地址,主機(jī)將把自己的數(shù)據(jù)鏈路層地址封裝在一條鄰節(jié)點(diǎn)通告報(bào)文中,以應(yīng)答鄰節(jié)點(diǎn)請求報(bào)文的發(fā)送者。 用于探測目的主機(jī)連通性時(shí),鄰節(jié)點(diǎn)請求報(bào)文以單播IPv6分組的形式發(fā)送。如果發(fā)送者收到了應(yīng)答的鄰節(jié)點(diǎn)通告報(bào)文,它認(rèn)為目的地址是可達(dá)的;否則它認(rèn)為目的主機(jī)是不可達(dá)的。,鄰節(jié)點(diǎn)請求報(bào)文的報(bào)文格式,選項(xiàng)代碼=1,選項(xiàng)數(shù)據(jù)長度 =1,可選項(xiàng)(源鏈路層地址),鄰節(jié)點(diǎn)請求報(bào)文字段意義,類型字段,其值為135,表示該ICMPv6報(bào)文是鄰節(jié)點(diǎn)請求報(bào)文。 代碼字段,必須置為0。 校驗(yàn)和字段,保存整

20、個(gè)ICMPv6報(bào)文的校驗(yàn)和。 保留字段,保留不用,其值必須等于0。 目的IPv6地址字段,存放目的主機(jī)的IPv6地址。例如,當(dāng)使用該報(bào)文解析地址時(shí),則該字段存放將要解析的IPv6地址。 可選項(xiàng)字段,包含: 選項(xiàng)代碼字段,說明選項(xiàng)類型 選項(xiàng)數(shù)據(jù)長度字段,8字節(jié)單位,說明選項(xiàng)數(shù)據(jù)的長度。 選項(xiàng)數(shù)據(jù),一些可選參數(shù),例如源主機(jī)的鏈路層地址,用于ICMPv6信息報(bào)文的可選項(xiàng)格式,類型 =1,源鏈路層地址(Source Link_layer Address) =2,目的鏈路層地址(Target Link_layer Address) =3,前綴信息(Prefix Information) =4,重定向首部

21、(Redirected Head) =5,最大傳輸單元(MTU) 長度,以8字節(jié)為單位說明可選項(xiàng)長度,包括類型和長度,鄰節(jié)點(diǎn)請求報(bào)文字段意義(續(xù)),鄰節(jié)點(diǎn)請求報(bào)文必定包含源節(jié)點(diǎn)的源鏈路層地址選項(xiàng)。 源鏈路層地址選項(xiàng)的選項(xiàng)代碼值為1 選項(xiàng)長度因網(wǎng)絡(luò)類型而異。 當(dāng)此源節(jié)點(diǎn)得不到應(yīng)答報(bào)文時(shí),只能重復(fù)發(fā)送9次鄰節(jié)點(diǎn)請求報(bào)文。在各請求之間至少間隔1秒。 封裝鄰節(jié)點(diǎn)請求報(bào)文的IPv6分組 優(yōu)先級字段=15 跳數(shù)極限字段=255 源IPv6地址=發(fā)送該報(bào)文的網(wǎng)絡(luò)接口的IPv6地址。 用于ARP時(shí),目的地址=多播IPv6地址。 探測目的主機(jī)連通性,目的地址=目的主機(jī)的IPv6地址。,鄰節(jié)點(diǎn)通告報(bào)文,鄰節(jié)點(diǎn)通告

22、報(bào)文并不只是在應(yīng)答鄰節(jié)點(diǎn)請求報(bào)文時(shí)才發(fā)送,有時(shí)主機(jī)也主動(dòng)使用鄰節(jié)點(diǎn)通告報(bào)文,來通告自己的鏈路層地址更新等信息。,鄰節(jié)點(diǎn)通告報(bào)文格式,選項(xiàng)代碼=2,選項(xiàng)數(shù)據(jù)長度=1,可選項(xiàng)(目的鏈路層地址),鄰節(jié)點(diǎn)通告報(bào)文字段意義,類型字段,其值為136。 代碼字段,必須置為0。 校驗(yàn)和字段,保存整個(gè)ICMPv6報(bào)文的檢驗(yàn)和。 保留字段,保留不用,其值必須等于0。 路由R比特字段,R=1表示是一臺路由器發(fā)送該報(bào)文。 請求S比特字段,S=1表示是對鄰節(jié)點(diǎn)請求報(bào)文的響應(yīng)。 覆蓋O比特字段,O=1表明收到該報(bào)文的主機(jī),應(yīng)該用可選項(xiàng)字段中包含的目的數(shù)據(jù)鏈路層地址,更新自己的緩存。 目的IPv6地址字段,存放目的主機(jī)的I

23、Pv6地址。若是為了響應(yīng)鄰節(jié)點(diǎn)請求而發(fā)送的鄰節(jié)點(diǎn)通告報(bào)文,該字段的值將與請求報(bào)文中的目的地址字段相同。該字段通常是發(fā)送鄰節(jié)點(diǎn)請求報(bào)文的IPv6地址。但是并非所有情況都是如此。 可選項(xiàng)字段,包含選項(xiàng)代碼字段、選項(xiàng)長度字段和可選參數(shù),例如該ICMPv6報(bào)文的源主機(jī)的鏈路層地址。,例子,節(jié)點(diǎn)A在本地鏈路上發(fā)送鄰節(jié)點(diǎn)請求報(bào)文,封裝在IPv6分組中的ICMPv6鄰節(jié)點(diǎn)請求報(bào)文,選項(xiàng)代碼=1,選項(xiàng)數(shù)據(jù)長度=1,可選項(xiàng)(源節(jié)點(diǎn)A的鏈路層地址:08-00-20-01-C7-82),節(jié)點(diǎn)D使用鄰節(jié)點(diǎn)通告報(bào)文對鄰節(jié)點(diǎn)請求報(bào)文進(jìn)行應(yīng)答,封裝在IPv6分組中的ICMPv6鄰節(jié)點(diǎn)通告報(bào)文,選項(xiàng)代碼=2,選項(xiàng)數(shù)據(jù)長度=1

24、,可選項(xiàng)(目的節(jié)點(diǎn)D的鏈路層地址:02-07-01-33-D6-92),2. 路由器請求報(bào)文和路由器通告報(bào)文,主機(jī)與遠(yuǎn)程系統(tǒng)進(jìn)行通信時(shí),必須找到路由器。 當(dāng)多接口主機(jī)需要發(fā)送IPv6分組時(shí),需要了解每個(gè)網(wǎng)絡(luò)接口所連接的鏈路上的路由器的有關(guān)信息。 路由器每5分鐘就發(fā)送一個(gè)路由器通告報(bào)文。 節(jié)點(diǎn)根據(jù)路由器通告報(bào)文更新路由器的信息。 主機(jī)可以主動(dòng)向路由器發(fā)送路由器請求報(bào)文,路由器一旦收到路由器請求報(bào)文,將立即發(fā)送路由器通告報(bào)文。,ICMPv6路由器請求報(bào)文格式,選項(xiàng)代碼=1,選項(xiàng)數(shù)據(jù)長度=1,可選項(xiàng)(源鏈路層地址),各個(gè)字段的內(nèi)容和含義,類型字段,其值為133。 代碼字段,必須置為0。 校驗(yàn)和字段,

25、保存整個(gè)ICMPv6報(bào)文的檢驗(yàn)和。 保留字段,保留不用,其值必須等于0。 可選項(xiàng)字段,包含了一些可選參數(shù)。 例如發(fā)送報(bào)文的源主機(jī)鏈路層地址。路由器從報(bào)文中可以得到主機(jī)的鏈路層地址。當(dāng)路由器應(yīng)答請求報(bào)文時(shí),不需要使用多播地址,直接向提出請求的節(jié)點(diǎn)發(fā)送路由器通告報(bào)文。,ICMPv6路由器通告報(bào)文格式,選項(xiàng)代碼=5,選項(xiàng)數(shù)據(jù)長度=1,可選項(xiàng)(MTU大小),選項(xiàng)代碼=1,選項(xiàng)數(shù)據(jù)長度=1,可選項(xiàng)(源鏈路層地址),保留,路由器通告報(bào)文字段含義,類型字段,其值為134。 代碼字段,必須置為0。 校驗(yàn)和字段,保存整個(gè)ICMPv6報(bào)文的檢驗(yàn)和。 最大跳數(shù)(max hop)字段,路由器用來推薦本地網(wǎng)絡(luò)主機(jī)填入P

26、v6分組首部中“跳數(shù)極限”字段的默認(rèn)值。 M/O比特字段,決定主機(jī)的地址自動(dòng)配置方法。 保留字段,保留不用,其值必須等于0。,路由器通告報(bào)文字段含義(續(xù)),路由器生存時(shí)間(router lifetime)字段,以秒為單位說明主機(jī)能夠使用路由器的時(shí)間范圍。只要超過了該字段所指定的值,主機(jī)就認(rèn)為此路由器不能再使用。如果值為0 xFFFF,則生存時(shí)間無限。 可到達(dá)時(shí)間已過(reach ability timeout)字段,是指在可到達(dá)的時(shí)間(Reachable Time)內(nèi),如果鄰節(jié)點(diǎn)什么也沒有發(fā)送,就認(rèn)為該鄰節(jié)點(diǎn)是不能到達(dá)的。這個(gè)時(shí)間參數(shù)以毫秒為單位。 可到達(dá)的重發(fā)間隔(reach ability

27、 retransmission interval)。設(shè)置鄰節(jié)點(diǎn)請求報(bào)文的時(shí)間間隔,限制鄰節(jié)點(diǎn)請求報(bào)文的發(fā)送頻率。以毫秒為單位。,可選項(xiàng)字段,包含可選參數(shù),在第一個(gè)選項(xiàng)(代碼為1)中包含有源鏈路層地址。 第二個(gè)選項(xiàng)(代碼5)指出該鏈路的MTU的大小。 最后一個(gè)選項(xiàng)定義了該鏈路的網(wǎng)絡(luò)前綴。鏈路可擁有多個(gè)前綴,所以可以包含多個(gè)這種類型的選項(xiàng)。路由器通告網(wǎng)絡(luò)前綴有兩個(gè)作用。 指示一個(gè)IP地址是否在接收方的本地鏈路上; 用于地址的自動(dòng)配置。 鏈路網(wǎng)絡(luò)前綴選項(xiàng)中包含一些子字段。,鏈路網(wǎng)絡(luò)前綴選項(xiàng)中包含的子字段,L比特,在鏈路(On-Link)標(biāo)志位。L=1時(shí),表示此前綴用于確定一個(gè)地址是否在接收方的鏈路上

28、;L=0時(shí),表示發(fā)送方?jīng)]有就前綴是否可用于在鏈路確定發(fā)表意見。 A 比特,自治地址(Autonomous)配置標(biāo)志。A=1時(shí),說明該前綴可以用于IPv6地址自動(dòng)配置 有效生存時(shí)間(Valid Lifetime),前綴的有效時(shí)間。等于0 xFFFFFFFF時(shí),有效生存時(shí)間是無限的。 推薦生存時(shí)間(Preferred Lifetime),僅用于地址自動(dòng)配置。表示前綴過時(shí)之前的剩余秒數(shù)。過時(shí)的前綴雖然在有效生存時(shí)間的剩余時(shí)間里還可以使用,但主機(jī)應(yīng)該逐漸不再使用它。等于0 xFFFFFFFF時(shí),推薦生存時(shí)間是無限的,節(jié)點(diǎn)X發(fā)送路由器請求報(bào)文發(fā)現(xiàn)路由器,新連接了主機(jī)X,X立即發(fā)送路由器請求報(bào)文,主機(jī)就能

29、夠主動(dòng)獲取路由器通告報(bào)文。,X的IPv6地址為FE80:0260: 8C14:9252 X的鏈路層地址為02-60-8C-14-92-52,封裝在IPv6分組中的ICMPv6路由器請求報(bào)文,選項(xiàng)代碼=1,選項(xiàng)數(shù)據(jù)長度=1,可選項(xiàng)(源節(jié)點(diǎn)X鏈路層地址:02-60-8C-14-92-52),路由器RA發(fā)送路由器通告報(bào)文通告自己的存在,封裝在IPv6分組中的ICMPv6路由器通告報(bào)文,選項(xiàng)代碼=5,選項(xiàng)數(shù)據(jù)長度=1,可選項(xiàng)(MTU大小),選項(xiàng)代碼=1,選項(xiàng)數(shù)據(jù)長度=1,可選項(xiàng)(源鏈路層地址,路由器的一個(gè)接口的鏈路層地址),3. 重定向報(bào)文,對希望發(fā)送報(bào)文的主機(jī)來說,第一跳的選取是非常重要的。 為了正

30、確選擇第一跳,主機(jī)可以發(fā)送路由器請求報(bào)文,并接收路由器通告報(bào)文,然后根據(jù)獲取的路由器信息來選取第一跳。 這種方式,主機(jī)用來發(fā)現(xiàn)下一跳的過程簡單,主機(jī)雖然能夠找到路由器,但不能保證這個(gè)路由器就是到達(dá)特定目的主機(jī)的最佳第一跳路由器。,IPv6分組選中的路由器RA并非是最佳第一跳路由器,路由器RA向主機(jī)A發(fā)送重定向報(bào)文,封裝在IPv6分組中的ICMPv6路由器重定向報(bào)文,選項(xiàng)代碼=2,選項(xiàng)數(shù)據(jù)長度=1,可選項(xiàng)(目的鏈路層地址: 路由器RB的接口鏈路層地址),選項(xiàng)代碼=4,保留=0,選項(xiàng)數(shù)據(jù)長度,各個(gè)字段的含義,類型字段,其值為137。 代碼字段,必須置為0。 校驗(yàn)和字段,保存整個(gè)ICMPv6報(bào)文的檢

31、驗(yàn)和。 保留字段,保留不用,其值必須等于0。 目的地址字段,到達(dá)目的主機(jī)的最佳第一跳路由器的IPv6地址。 被重定向的目的地址字段,表示被重定向的原IPv6分組的目的地址。本例中,是目的主機(jī)B的IPv6地址。 可選項(xiàng)字段,包含了一些可選參數(shù)。 第一個(gè)選項(xiàng)是目的鏈路層地址,在本例中是路由器RB的地址。由路由器RA 向源主機(jī)A提供這個(gè)信息。 另一個(gè)選項(xiàng)代碼為4,把重定向的原IPv6分組的一部份字段內(nèi)容設(shè)置在這里,以便源主機(jī)A利用這些信息,5.5.3 替代ARP,替代ARP使用鄰節(jié)點(diǎn)請求、鄰節(jié)點(diǎn)通告報(bào)文和被請求節(jié)點(diǎn)多播地址(ff02:1:ffxx:xxxx)的組合。,1、使用鄰節(jié)點(diǎn)請求、鄰節(jié)點(diǎn)通告報(bào)

32、文和被請求節(jié)點(diǎn)多播地址,發(fā)現(xiàn)本地鏈路節(jié)點(diǎn)的鏈路層地址,由單播/任播地址形成被請求節(jié)點(diǎn)多播地址,2001:410:0:1:1:A,FF02:1:FF01:000A,以太網(wǎng)上的多播映射,2、鄰節(jié)點(diǎn)請求和鄰節(jié)點(diǎn)通告報(bào)文的其它應(yīng)用,驗(yàn)證鄰節(jié)點(diǎn)可達(dá)性:鄰節(jié)點(diǎn)請求報(bào)文使用單播地址,而不使用被請求節(jié)點(diǎn)多播地址。 如果請求報(bào)文的發(fā)送者收到了目的主機(jī)回送的通告報(bào)文,它認(rèn)為目的主機(jī)是可達(dá)的。 否則它認(rèn)為目的主機(jī)不能到達(dá)。 更新鄰節(jié)點(diǎn)緩存:當(dāng)一個(gè)節(jié)點(diǎn)改變鏈路層地址后,使用所有節(jié)點(diǎn)多播地址FF02:1,主動(dòng)發(fā)送“鄰節(jié)點(diǎn)通告”報(bào)文,通告自己的鏈路層地址信息。本地鏈路上節(jié)點(diǎn)的鄰節(jié)點(diǎn)緩存用新的鏈路層地址更新。,5.5.4

33、無狀態(tài)地址自動(dòng)配置,根據(jù)路由器在本地鏈路上通告的前綴信息,本地鏈路上的節(jié)點(diǎn)配置單播IPv6地址。 無狀態(tài)自動(dòng)配置原理: 根據(jù)物理地址,節(jié)點(diǎn)計(jì)算出自己的Interface ID; 確定IPv6網(wǎng)絡(luò)前綴地址:向最近的路由器詢問(路由器請求報(bào)文)網(wǎng)絡(luò)前綴。,1、IPv6的無狀態(tài)地址自動(dòng)配置步驟,RFC 2462定義了無狀態(tài)自動(dòng)配置的實(shí)現(xiàn)過程。 生成臨時(shí)本地鏈路地址。主機(jī)根據(jù)本地鏈路的64比特網(wǎng)絡(luò)前綴(FE80:/64),與EUI-64本地接口地址標(biāo)識生成臨時(shí)本地鏈路地址。 驗(yàn)證本地鏈路地址在本地鏈路上的唯一性。發(fā)送鄰節(jié)點(diǎn)請求報(bào)文和被請求節(jié)點(diǎn)多播地址進(jìn)行重復(fù)地址探測。 如果接收到鄰節(jié)點(diǎn)通告報(bào)文,表明已

34、經(jīng)有節(jié)點(diǎn)在使用該臨時(shí)本地鏈路地址,則地址自動(dòng)配置停止; 如果沒有收到鄰節(jié)點(diǎn)通告報(bào)文,表明臨時(shí)本地鏈路地址是唯一的,可以使用該本地鏈路地址。, 獲得需要配置的信息。主機(jī)節(jié)點(diǎn)發(fā)送路由器請求報(bào)文,請求路由器送路由器通告報(bào)文。 路由器通告報(bào)文包括主機(jī)節(jié)點(diǎn)配置需要的一些信息,例如鏈路前綴、鏈路MTU、默認(rèn)路由、是否使用地址自動(dòng)配置,以及由地址字段配置協(xié)議所創(chuàng)建地址的有效期與優(yōu)先級等。 默認(rèn)情況下,最多能發(fā)送3個(gè)路由器請求報(bào)文。, 配置。當(dāng)主機(jī)接收到路由器通告報(bào)文時(shí),主機(jī)根據(jù)報(bào)文內(nèi)容來設(shè)置跳數(shù)限制字段、可到達(dá)時(shí)間、重傳定時(shí)器和MTU。 如果存在前綴可選項(xiàng),則進(jìn)行下列處理: 若“在鏈路”L標(biāo)志為1,將報(bào)文中

35、的前綴添加到前綴列表中; 若“自治地址”A標(biāo)志為1,則用前綴和修改的EUI-64接口標(biāo)識生成一個(gè)臨時(shí)地址,通過重復(fù)地址檢測來確定地址的唯一性。 如果路由器通告報(bào)文的“受管理的地址配置” M標(biāo)志置1,則用有狀態(tài)地址字段配置協(xié)議獲取其它地址。 如果路由器通告報(bào)文的“其它有狀態(tài)配置”O(jiān)標(biāo)志置1,則用有狀態(tài)地址自動(dòng)配置協(xié)議獲取其它的配置參數(shù)。,2、前綴通告,前綴通告是無狀態(tài)自動(dòng)配置中的初始機(jī)制。 前綴通告機(jī)制中, IPv6路由器使用所有節(jié)點(diǎn)多播地址ff02:1/128,在本地鏈路上周期性(5分鐘)地發(fā)送路由器通告報(bào)文(134)。 只有IPv6路由器能在本地鏈路上通告前綴,禁止主機(jī)通告前綴。,前綴通告工

36、作機(jī)制,節(jié)點(diǎn)A,路由器A,本地鏈路,ICMPv6(類型=134)路由通告報(bào)文 源地址:本地鏈路地址(路由器A) 目的地址:所有節(jié)點(diǎn)多播地址(FF02:1/128) 前綴:2001:410:0:1:/64 生存期:無限期(有效/首選),節(jié)點(diǎn)B,FE80:250:3EFF:FEE4:4C00,前綴為2001:410:0:1:/64,路由器A周期性地發(fā)送路由通告報(bào)文,節(jié)點(diǎn)A和B可以配置它們的IPv6地址,主機(jī)向本地鏈路上的所有路由器(多播地址ff02: 2/128) 發(fā)送一條路由請求報(bào)文(133),要求路由器通告 本地鏈路上的路由器接收到這個(gè)路由器請求報(bào)文后,使用路由器通告報(bào)文(134),攜帶”所有節(jié)點(diǎn)多播地址”ff02:1進(jìn)行應(yīng)答。,路由器請求通告工作機(jī)制,節(jié)點(diǎn)A,路由器A,本地鏈路,ICMPv6(類型=133)路由請求報(bào)文 源地址:節(jié)點(diǎn)A的本地鏈路地址(FE80:/10) 目的地址:所有路由器多播地址(FF02:2),ICMPv6(類型=134)路由通告報(bào)文 源地址:路由器A的本地鏈路地址 目的地址:所有節(jié)點(diǎn)多播地址(FF02:1) 前綴:2001:410:0:1:/64 生存期:無限期,前綴為2001:410:0:1:/64,FE80:250:3EFF:FEE4:4C00,3. 重復(fù)地址探測DAD,DAD是無狀態(tài)自動(dòng)配置和節(jié)點(diǎn)啟動(dòng)時(shí)的一個(gè)NDP

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論