計算機網絡第5章ICMPv6及應用.ppt_第1頁
計算機網絡第5章ICMPv6及應用.ppt_第2頁
計算機網絡第5章ICMPv6及應用.ppt_第3頁
計算機網絡第5章ICMPv6及應用.ppt_第4頁
計算機網絡第5章ICMPv6及應用.ppt_第5頁
已閱讀5頁,還剩87頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

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

3、。經過修改,ICMPv6與原有的ICMP已經不再兼容。,已定義的ICMPv6報文類型,5.2 ICMPv6報文的基本格式,5.2.1 ICMPv6報文校驗和的計算 5.2.2 封裝ICMPv6報文的IPv6分組的源地址 5.2.3 ICMPv6報文的處理規(guī)則,5.2 ICMPv6報文的基本格式,類型:標識ICMPv6報文類型,它的值根據報文的內容來確定。 代碼:用于確定ICMPv6進一步的信息,對同一類型的報文進行了更詳細的分類。 校驗和:用于檢測ICMPv6的報文是否正確傳送。 報文體:用于返回出錯的參數和記錄出錯報文的片段,幫助源節(jié)點判斷錯誤的原因。或是其它參數。,5.2.1 ICMPv6

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

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

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

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

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

9、導致一個差錯報告報文的源節(jié)點因為沒有及時收到報文出錯的報告而不斷地重發(fā)該錯誤報文。目前有幾種提供限制ICMPv6速率的方法,例如: 基于計時器的方法。例如,將發(fā)往某個源節(jié)點或所有源節(jié)點的ICMPv6差錯報告報文的速率,限制在每T時間段內只發(fā)送一個差錯報告報文之內。 基于帶寬的方法。例如,將某個網絡接口發(fā)送的ICMPv6差錯報告報文所占用的帶寬限制在這個接口所在鏈路帶寬的某個比例F上。,5.3 ICMPv6差錯報告報文,5.3.1 目的不可達ICMPv6報文 5.3.2 分組過大ICMPv6報文 5.3.3 超時ICMPv6報文 5.3.4 參數錯誤ICMPv6報文,ICMPv6報文分成兩大類:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

溫馨提示

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

最新文檔

評論

0/150

提交評論