ospf路由協議是鏈路狀態型路由協議,這裡的鏈路即裝置上的介面。鏈路狀態型路由協議基於連線源和目標裝置的鏈路狀態作出路由的決定。鏈路狀態是介面及其與鄰接網路裝置的的關係的描述,介面的資訊即鏈路的資訊,也就是鏈路的狀態(資訊)。這些資訊包括介面的ipv6字首(prefix)、網路掩碼、介面連線的網路(鏈路)型別、與該介面在同一網路(鏈路)上的路由器等資訊。這些鏈路狀態資訊由不同型別的lsa攜帶,在網路上傳播。
路由器把收集到的lsa儲存在鏈路狀態資料庫中,然後執行spf演算法計算出路由表。鏈路狀態資料庫和路由表的本質不同在於:資料庫中包含的是完整的鏈路狀態原始資料,而路由表中列出的是到達所有已知目標網路的最短路徑的列表。
ospf協議是為ip協議提供路由功能的路由協議。ospfv2(ospf版本2)是支援ipv4的路由協議,為了讓ospf協議支援ipv6,技術人員開發了ospfv3(ospf版本3),ospfv3由rfc2740定義。
無論是ospfv2還是ospfv3,ospf協議的基本執行原理是沒有區別的,然而,由於ipv4和ipv6協議意義的不同,位址空間大小的不同,它們之間的不同之處也是必然存在的。
相似之處
ø路由器型別相同 ²
包括內部路由器(internal router)、骨幹路由器(backbone router)、區域邊界路由器(area border router)和自治系統邊界路由器(autonomous system boundary router)。 ø
支援的區域型別相同 ²
包括骨幹區域、標準區域、末節區域、nssa和完全末節區域。 ø
路由計算方法相同 ²
都使用spf演算法。 ø
dr選舉機制相同 ²
dr和bdr的選舉過程相同。 ø
網路型別相同 ²
包括點到點鏈路、點到多點鏈路、多路訪問、nbma鏈路和虛擬鏈路。 ø
鄰居和鄰居形成機制相同 ²
ospf 路由器啟動後,便會通過ospf介面向外傳送hello 報文,收到hello 報文的ospf 路由器會檢查報文中所定義的引數,如果雙方一致就會形成鄰居關係。形成鄰居關係的雙方不一定都能形成鄰接關係,這要根據網路型別而定,只有當雙方成功交換dbd 報文,交換lsa 並達到lsdb 的同步之後,才形成真正意義上的鄰接關係。 ²
lsa的傳播和老化機制相同。 ø
基本資料報型別相同 ²
都使用hello、dbd、lsr、lsu和lsa。
不同之處
ø術語不同 ²
在ospfv3中,用"鏈路(link)"取代了ospfv2中的"網路(network)"或"子網(subnet)"的概念。 ø
路由程序執行方式不同 ²
ospfv3程序執行在鏈路上, ²
ospfv2程序執行在子網上。 ø
鏈路多例項復用 ²
ospfv3
支援鏈路多例項復用,一條鏈路上可以執行多個ospf例項(instance)。例如,可以使用兩個例項讓一條鏈路執行在兩個區域內。 ²
ospfv2不支援鏈路多例項復用 ø
router id唯一標識鄰居 ²
在ospfv2中,當網路型別為點到點或者通過虛連線與鄰居相連時,通過router id來標識鄰居路由器,當網路型別為廣播或nbma時,通過鄰居介面的ip位址來標識鄰居路由器。 ²
ospfv3取消了這種複雜性,無論對於何種網路型別,都是通過router id來唯一標識鄰居。 ø
認證方式不同 ²
ospfv3協議自身不再提供認證功能,而是通過使用ipv6提供的安全機制來保證自身報文的合法性。所以,ospfv2報文中的認證字段,在ospfv3報文頭中被取消。 ²
ospfv2自身提供認證功能 ø
報文不同 ²
ospfv3報文封裝在ipv6報文中,每一種型別的報文都是以乙個16位元組的報文頭部開始。 ²
ospfv3的報文頭、hello、dbd以及lsr報文中的字段與ospfv2有差別。 ø
lsa型別不同 ²
與ospfv2相比,ospfv3新增了link lsa和intra area prefix lsa。 ø
lsa的泛洪範圍 ²
lsa的泛洪範圍已經被明確地定義在lsa的ls type欄位,目前,有三種lsa泛洪範圍。 ²
鏈路本地範圍:lsa 只在本地鏈路上泛洪,不會超出這個範圍,該範圍適用於新定義的link lsa。 ²
區域範圍:lsa 的泛洪範圍僅僅覆蓋乙個單獨的ospfv3 區域。router lsa、network lsa、inter area prefix lsa、inter area router lsa 和intra area prefix lsa 都是區域範圍泛洪的lsa。 ²
自治系統範圍:lsa 將被泛洪到整個路由域,as external lsa 就是自治系統範圍泛洪的lsa。 ø
支援對未知型別lsa的處理 ²
在ospfv2中,收到型別未知的lsa將直接丟棄 ²
ospfv3在lsa的ls type欄位中增加了乙個u位元位來位標識對未知型別lsa的處理方式: ²
如果u 位元置1,則對於未知型別的lsa 按照lsa 中的ls type 字段描述的泛洪範圍進行泛洪; ²
如果u 位元置0,對於未知型別的lsa 僅在鏈路範圍內泛洪。 ø
stub區域的支援 ²
由於ospfv3支援對未知型別lsa的泛洪,為防止大量未知型別lsa泛洪進入stub區域,對於向stub區泛洪的未知型別lsa進行了明確規定,只有當未知型別lsa的泛洪範圍是區域或鏈路而且u位元沒有置位時,未知型別lsa才可以向stub區域泛洪。 ø
option欄位不同 ²
在ospfv2中,option欄位出現在每乙個hello報文、dd報文以及每乙個lsa中。 ²
在ospfv3中,option欄位只在hello報文、dd報文、router lsa 、network lsa、inter area router lsa以及link lsa中出現。 ø
lsa報文格式不同
ospfv3協議直接執行在ipv6上,因此,ospfv3的資料由ipv6報文攜帶。在ipv6報文頭的'下乙個報文頭'欄位中,用協議號89代表該資料報中攜帶的是ospfv3的資料。
緊跟著ipv6報文頭的後面是ospfv3的報文首部,其格式如下圖所示。
ospfv3首部報文結構:
如下圖所示:
其中: ø
version——代表ospf的版本號,其值為3。 ø
type ——代表ospf資料報型別。ospf資料報的型別包括: n
hello包,型別**為1。 n
dbd,型別**為2。 n
lsr,型別**為3。 n
lsu,型別**為4。 n
lsack,型別**為5。 ø
packet length——以位元組為單位的ospf資料報的長度,包含報頭部分。 ø
router id——傳送該資料報的路由器id號。 ø
area id ——該資料報所屬的區域。 ø
checksum——整個ospf資料報的校驗和。 ø
instance id——例項標誌號。 ø
reservation——ospfv3報頭的最後8位元保留,值總為0。
下圖是使用ethereal採集到的報文。
hello報文結構
如下圖所示:
報文字段的含義:
øinte***ce id
——介面標誌符。路由器的每乙個介面都有乙個唯一的標誌符。 ø
router priority
——路由器優先順序。路由器根據該值選舉dr/bdr。 ø
options
——該24位元字段出現在hello包、dbd和某些lsa中,ospf路由器使用該欄位實現某些與其他路由器通訊的能力(詳見rfc2740)。 ø
hello interval
——傳送hello包的週期時間。 ø
router dead interval
——鄰居路由器認為該路由器的失效時間。 ø
designated router id
——dr路由器的id。 ø
backup designated router id
——bdr路由器的id。 ø
neighbors id
——鄰居列表。每個鄰居id佔4位元組。
如下圖所示:
IPv6 OSPFv3路由協議
ipv6 ospfv3路由協議3.1 ipv6 ospfv3 3.1.1 ospfv3 vs ospfv2 ospf路由協議是鏈路狀態型路由協議,這裡的鏈路即裝置上的介面。鏈路狀態型路由協議基於連線源和目標裝置的鏈路狀態作出路由的決定。鏈路狀態是介面及其與鄰接網路裝置的的關係的描述,介面的資訊即鏈路...
H3CSE路由 IPv6路由協議
常見的ipv6路由協議 1.ripng 2.ospfv3 3.ipv6 is is 4.bgp4 ipv6 靜態路由 router ipv6 route static ipv6 address prefix length permanent preference preference value t...
OSPFv3 路由彙總配置
3.網路配置 首先在r1上部署路由彙總,將area 1內的路由彙總成2001 1 32。r1的配置如下 r1 ospfv3 1 r1 ospfv3 1 area 1 r1 ospfv3 1 area 0.0.0.1 abr summary 2001 1 32 在asbr r2上執行路由彙總,這種路由...