第一篇:華為OSPF總結(jié)
華為OSPF總結(jié) OSPF基本概念
1.1 拓?fù)浜吐酚善黝?lèi)型
OSPF整體拓?fù)?/p>
? OSPF把自治系統(tǒng)劃分成邏輯意義上的一個(gè)或多個(gè)區(qū)域,所有其他區(qū)域必須與區(qū)域0相連。路由器類(lèi)型
? 區(qū)域內(nèi)路由器(Internal Router):該類(lèi)設(shè)備的所有接口都屬于同一個(gè)OSPF區(qū)域。
? 區(qū)域邊界路由器ABR(Area Border Router):該類(lèi)路由器可以同時(shí)屬于兩個(gè)以上的區(qū)域,但其中一個(gè)接口必須在骨干區(qū)域。ABR用來(lái)連接骨干區(qū)域和非骨干區(qū)域,它與骨干區(qū)域之間既可以是物理連接,也可以是邏輯上的連接。
? 骨干路由器(Backbone Router):該類(lèi)路由器至少有一個(gè)接口屬于骨干區(qū)域。所有的ABR和位于Area0的內(nèi)部路由器都是骨干路由器。? 自治系統(tǒng)邊界路由器ASBR(AS Boundary Router):與其他AS交換路由信息的路由器稱(chēng)為ASBR。ASBR并不一定位于AS的邊界,它可能是區(qū)域內(nèi)路由器,也可能是ABR。只要一臺(tái)OSPF路由器引入了外部路由的信息,它就成為ASBR。
拓?fù)渌w現(xiàn)的IS-IS與OSPF不同點(diǎn)
? 在OSPF中,每個(gè)鏈路只屬于一個(gè)區(qū)域;而在IS-IS中,每個(gè)鏈路可以屬于不同的區(qū)域; ? 在IS-IS中,單個(gè)區(qū)域沒(méi)有骨干與非骨干區(qū)域的概念;而在OSPF中,Area0被定義為骨干區(qū)域;
? 在IS-IS中,Level-1和Level-2級(jí)別的路由都采用SPF算法,分別生成最短路徑樹(shù)SPT而在OSPF中,只有在同一個(gè)區(qū)域內(nèi)才使用SPF算法,區(qū)域之間的路由發(fā)布還是距離矢量算法,區(qū)域之間的路由需要通過(guò)骨干區(qū)域來(lái)轉(zhuǎn)發(fā)。
1.2 OSPF網(wǎng)絡(luò)類(lèi)型,DR,BDR介紹
OSPF支持的網(wǎng)絡(luò)類(lèi)型
? 點(diǎn)到點(diǎn)P2P類(lèi)型:當(dāng)鏈路層協(xié)議是PPP、HDLC時(shí),缺省情況下,OSPF認(rèn)為網(wǎng)絡(luò)類(lèi)型是P2P。在該類(lèi)型的網(wǎng)絡(luò)中,以組播形式(224.0.0.5)發(fā)送協(xié)議報(bào)文(Hello報(bào)文、DD報(bào)文、LSR報(bào)文、LSU報(bào)文、LSAck報(bào)文)。? 點(diǎn)到多點(diǎn)P2MP 類(lèi)型(Point-to-Multipoint):沒(méi)有一種鏈路層協(xié)議會(huì)被缺省的認(rèn)為是Point-to-Multipoint 類(lèi)型。點(diǎn)到多點(diǎn)必須是由其他的網(wǎng)絡(luò)類(lèi)型強(qiáng)制更改的。常用做法是將非全連通的NBMA改為點(diǎn)到多點(diǎn)的網(wǎng)絡(luò)。在該類(lèi)型的網(wǎng)絡(luò)中以組播形式(224.0.0.5)發(fā)送Hello報(bào)文,以單播形式發(fā)送其他協(xié)議報(bào)文(DD報(bào)文、LSR報(bào)文、LSU報(bào)文、LSAck報(bào)文)。? NBMA類(lèi)型(Non-broadcast multiple access):當(dāng)鏈路層協(xié)議是ATM時(shí),缺省情況下,OSPF認(rèn)為網(wǎng)絡(luò)類(lèi)型是NBMA。在該類(lèi)型的網(wǎng)絡(luò)中,以單播形式發(fā)送協(xié)議報(bào)文(Hello報(bào)文、DD報(bào)文、LSR報(bào)文、LSU報(bào)文、LSAck報(bào)文)。? 廣播類(lèi)型(Broadcast):當(dāng)鏈路層協(xié)議是Ethernet、FDDI時(shí),缺省情況下,OSPF認(rèn)為網(wǎng)絡(luò)類(lèi)型是Broadcast。在該類(lèi)型的網(wǎng)絡(luò)中,通常以組播形式發(fā)送Hello報(bào)文、LSU報(bào)文和LSAck報(bào)文。其中,224.0.0.5的組播地址為OSPF路由器的預(yù)留IP組播地址;224.0.0.6的組播地址為OSPF DR的預(yù)留IP組播地址。以單播形式發(fā)送DD報(bào)文和LSR報(bào)文。
在至少含有兩個(gè)路由器的廣播型網(wǎng)絡(luò)和NBMA網(wǎng)絡(luò)都有一個(gè)指定路由器(DR)和一個(gè)備份指定路由器(BDR)DR/BDR的作用 ? 減少鄰居關(guān)系的數(shù)量,從而減少鏈路狀態(tài)信息和路由信息的次數(shù)。Drother只與DR/BDR建立完全鄰接關(guān)系。DR與BDR之間建立完全鄰接關(guān)系。? DR產(chǎn)生網(wǎng)絡(luò)LSA來(lái)描述NBMA網(wǎng)段或者廣播網(wǎng)段信息。DR/BDR選舉規(guī)則
? DR/BDR由OSPF的Hello協(xié)議選舉,選舉是根據(jù)端口的路由器優(yōu)先級(jí)(Router Priority)進(jìn)行的。
? 如果Router Priority被設(shè)置為0,那么該路由器將不允許被選舉成DR或者BDR。
? Router Priority越大越優(yōu)先。如果相同,Router ID大者優(yōu)先。
? DR/BDR不能搶占。
? 如果當(dāng)前DR故障,當(dāng)前BDR自動(dòng)成為新的DR,網(wǎng)絡(luò)中重新選舉BDR;如果當(dāng)前BDR故障,則DR不變,重新選舉BDR。ISIS DIS與OSPF DR/BDR的不同點(diǎn)
? 在IS-IS廣播網(wǎng)中,優(yōu)先級(jí)為0的路由器也參與DIS的選舉,而在OSPF中優(yōu)先級(jí)為0的路由器則不參與DR 的選舉。
? 在IS-IS廣播網(wǎng)中,當(dāng)有新的路由器加入,并符合成為DIS的條件時(shí),這個(gè)路由器會(huì)被選中成為新的DIS,原有的偽節(jié)點(diǎn)被刪除。此更改會(huì)引起一組新的LSP 泛洪。而在OSPF中,當(dāng)一臺(tái)新路由器加入后,即使它的DR 優(yōu)先級(jí)值最大,也不會(huì)立即成為該網(wǎng)段中的DR。
? 在IS-IS廣播網(wǎng)中,同一網(wǎng)段上的同一級(jí)別的路由器之間都會(huì)形成鄰接關(guān)系,包括所有的非DIS路由器。
1.3 OSPF報(bào)文類(lèi)型
Hello報(bào)文:用于建立和維持鄰居關(guān)系
DD報(bào)文:描述本地LSDB的摘要信息,用于兩臺(tái)路由器進(jìn)行數(shù)據(jù)庫(kù)同步
LSR報(bào)文:用于向?qū)Ψ秸?qǐng)求所需的LSA路由器只有在OSPF鄰居雙方成功交換DD報(bào)文后才會(huì)向?qū)Ψ桨l(fā)出LSR報(bào)文
LSU報(bào)文:用于向?qū)Ψ桨l(fā)送其所需要的LSA LSAck報(bào)文:用來(lái)對(duì)收到的LSA進(jìn)行確認(rèn) OSPF報(bào)文概述
? OSPF報(bào)文直接運(yùn)行于IP之上,IP協(xié)議字段號(hào)為89。OSPF有五種報(bào)文類(lèi)型,但是OSPF報(bào)文頭部格式都是相同的。
? 除Hello報(bào)文外,其它的OSPF報(bào)文都攜帶LSA信息。1.3.1 OSPF報(bào)文頭部信息
所有的OSPF報(bào)文使用相同的OSPF報(bào)文頭部 ? ? ? ? ? ? ? ? Version :OSPF協(xié)議號(hào),應(yīng)當(dāng)被設(shè)置成2。Type:OSPF報(bào)文類(lèi)型,OSPF共有五種報(bào)文。
Packet length:OSPF報(bào)文總長(zhǎng)度,包括報(bào)文頭部。單位是字節(jié)。Router ID:生成此報(bào)文的路由器的Router ID。Area ID:此報(bào)文需要被通告到的區(qū)域。
Checksum:是指一個(gè)對(duì)整個(gè)數(shù)據(jù)包(包括包頭)的標(biāo)準(zhǔn)IP校驗(yàn)和。AuType:驗(yàn)證此報(bào)文所應(yīng)當(dāng)使用的驗(yàn)證方法。
Authentication:驗(yàn)證此報(bào)文時(shí)所需要的密碼等信息。
1.3.2 Hello報(bào)文格式
? ? ? ? ? ? ? ? Network Mask:發(fā)送Hello報(bào)文的接口的網(wǎng)絡(luò)掩碼。HelloInterval:發(fā)送Hello報(bào)文的時(shí)間間隔。單位為秒。
Options:標(biāo)識(shí)發(fā)送此報(bào)文的OSPF路由器所支持的可選功能。
Router Priority:發(fā)送Hello報(bào)文的接口的Router Priority,用于選舉DR和BDR。
RouterDeadInterval:宣告鄰居路由器不繼續(xù)在該網(wǎng)段上運(yùn)行OSPF的時(shí)間間隔,單位為秒,通常為四倍HelloInterval。Designated Router:發(fā)送Hello報(bào)文的路由器所選舉出的DR的IP地址。如果設(shè)置為0.0.0.0,表示未選舉DR路由器。
Backup Designated Router:發(fā)送Hello報(bào)文的路由器所選舉出的BDR的IP地址。如果設(shè)置為0.0.0.0,表示未選舉BDR路由器。
Active Neighbor:鄰居路由器的Router ID列表。表示本路由器已經(jīng)從該鄰居收到合法的Hello報(bào)文。
1.3.3 DD報(bào)文格式
? 接口MTU:是指在數(shù)據(jù)包不分段的情況下,始發(fā)路由器接口可以發(fā)送的最大IP數(shù)據(jù)包大小。當(dāng)在虛連接時(shí),該在段為0x0000。? Option:同hello報(bào)文。
? I位:當(dāng)發(fā)送的是一系列DD報(bào)文中的第一個(gè)數(shù)據(jù)包時(shí),該為置位為1。后續(xù)的DD報(bào)文將該位置位0。
? M位:當(dāng)發(fā)送的數(shù)據(jù)包還不是一個(gè)系列DD報(bào)文中的最后一個(gè)數(shù)據(jù)包時(shí),該值置為1。如果是最后一個(gè)DD報(bào)文,則將該為置為0。
? MS位:在數(shù)據(jù)庫(kù)同步中,主要用來(lái)確認(rèn)協(xié)商過(guò)程中的序列號(hào)。? DD Sequence Number:DD的序列號(hào)報(bào)文,4byte ? LSA頭部信息。
1.3.4 LSR報(bào)文格式
? Link State Type:用來(lái)指明LSA標(biāo)識(shí)是一個(gè)路由器LSA、一個(gè)網(wǎng)絡(luò)LSA還是其他類(lèi)型的LSA。
? Link State ID:不同類(lèi)型LSA該字段意義不同。
? Advertising Router:始發(fā)LSA通告的路由器的路由器ID。
1.3.5 LSU報(bào)文格式
? Number of LSA:指出這個(gè)數(shù)據(jù)包中包含的LSA的數(shù)量。? LSA:明細(xì)LSA信息
1.3.6 LSAck報(bào)文格式
? Header of LSA:LSA頭部信息。
1.3.7 LSA頭部信息
除Hello報(bào)文外,其它的OSPF報(bào)文都攜帶LSA信息。
? LS age:此字段表示LSA已經(jīng)生存的時(shí)間,單位是秒。
? Option:該字段指出了部分OSPF域中LSA能夠支持的可選性能
? LS type:此字段標(biāo)識(shí)了LSA的格式和功能。常用的LSA類(lèi)型有五種。? Link State ID:根據(jù)LSA的不用而不同。
? Advertising Router:始發(fā)LSA的路由器的ID。
? Sequence Number:當(dāng)LSA每次新的實(shí)例產(chǎn)生時(shí),這個(gè)序列號(hào)就會(huì)增加。這個(gè)更新可以幫助其他路由器識(shí)別最新的LSA實(shí)例。
? Checksum:關(guān)于LSA的全部信息的校驗(yàn)和。因?yàn)锳ge字段,所以校驗(yàn)和會(huì)隨著老化時(shí)間的增大而每次都需要重新進(jìn)行計(jì)算。? Length:是一個(gè)包含LSA頭部在內(nèi)的LSA的長(zhǎng)度。
1.4 LSA類(lèi)型和區(qū)域內(nèi)路由計(jì)算與描述
Router-LSA(Type1)
? 路由器產(chǎn)生,描述了路由器的鏈路狀態(tài)和開(kāi)銷(xiāo),本區(qū)域內(nèi)傳播
Network-LSA(Type2)
? DR產(chǎn)生,描述本網(wǎng)段的鏈路狀態(tài),本區(qū)域內(nèi)傳播
Network-summary-LSA(Type3)
? ABR產(chǎn)生,描述區(qū)域內(nèi)某個(gè)網(wǎng)段的路由,區(qū)域間傳播(除特殊區(qū)域)
ASBR-summary-LSA(Type4)
? ABR產(chǎn)生,描述到ASBR的路由,OSPF域內(nèi)傳播(除特殊區(qū)域)
AS-external-LSA(Type5)
? ASBR產(chǎn)生,描述到AS外部的路由,OSPF域內(nèi)傳播(除特殊區(qū)域)
NSSA LSA(Type7)
? 由ASBR產(chǎn)生,描述到AS外部的路由,僅在NSSA區(qū)域內(nèi)傳播。
區(qū)域內(nèi)路由的計(jì)算只涉及到router-lsa和network-lsa 也只有router-lsa和network-lsa參與ospf路由計(jì)算
1.4.1 描述拓?fù)浣Y(jié)構(gòu)
1.4.2 Router-LSA Router-LSA必須描述始發(fā)路由器所有接口或鏈路。區(qū)域內(nèi)路由計(jì)算用到router-lsa [Q5]display ospf lsdb router self-originate
OSPF Process 1 with Router ID 5.5.5.5 Area: 0.0.0.1 Link State Database Type : Router Ls id : 5.5.5.5 Adv rtr : 5.5.5.5 Ls age : 194 Len : 48 Options : ASBR E seq# : 80000007 chksum : 0xacb8 Link count: 2 * Link ID: 4.4.4.4 Data : 45.0.0.5 Link Type: P-2-P Metric : 1562 * Link ID: 45.0.0.0 Data : 255.255.255.0 Link Type: StubNet Metric : 1562 Priority : Low
? Link State ID:是指始發(fā)路由器的路由器ID。
? V:設(shè)置為1時(shí),說(shuō)明始發(fā)路由器是一條或者多條具有完全鄰接關(guān)系的虛鏈路的一個(gè)端點(diǎn)。
? E:當(dāng)始發(fā)路由器是一個(gè)ASBR路由器時(shí),該為置為1。? B:當(dāng)始發(fā)路由器是一個(gè)ABR路由器時(shí),該為置為1。? Link count:表明一個(gè)LSA所描述的路由器鏈路數(shù)量。
? Link Type:置為1表示點(diǎn)到點(diǎn)連接一臺(tái)設(shè)備;置為2表示連接一個(gè)transit網(wǎng)絡(luò),可以理解為廣播網(wǎng)絡(luò);置為3表示連接subnet網(wǎng)絡(luò),一般該地址為環(huán)回口地址;置為4表示虛鏈路。
? Link ID:Link Type置為1表示鄰居路由器的路由器ID;Link Type置為2表示DR路由器的接口的IP地址;Link Type置為3表示IP網(wǎng)絡(luò)或子網(wǎng)地址;Link Type置為4鄰居路由器的路由器ID。
? Link Data:Link Type置為1表示和網(wǎng)絡(luò)相連的始發(fā)路由器接口的IP地址;Link Type置為2表示和網(wǎng)絡(luò)相連的始發(fā)路由器接口的IP地址;Link Type置為3網(wǎng)絡(luò)的IP地址或子網(wǎng)掩碼。? P2P鏈路:描述到鄰居連接 ? Transit鏈路:描述到DR的連接
? Stub鏈路:描述子網(wǎng),沒(méi)有鄰居(loopback或者只有一個(gè)以太網(wǎng)鏈路)? V-link鏈路:描述虛鏈路點(diǎn)到點(diǎn)鏈路 ? ToS,暫不支持。
? Metric:是指一條鏈路或接口的代價(jià)。
1.4.3 Network-LSA
DR產(chǎn)生,BDR不會(huì)產(chǎn)生Network-LSA [Q2]display ospf lsdb network self-originate
OSPF Process 1 with Router ID 2.2.2.2 Area: 0.0.0.0 Link State Database Type : Network Ls id : 10.0.0.2 Adv rtr : 2.2.2.2 Ls age : 393 Len : 36 Options : E seq# : 80000006 chksum : 0x9088 Net mask : 255.255.255.0 Priority : Low Attached Router 2.2.2.2 Attached Router 3.3.3.3 Attached Router 4.4.4.4
? Link State ID:是指DR路由器接口上的地址。
? Network Mask:指定這個(gè)網(wǎng)絡(luò)上使用的地址或者子網(wǎng)的掩碼。
? Attached router:列出該多路訪(fǎng)問(wèn)網(wǎng)絡(luò)上與DR形成完全鄰接關(guān)系且包括DR本身的所有路由器的路由器ID。
1.4.4 Network-summary-LSA(ABR產(chǎn)生)
[Q4]display ospf lsdb summary Type : Sum-Net Ls id : 45.0.0.0 Adv rtr : 4.4.4.4 Ls age : 425 Len : 28 Options : E seq# : 80000003 chksum : 0xde1f Net mask : 255.255.255.0 Tos 0 metric: 1562
Priority : Low
? Link State ID:對(duì)于3類(lèi)LSA來(lái)說(shuō),表示所通告的網(wǎng)絡(luò)或子網(wǎng)的IP地址。對(duì)于4類(lèi)LSA來(lái)說(shuō)表示所通告的ASBR路由器的路由器ID。
? Network Mask:對(duì)于3類(lèi)LSA來(lái)說(shuō),表示所通告的網(wǎng)絡(luò)的子網(wǎng)掩碼或者地址。對(duì)于4類(lèi)LSA來(lái)說(shuō),該字段沒(méi)有實(shí)際意義,一般置為0.0.0.0。? Metric:直到目的地址的路由的代價(jià)。
Network-summary-LSA 在區(qū)域間傳遞,區(qū)域間路由是矢量的,那么矢量的路由需要防止環(huán)路
防止環(huán)路方法如下:(1)ABR不能從非骨干區(qū)域接收類(lèi)型3LSA(2)Downbit防環(huán)
1.4.5ASBR-summary-LSA(ABR產(chǎn)生)1.4.6 AS-external-LSA(ASBR產(chǎn)生)
[Q4]display ospf lsdb ase OSPF Process 1 with Router ID 4.4.4.4 Link State Database Type : External Ls id : 55.55.55.0 Adv rtr : 5.5.5.5 Ls age : 2341 Len : 36 Options : E seq# : 80000002 chksum : 0xa273 Net mask : 255.255.255.0 TOS 0 Metric: 1 E type : 2 Forwarding Address : 0.0.0.0 Tag : 1 Priority : Low
? Link State ID:目的地的IP地址。
? Network Mask:指所通告的目的地的子網(wǎng)掩碼或地址。
? E type:用來(lái)指定這條路由使用的外部度量的類(lèi)型。如果該E bit設(shè)置為1,那么度量類(lèi)型就是E2;如果該E bit設(shè)置為0,那么度量類(lèi)型就是E1。? Metric:指路由的代價(jià)。由ASBR設(shè)定。? Forwarding Address:是指到達(dá)所通告的目的地的數(shù)據(jù)包應(yīng)該被轉(zhuǎn)發(fā)到的地址。如果轉(zhuǎn)發(fā)地址是0.0.0.0,那么數(shù)據(jù)包將被轉(zhuǎn)發(fā)到始發(fā)ASBR上。? External Route Tag:標(biāo)記外部路由。1.4.7 NSSA LSA(ASBR產(chǎn)生)
[Q5]display ospf lsdb nssa self-originate
Type : NSSA Ls id : 55.55.55.0 //目的網(wǎng)段的網(wǎng)絡(luò)地址 Adv rtr : 55.55.55.55 Ls age : 66 Len : 36 Options : NP seq# : 80000001 chksum : 0x8390 Net mask : 255.255.255.0 TOS 0 Metric: 1 E type : 2 Forwarding Address : 45.0.0.5 Tag : 1 Priority : Low
? Forwarding Address:如果網(wǎng)絡(luò)一臺(tái)NSSA ASBR路由器和鄰接的自治系統(tǒng)之間是作為一條內(nèi)部路由通告的,那么這個(gè)FA就是這個(gè)網(wǎng)絡(luò)的下一跳地址。如果網(wǎng)絡(luò)不是作為一個(gè)條內(nèi)部路由通告的,那么這個(gè)FA地址將是NSSA ASBR路由器的路由器ID。
1.4.8 區(qū)域內(nèi)路由計(jì)算SPF過(guò)程
1.5
Option字段
? Option可選字段出現(xiàn)在每一個(gè)Hello數(shù)據(jù)包、DD和每個(gè)LSA中的。? Option字段允許路由器和其他路由器進(jìn)行一些可選性能的通信。
Option字段解釋?zhuān)?/p>
? DN:用來(lái)避免在MPLS VPN中出現(xiàn)環(huán)路。當(dāng)3類(lèi)、5類(lèi)和7類(lèi)LSA中設(shè)置了DN位之后,接收路由器就不恩能夠在它的OSPF路由計(jì)算中使用該LSA。? O:該字段指出始發(fā)路由器支持Opaque LSA(類(lèi)型
9、類(lèi)型10和類(lèi)型11)。? DC位:當(dāng)始發(fā)路由器支持按需鏈路上的OSPF的能力時(shí),該位將被設(shè)置。? EA:當(dāng)始發(fā)路由器具有接收和轉(zhuǎn)發(fā)外部屬性L(fǎng)SA的能力時(shí),該位被置位。? N位:只在Hello數(shù)據(jù)包中。N=1表明路由器支持7類(lèi)LSA。N=0表明該路由器將不接收和發(fā)送NSSA LSA。
? P位:只用在NSSA LSA。該位將告訴一個(gè)非純末節(jié)區(qū)域中的ABR路由器將7類(lèi)LSA轉(zhuǎn)換為5類(lèi)LSA。? MC位:支持MOSPF。
? E位:當(dāng)始發(fā)路由器具有接收OSPF域外部LSA的能力時(shí),該位置位。在所有5類(lèi)LSA和始發(fā)于骨干區(qū)域以及非末節(jié)區(qū)域的LSA中,該位置為1。而始發(fā)與末節(jié)區(qū)域的LSA中,該位置為0。如果Hello報(bào)文中該位表明一個(gè)接口具有接收和發(fā)送5類(lèi)LSA的能力。? MT位:表示始發(fā)路由器支持多拓?fù)銸SPF。OSPF鄰居和鄰接關(guān)系
2.1 鄰居關(guān)系建立
鄰居狀態(tài)建立:
? Down:這是鄰居的初始狀態(tài),表示沒(méi)有從鄰居收到任何信息。
? Init:在此狀態(tài)下,路由器已經(jīng)從鄰居收到了Hello報(bào)文,但是自己不在所收到的Hello報(bào)文的鄰居列表中,表示尚未與鄰居建立雙向通信關(guān)系。在此狀態(tài)下的鄰居要被包含在自己所發(fā)送的Hello報(bào)文的鄰居列表中。? 2-Way:在此狀態(tài)下,雙向通信已經(jīng)建立,但是沒(méi)有與鄰居建立鄰接關(guān)系。這是建立鄰接關(guān)系以前的最高級(jí)狀態(tài)。如果網(wǎng)絡(luò)為廣播網(wǎng)絡(luò)或者NBMA網(wǎng)絡(luò)則選舉DR/BDR。
在形成鄰居關(guān)系過(guò)程中,需要對(duì)Hello報(bào)文攜帶的參數(shù)進(jìn)行協(xié)商: ? 如果接收端口的網(wǎng)絡(luò)類(lèi)型是廣播型,點(diǎn)到多點(diǎn)或者NBMA,所接收的Hello報(bào)文中Network Mask字段必須和接收端口的網(wǎng)絡(luò)掩碼一致,如果接收端口的網(wǎng)絡(luò)類(lèi)型為點(diǎn)到點(diǎn)類(lèi)型或者是虛連接,則不檢查Network Mask字段; ? 所接收的Hello報(bào)文中的Hello和Dead字段必須和接收端口的配置保持一
致;
? 所接收的Hello報(bào)文中的認(rèn)證字段需要一致;
? 所接收的Hello報(bào)文中的Options字段中的E-bit(表示是否接收外部路由信息)必須和相關(guān)區(qū)域的配置保持一致。? 所接收的Hello報(bào)文中的區(qū)域字段必須一致。
2.2 鄰接關(guān)系建立
鄰接狀態(tài)建立:
? 鄰居狀態(tài)機(jī)變?yōu)镋xStart以后,R1向R2發(fā)送第一個(gè)DD報(bào)文,在這個(gè)報(bào)文中,DD序列號(hào)被設(shè)置為552A(假設(shè)),Initial比特為1表示這是第一個(gè)DD報(bào)文,More比特為1表示后續(xù)還有DD報(bào)文要發(fā)送,Master比特為1表示R1宣告自己為主路由器。
? 鄰居狀態(tài)機(jī)變?yōu)镋xStart以后,R2向R1發(fā)送第一個(gè)DD報(bào)文,在這個(gè)報(bào)文中,DD序列號(hào)被設(shè)置為5528(假設(shè))。由于R2的Router ID比R1的大,所以R2應(yīng)當(dāng)為主路由器,Router ID的比較結(jié)束后,R1會(huì)產(chǎn)生一個(gè)NegotiationDone的事件,所以R1將狀態(tài)機(jī)從ExStart改變?yōu)镋xchange。? 鄰居狀態(tài)機(jī)變?yōu)镋xchange以后,R1發(fā)送一個(gè)新的DD報(bào)文,在這個(gè)新的報(bào)文中包含LSDB的摘要信息,序列號(hào)設(shè)置為R2在第二步里使用的序列號(hào),More比特為0表示不需要另外的DD報(bào)文描述LSDB,Master比特為0表示R1宣告自己為從路由器。收到這樣一個(gè)報(bào)文以后,R2會(huì)產(chǎn)生一個(gè)NegotiationDone的事件,因此R2將鄰居狀態(tài)改變?yōu)镋xchange。
? 鄰居狀態(tài)變?yōu)镋xchange以后,R2發(fā)送一個(gè)新的DD報(bào)文,該報(bào)文中包含?
?
?
? LSDB的描述信息,DD序列號(hào)設(shè)為5529(上次使用的序列號(hào)加1)。
即使R1不需要新的DD報(bào)文描述自己的LSDB,但是做為從路由器,R1需要對(duì)主路由器R2發(fā)送的每一個(gè)DD報(bào)文進(jìn)行確認(rèn)。所以,R1向R2發(fā)送一個(gè)新的DD報(bào)文,序列號(hào)為5529,該報(bào)文內(nèi)容為空。
鄰居狀態(tài)變?yōu)長(zhǎng)oading之后,R1開(kāi)始向R2發(fā)送LS request報(bào)文,請(qǐng)求那些在Exchange狀態(tài)下通過(guò)DD報(bào)文發(fā)現(xiàn)的,而且在本地LSDB中沒(méi)有的鏈路狀態(tài)信息。
R2收到LS Request報(bào)文之后,向R1發(fā)送LS Update報(bào)文,在LS Update報(bào)文中,包含了那些被請(qǐng)求的鏈路狀態(tài)的詳細(xì)信息。R1收到LS Update報(bào)文之后,將鄰居狀態(tài)從Loading改變成Full。
R1向R2發(fā)送LS Ack報(bào)文,確保信息傳輸?shù)目煽啃浴S Ack報(bào)文用于泛洪對(duì)已接收LSA的確認(rèn)。
2.3 鄰居關(guān)系狀態(tài)機(jī)
2.4 鄰接關(guān)系狀態(tài)機(jī)
2.5 總結(jié)OSPF鄰接建立狀態(tài)變換和用途
1.5.1 Init狀態(tài)
當(dāng)路由器收到鄰居發(fā)送來(lái)的hello報(bào)文就將狀態(tài)變換成init狀態(tài),Init狀態(tài)也說(shuō)明路由器是可以收到鄰居的hello消息的,也說(shuō)明路由器和鄰居之間至少二層是互通的。1.5.2 TwoWay狀態(tài)
a,檢查如下參數(shù)是否一致, 在p2p與MA之間有什么不同 ? 如果接收端口的網(wǎng)絡(luò)類(lèi)型是廣播型,點(diǎn)到多點(diǎn)或者NBMA,所接收的Hello報(bào)文中Network Mask字段必須和接收端口的網(wǎng)絡(luò)掩碼一致,如果接收端口的網(wǎng)絡(luò)類(lèi)型為點(diǎn)到點(diǎn)類(lèi)型或者是虛連接,則不檢查Network Mask字段; ? 所接收的Hello報(bào)文中的Hello和Dead字段必須和接收端口的配置保持一致;
? 所接收的Hello報(bào)文中的認(rèn)證字段需要一致;
? 所接收的Hello報(bào)文中的Options字段中的E-bit(表示是否接收外部路由信息)必須和相關(guān)區(qū)域的配置保持一致。? 所接收的Hello報(bào)文中的區(qū)域字段必須一致。P2P不需要建立鄰接,MA需要建立鄰接
b,用途?
當(dāng)路由器和鄰居之間建立雙向通信就變成TwoWay狀態(tài),或者說(shuō)當(dāng)路由器收到鄰居發(fā)送過(guò)來(lái)的hello報(bào)文發(fā)現(xiàn)自己在對(duì)方的鄰居列表中就變成TwoWay狀態(tài)。
c,DR選舉和搶占,wait計(jì)時(shí)器就是dead time計(jì)時(shí)器,在這個(gè)時(shí)間里面,如果路由器接收到的hello報(bào)文中有DR和BDR就不進(jìn)行DR選舉
1.5.3 Exstart狀態(tài)
通過(guò)檢查router-id,DBD主從選舉,router-id大的成為主,小的成為從 1.5.4 Exchange狀態(tài)
檢查ls age和sequence,同步DBD 1.5.5 Loading狀態(tài)
發(fā)送LSR請(qǐng)求 1.5.6 FULL狀態(tài)
發(fā)出的LSR全部收到應(yīng)答
檢查DBD完全一樣 已經(jīng)同步了LSDB OSPF中DR,BDR選舉 OSPF特殊區(qū)域和外部路由
Ospf特殊區(qū)域?yàn)閟tub和nssa 引入外部路由不建議引入直連的路由而采用network+silent方式引入直連路由。
4.1 Stub區(qū)域
OSPF可以將特定區(qū)域配置為Stub和Totally Stub區(qū)域。Stub區(qū)域是一些特定的區(qū)域,Stub區(qū)域的ABR不傳播它們接收到的自治系統(tǒng)外部路由,在這些區(qū)域中路由器的路由表規(guī)模以及路由信息傳遞的數(shù)量都會(huì)大大減少。Stub區(qū)域是一種可選的配置屬性,但并不是每個(gè)區(qū)域都符合配置的條件。通常來(lái)說(shuō),Stub區(qū)域位于自治系統(tǒng)的邊界,是那些只有一個(gè)ABR的非骨干區(qū)域。為保證到自治系統(tǒng)外的路由依舊可達(dá),該區(qū)域的ABR將生成一條缺省路由,并發(fā)布給Stub區(qū)域中的其他非ABR路由器。Stub區(qū)域 ? 骨干區(qū)域不能配置成Stub區(qū)域。
? 如果要將一個(gè)區(qū)域配置成Stub區(qū)域,則該區(qū)域中的所有路由器都要配置Stub區(qū)域?qū)傩浴?/p>
? Stub區(qū)域內(nèi)不能存在ASBR,即自治系統(tǒng)外部的路由不能在本區(qū)域內(nèi)傳播。? 虛連接不能穿過(guò)Stub區(qū)域。
? Stub區(qū)域不允許自治系統(tǒng)外部的路由(Type5 LSA)在區(qū)域內(nèi)傳播。? 區(qū)域內(nèi)的路由器必須通過(guò)ABR學(xué)到自治系統(tǒng)外部的路由。實(shí)現(xiàn)方法是ABR會(huì)自動(dòng)產(chǎn)生一條缺省的Summary LSA(Type3 LSA)通告到整個(gè)Stub區(qū)域內(nèi)。這樣,到達(dá)自治系統(tǒng)的外部路由就可以通過(guò)ABR到達(dá)。Totally Stub區(qū)域
? Totally Stub區(qū)域既不允許自治系統(tǒng)外部的路由(Type5 LSA)在區(qū)域內(nèi)傳播,也不允許區(qū)域間路由(Type3 LSA)在區(qū)域內(nèi)傳播。
? 區(qū)域內(nèi)的路由器必須通過(guò)ABR學(xué)到自治系統(tǒng)外部和其他區(qū)域的路由。? ABR會(huì)自動(dòng)產(chǎn)生一條缺省的Summary LSA(Type3 LSA)通告到整個(gè)Stub區(qū)域內(nèi)。
? Stub區(qū)域的E-bit被置位
實(shí)例
Q1和Q2所在的area 2為stub或者是stub totally
4.2 NSSA區(qū)域
? NSSA區(qū)域能夠?qū)⑼獠柯酚梢氩鞑サ秸麄€(gè)OSPF自治域中,同時(shí)又不會(huì)學(xué)習(xí)來(lái)自O(shè)SPF網(wǎng)絡(luò)其它區(qū)域的5類(lèi)LSA ? 包括NSSA和Totally NSSA OSPF規(guī)定Stub區(qū)域是不能引入外部路由的,這樣可以避免大量外部路由對(duì)Stub區(qū)域路由器帶寬和存儲(chǔ)資源的消耗。對(duì)于既需要引入外部路由又要避免外部路由帶來(lái)的資源消耗的場(chǎng)景,Stub區(qū)域就不再滿(mǎn)足需求了。因此Stub區(qū)域的變形——NSSA區(qū)域就產(chǎn)生了。7類(lèi)LSA ? 7類(lèi)LSA是為了支持NSSA區(qū)域而新增的一種LSA類(lèi)型,用于描述引入的外部路由信息。
? 7類(lèi)LSA由NSSA區(qū)域的自治域邊界路由器(ASBR)產(chǎn)生,其擴(kuò)散范圍僅限于邊界路由器所在的NSSA區(qū)域。
? NSSA區(qū)域的區(qū)域邊界路由器(ABR)收到7類(lèi)LSA時(shí),會(huì)有選擇地將其轉(zhuǎn)化為5類(lèi)LSA,以便將外部路由信息通告到OSPF網(wǎng)絡(luò)的其它區(qū)域。? 缺省路由也可以通過(guò)7類(lèi)LSA來(lái)表示,用于指導(dǎo)流量流向其它自治域。為了將NSSA區(qū)域引入的外部路由發(fā)布到其它區(qū)域,需要把Type-7 LSA轉(zhuǎn)化為T(mén)ype-5 LSA以便在整個(gè)OSPF網(wǎng)絡(luò)中通告。
? option字段P用于告知轉(zhuǎn)化路由器該條7類(lèi)LSA是否需要轉(zhuǎn)化。? 進(jìn)行轉(zhuǎn)化的是NSSA區(qū)域中Router ID最大的區(qū)域邊界路由器(ABR)。? 只有P置位并且Forwarding Address不為0的Type-7 LSA才能轉(zhuǎn)化為T(mén)ype-5 LSA。Forwarding Address用來(lái)表示發(fā)送的某個(gè)目的地址的報(bào)文將被轉(zhuǎn)發(fā)到Forwarding Address所指定的地址。
? 滿(mǎn)足以上條件的缺省7類(lèi)LSA也可以被轉(zhuǎn)化。
? 區(qū)域邊界路由器ABR產(chǎn)生的7類(lèi)LSA不會(huì)置位P-bit。注意事項(xiàng)
? 在NSSA區(qū)域中,可能同時(shí)存在多個(gè)邊界路由器。為了防止路由環(huán)路產(chǎn)生,邊界路由器之間不計(jì)算對(duì)方發(fā)布的缺省路由。
NSSA和Totally NSSA ? NSSA區(qū)域允許引入少量通過(guò)本區(qū)域的ASBR到達(dá)的外部路由,但不允許其他區(qū)域的外部路由ASE LSA(Type5 LSA)在區(qū)域內(nèi)傳播。即到達(dá)自治系統(tǒng)外部的路由只能通過(guò)本區(qū)域的ASBR到達(dá)。
? Totally NSSA區(qū)域既不允許其他區(qū)域的外部路由ASE LSA(Type5 LSA)在區(qū)域內(nèi)傳播,也不允許區(qū)域間路由(Type3 LSA)在區(qū)域內(nèi)傳播。實(shí)例
Area 1為nssa區(qū)域
引入外部路由55.55.55.0/24
[Q4] ospf 1 router-id 4.4.4.4 area 0.0.0.0 network 10.0.0.0 0.0.0.255 area 0.0.0.1 network 45.0.0.0 0.0.0.255 nssa default-route-advertise no-summary [Q4]display ospf lsdb Area: 0.0.0.1 Type LinkState ID AdvRouter Age Len Sequence Metric Router 4.4.4.4 4.4.4.4 25 48 80000004 1562 Router 55.55.55.55 55.55.55.55 2207 48 80000003 1562 Router 5.5.5.5 5.5.5.5 28 48 80000005 1562 Sum-Net 0.0.0.0 4.4.4.4 30 28 80000001 1 NSSA 0.0.0.0 4.4.4.4 27 36 80000003 1 NSSA 55.55.55.0 55.55.55.55 2228 36 80000001 1 NSSA 55.55.55.0 5.5.5.5 1209 36 80000001 1 NSSA 45.0.0.4 55.55.55.55 2228 36 80000001 1 NSSA 45.0.0.0 55.55.55.55 2228 36 80000002 1 //Q4為NSSA的ABR,向nssa區(qū)域通告一條3類(lèi)lsa的默認(rèn)路由和一條NSSA的默認(rèn)路由,這是因?yàn)橛袇?shù)default-route-advertise和 no-summary [Q5] ospf 1 router-id 5.5.5.5 import-route direct route-policy 1111 area 0.0.0.1 network 45.0.0.0 0.0.0.255 nssa
[Q5]display ospf lsdb Area: 0.0.0.1 Type LinkState ID AdvRouter Age Len Sequence Metric Router 4.4.4.4 4.4.4.4 229 48 80000004 1562 Router 55.55.55.55 55.55.55.55 2409 48 80000003 1562 Router 5.5.5.5 5.5.5.5 230 48 80000005 1562 Sum-Net 0.0.0.0 4.4.4.4 234 28 80000001 1 NSSA 55.55.55.0 5.5.5.5 1411 36 80000001 1 NSSA 0.0.0.0 4.4.4.4 231 36 80000003 1 NSSA 55.55.55.0 55.55.55.55 2430 36 80000001 1 NSSA 45.0.0.4 55.55.55.55 2430 36 80000001 1 NSSA 45.0.0.0 55.55.55.55 2430 36 80000002 1
[Q4]display ospf lsdb ase self-originate Type : External Ls id : 55.55.55.0 //Q4將NSSA lsa裝換成external lsa發(fā)布 Adv rtr : 4.4.4.4 Ls age : 752 Len : 36 Options : E seq# : 80000001 chksum : 0xf9ee Net mask : 255.255.255.0 TOS 0 Metric: 1 E type : 2 Forwarding Address : 45.0.0.5 Tag : 1 Priority : Low
4.3 外部路由和forwarding address Forwarding Address用來(lái)表示發(fā)送的某個(gè)目的地址的報(bào)文將被轉(zhuǎn)發(fā)到Forwarding Address所指定的地址。
R1和R9連接在一起屬于區(qū)域area 1,R8屬于ospf外部路由器,R1上引入一條靜態(tài)的路由,這條靜態(tài)的路由指向R8連接的網(wǎng)段8.8.8.0/24,由于在R1上引入的外部路由會(huì)通告給AREA 1中的R9,那么也就是告訴R9去往網(wǎng)段8.8.8.0/24的路徑要經(jīng)過(guò)R1(圖中藍(lán)線(xiàn)的路徑箭頭),然而R9和R8之間是通過(guò)交換機(jī)直連的,R9直接通過(guò)交換機(jī)去8.8.8.0/24網(wǎng)段(圖中紅線(xiàn)的路徑箭頭)要比ospf通告的要優(yōu)先一些,那么這時(shí)就造成了次優(yōu)路徑。
解決這種次優(yōu)路徑的方法就是引入forwarding address,直接告訴R9去往8.8.8.0/24網(wǎng)段的下一條是R8的接口g0/0/0。
開(kāi)啟forwarding address功能時(shí)要滿(mǎn)足如下條件
(1)引入的外部路由,其對(duì)應(yīng)的出接口開(kāi)啟了ospf(network命令)(2)引入的外部路由,其對(duì)應(yīng)的出接口沒(méi)有開(kāi)啟了silent-interface(3)引入的外部路由,其對(duì)應(yīng)的出接口是網(wǎng)絡(luò)類(lèi)型broadcast或者nbma 如下為R1,R8,R9的配置和測(cè)試
R1上的配置:
[R1]interface GigabitEthernet0/0/1 ip address 19.0.0.1 255.255.255.0 # interface GigabitEthernet1/0/0 ip address 100.0.0.1 255.255.255.0 # ospf 1 router-id 10.0.1.1 import-route static area 0.0.0.0 authentication-mode simple plain huawei network 10.0.1.1 0.0.0.0 network 10.0.123.1 0.0.0.0 area 0.0.0.1 network 19.0.0.0 0.0.0.255 network 100.0.0.0 0.0.0.255 //要將出接口宣告進(jìn)ospf # ip route-static 8.8.8.0 255.255.255.0 GigabitEthernet1/0/0 100.0.0.8
R9配置:
[R9]interface Ethernet0/0/1 ip address 100.0.0.9 255.255.255.0 # interface GigabitEthernet0/0/0 ip address 19.0.0.9 255.255.255.0 # ospf 1 router-id 9.9.9.9 area 0.0.0.1 network 19.0.0.0 0.0.0.255 network 100.0.0.0 0.0.0.255 //要將出接口宣告進(jìn)ospf R8配置
[R8]interface GigabitEthernet0/0/0 ip address 100.0.0.8 255.255.255.0 # interface LoopBack0 ip address 8.8.8.8 255.255.255.0 # ip route-static 0.0.0.0 0.0.0.0 GigabitEthernet0/0/0 100.0.0.1 #
R1上的外部路由通告
[R1]display ospf lsdb ase self-originate
OSPF Process 1 with Router ID 10.0.1.1 Link State Database Type : External Ls id : 8.8.8.0 Adv rtr : 10.0.1.1 Ls age : 1588 Len : 36 Options : E seq# : 80000001 chksum : 0x3709 Net mask : 255.255.255.0 TOS 0 Metric: 1 E type : 2 Forwarding Address : 100.0.0.8 //告訴其他的路由器的去往8.8.8.0/24的下一跳是100.0.0.8 Tag : 1 Priority : Low
R9上正好下一條是100.0.0.8 [R9]display ip routing-table Destination/Mask Proto Pre Cost Flags NextHop Interface
8.8.8.0/24 O_ASE 150 1 D 100.0.0.8 Ethernet0/0/1
4.4 NSSA和forwarding address NSSA中Forwarding Address的處理
對(duì)于NSSA區(qū)域中ASBR產(chǎn)生的7類(lèi)LSA,如果需要轉(zhuǎn)換為5類(lèi)LSA發(fā)布到其他OSPF區(qū)域,那么FA必須要填寫(xiě)非零的IP地址
對(duì)于7類(lèi)LSA中FA的填寫(xiě)分為兩種情況:
1.如果發(fā)布該7類(lèi)LSA的ASBR滿(mǎn)足上文提到的非零FA填寫(xiě)規(guī)則,那么就按照該 規(guī)則填寫(xiě)。
2.如果發(fā)布該7類(lèi)LSA的ASBR不滿(mǎn)足上述條件,那么需要從該路由器上啟用OSPF 協(xié)議的接口中選擇一個(gè)進(jìn)行填寫(xiě)。
對(duì)于情況2雖然RFC3101對(duì)FA的填寫(xiě)進(jìn)行了要求,但是并未明確如何填寫(xiě)該FA。在某些組網(wǎng)環(huán)境中由于該FA地址的填寫(xiě)不當(dāng),有可能會(huì)產(chǎn)生次優(yōu)路由。考慮如下組網(wǎng):
Router A、Router B、Router C形成NSSA區(qū)域,Router A引入外部路由Route a,通過(guò)7類(lèi)LSA通告給Router B和Router C,因?yàn)镽FC并未明確要求這種情況下該7類(lèi)LSA中的FA如何填寫(xiě),Router A可能會(huì)選擇Int 1的IP地址填寫(xiě)FA,那么對(duì)于Router C來(lái)講,到達(dá)Int 1有兩條路徑,一條是通過(guò)RouterA到達(dá)路徑 Cost為100,另一條是通過(guò)Router B到達(dá)路徑Cost為80,因此Router C將選擇通過(guò)Router B的路徑,很明顯它實(shí)際上選擇了一條次優(yōu)路徑。
如果在填寫(xiě)FA時(shí),使用Loopback接口地址進(jìn)行填寫(xiě),可以解決上述問(wèn)題。
實(shí)例:
Q5引入外部路由之后由router-id最大的ABR將Type 7類(lèi)型的lsa轉(zhuǎn)換成外部路由Type 5,這本例中Q4的router-id比Q3大,所以由Q4將Type 7類(lèi)型的lsa轉(zhuǎn)換成外部路由Type 5。
Q5產(chǎn)生type 7外部路由forwarding address為5.5.5.5
4.5 外部路由選路規(guī)則和forwarding address OSPF如何維護(hù)LSDB 5.1 LSA的新舊比較
(1)當(dāng)網(wǎng)絡(luò)拓?fù)浒l(fā)生變化時(shí),lsa的序列號(hào)會(huì)+1,比較序列號(hào),序列號(hào)越大越優(yōu)先
(2)序列號(hào)相同,比較老化時(shí)間,越小越優(yōu)先 采取的措施是泛紅,回饋,丟棄。
5.2 checksum校驗(yàn)和 5.3 計(jì)時(shí)器
60分鐘刷新刪除陳舊的LSA 30分鐘泛紅自己的LSA 5.4 更改lsa規(guī)則
自己更改自己,別人不能更改,否則lsa破壞風(fēng)暴。6 OSPF選路規(guī)則
OSPF路由聚合
OSPF擴(kuò)展特性
8.1 virtual-link詳解
8.2 認(rèn)證
認(rèn)證分類(lèi)
接口認(rèn)證 區(qū)域認(rèn)證
認(rèn)證方式
Null Simple MD5 HMAC-MD5 當(dāng)兩種驗(yàn)證方式都存在時(shí),優(yōu)先使用接口驗(yàn)證方式。
8.3 Database Overflow 數(shù)據(jù)庫(kù)超限
限制非缺省外部路由數(shù)量,避免數(shù)據(jù)庫(kù)超限
通過(guò)設(shè)置路由器上非缺省外部路由數(shù)量的上限,來(lái)避免數(shù)據(jù)庫(kù)超限。OSPF網(wǎng)絡(luò)中所有路由器都必須配置相同的上限值。這樣,只要路由器上外部路由的數(shù)量達(dá)到該上限,路由器就進(jìn)入Overflow狀態(tài),并同時(shí)啟動(dòng)超限狀態(tài)定時(shí)器(默認(rèn)超時(shí)時(shí)間為5秒),路由器在定時(shí)器超過(guò)5秒后自動(dòng)退出超限狀態(tài)。OSPF Database Overflow過(guò)程
? 進(jìn)入Overflow狀態(tài)時(shí),路由器刪除所有自己產(chǎn)生的非缺省外部路由。? 處于Overflow狀態(tài)中,路由器不產(chǎn)生非缺省外部路由,丟棄新收到的非缺省外部路由且不回復(fù)確認(rèn)報(bào)文,當(dāng)超限狀態(tài)定時(shí)器超時(shí),檢查外部路由數(shù)量是否仍然超過(guò)上限,如果超限則重啟定時(shí)器,如果沒(méi)有則退出超限狀態(tài)。
? 退出Overflow狀態(tài)時(shí),刪除超限狀態(tài)定時(shí)器,產(chǎn)生非缺省外部路由,接收新收到的非缺省外部路由,回復(fù)確認(rèn)報(bào)文,準(zhǔn)備下一次進(jìn)入超限狀態(tài)。
8.4 Demand circuit(DC按需鏈路)缺省路由
普通區(qū)域
ASBR上手動(dòng)配置產(chǎn)生缺省5類(lèi)LSA,通告到整個(gè)OSPF自治域(特殊區(qū)域)
Stub區(qū)域
ABR自動(dòng)產(chǎn)生一條缺省3類(lèi)LSA,通告到整個(gè)Stub區(qū)域內(nèi)
Totally Stub區(qū)域
ABR自動(dòng)產(chǎn)生一條缺省3類(lèi)LSA,通告到整個(gè)Stub區(qū)域內(nèi)
NSSA區(qū)域
在ABR手動(dòng)配置產(chǎn)生一條缺省7類(lèi)LSA,通告到整個(gè)NSSA區(qū)域內(nèi) 在ASBR手動(dòng)配置產(chǎn)生一條缺省7類(lèi)LSA,通告到整個(gè)NSSA區(qū)域內(nèi)
Totally NSSA區(qū)域
ABR自動(dòng)產(chǎn)生一條缺省3類(lèi)LSA,通告到整個(gè)NSSA區(qū)域內(nèi)
OSPF缺省路由通常應(yīng)用于下面兩種情況 ? 由ABR發(fā)布缺省3類(lèi)LSA,用來(lái)指導(dǎo)區(qū)域內(nèi)路由器進(jìn)行區(qū)域之間報(bào)文的轉(zhuǎn)發(fā)。
? 由ASBR發(fā)布缺省5類(lèi)LSA,或者缺省7類(lèi)LSA,用來(lái)指導(dǎo)自治系統(tǒng)(AS)內(nèi)路由器進(jìn)行自治系統(tǒng)外報(bào)文的轉(zhuǎn)發(fā)。注意事項(xiàng)
? 當(dāng)路由器無(wú)精確匹配的路由時(shí),就可以通過(guò)缺省路由進(jìn)行報(bào)文轉(zhuǎn)發(fā)。由于OSPF路由的分級(jí)管理,3類(lèi)缺省路由的優(yōu)先級(jí)高于5和7類(lèi)缺省路由。? 如果OSPF路由器已經(jīng)發(fā)布了缺省路由LSA,那么不再學(xué)習(xí)其它路由器發(fā)布的相同類(lèi)型缺省路由。即路由計(jì)算時(shí)不再計(jì)算其它路由器發(fā)布的相同類(lèi)型的缺省路由LSA,但數(shù)據(jù)庫(kù)中存有對(duì)應(yīng)LSA。? 外部缺省路由的發(fā)布如果要依賴(lài)于其它路由,那么被依賴(lài)的路由不能是本OSPF路由域內(nèi)的路由,即不是本進(jìn)程O(píng)SPF學(xué)習(xí)到的路由。因?yàn)橥獠咳笔÷酚傻淖饔檬怯糜谥笇?dǎo)報(bào)文的域外轉(zhuǎn)發(fā),而本OSPF路由域的路由的下一跳都指向了域內(nèi),不能滿(mǎn)足指導(dǎo)報(bào)文域外轉(zhuǎn)發(fā)的要求。不同區(qū)域的缺省路由發(fā)布原則 ? 普通區(qū)域
? 缺省情況下,普通OSPF區(qū)域內(nèi)的OSPF路由器是不會(huì)產(chǎn)生缺省路由的,即使它有缺省路由。
? NSSA區(qū)域
? 如果希望到達(dá)自治系統(tǒng)外部的路由通過(guò)該區(qū)域的ASBR到達(dá),而其它外部路由通過(guò)其它區(qū)域出去。則必須在ABR上手動(dòng)通過(guò)命令進(jìn)行配置,使ABR產(chǎn)生一條缺省的7類(lèi)LSA,通告到整個(gè)NSSA區(qū)域內(nèi)。這樣,除了某少部分路由通過(guò)NSSA的ASBR到達(dá),其它路由都可以通過(guò)NSSA的ABR到達(dá)其它區(qū)域的ASBR出去。
? 如果希望所有的外部路由只通過(guò)本區(qū)域NSSA的ASBR到達(dá)。則必須在ASBR上手動(dòng)通過(guò)命令進(jìn)行配置,使ASBR產(chǎn)生一條缺省7類(lèi)LSA,通告到整個(gè)NSSA區(qū)域內(nèi)。這樣,所有的外部路由就只能通過(guò)本區(qū)域NSSA的ASBR到達(dá)。
? 上面兩種情況使用相同的命令在不同的視圖下進(jìn)行配置,區(qū)別是在ABR上無(wú)論路由表中是否存在路由0.0.0.0,都會(huì)產(chǎn)生7類(lèi)LSA缺省路由,而在ASBR上只有當(dāng)路由表中存在路由0.0.0.0時(shí),才會(huì)產(chǎn)生7類(lèi)LSA缺省路由。
? 7類(lèi)LSA缺省路由不會(huì)在ABR上轉(zhuǎn)換成Type5 LSA缺省路由泛洪到整個(gè)OSPF域。
? Totally NSSA區(qū)域
? 區(qū)域內(nèi)的路由器必須通過(guò)ABR學(xué)到其他區(qū)域的路由。
一、OSPF缺省路由通常應(yīng)用于下面兩種情況:
1.由區(qū)域邊界路由器(ABR)發(fā)布(三類(lèi)缺省SUMMARY LSA), 用來(lái)指導(dǎo)區(qū)域內(nèi)路由器進(jìn)行區(qū)域之間報(bào)文的轉(zhuǎn)發(fā)。
2.由自治系統(tǒng)邊界路由器(ASBR)發(fā)布(五類(lèi)外部缺省ASE LSA,或者七類(lèi)外部缺省NSSA LSA),用來(lái)指導(dǎo)OSPF路由域內(nèi)路由器進(jìn)行域外報(bào)文的轉(zhuǎn)發(fā)。
當(dāng)路由器無(wú)精確匹配的路由時(shí),就可以通過(guò)缺省路由進(jìn)行報(bào)文轉(zhuǎn)發(fā)。由于OSPF路由的分級(jí)管理,三類(lèi)缺省路由的優(yōu)先級(jí)要高于五/七類(lèi)路由。
(注:不同的OSPF進(jìn)程認(rèn)為屬于不同的OSPF路由域)
(注:VRP V3具體區(qū)分五/七類(lèi)路由OSPF-ASE、OSPF-NSSA,VRP V5對(duì)五/七類(lèi)LSA都生成OSPF-ASE路由)
二、OSPF缺省路由的幾個(gè)基本原則:
1.如果OSPF路由器已經(jīng)發(fā)布了缺省路由LSA,那么不再學(xué)習(xí)其它路由器發(fā)布的相同類(lèi)型缺省路由(即路由計(jì)算時(shí)不再計(jì)算其它路由器發(fā)布的相同類(lèi)型缺省路由LSA)。
原因主要有以下兩點(diǎn):
a 本路由器自身已經(jīng)具有對(duì)外的出口,所以不需要學(xué)習(xí)其它路由器發(fā)布的缺省路由。
b 如果學(xué)習(xí)其它路由器發(fā)布的缺省路由,就會(huì)形成缺省路由的下一條相互指向,造成路由環(huán)路。
2.OSPF路由器只有具有對(duì)外的出口時(shí),才能夠發(fā)布缺省路由LSA。
a 因此對(duì)于區(qū)域邊界路由器(ABR),一旦失去跟骨干區(qū)域的連接(骨干區(qū)域沒(méi)有FULL鄰居),那么就要停止發(fā)布缺省路由。這主要用于解決當(dāng)區(qū)域存在多個(gè)出口的ABR時(shí),此時(shí)可以通過(guò)別的ABR出口繼續(xù)轉(zhuǎn)發(fā)報(bào)文。
b 因此對(duì)于自治系統(tǒng)邊界路由器(ASBR),一旦失去對(duì)外的連接(例如依賴(lài)的外部路由消失),那么就要停止發(fā)布缺省路由。這主要用于解決當(dāng)OSPF路由域存在多個(gè)出口的ASBR時(shí),可以通過(guò)別的ASBR出口繼續(xù)轉(zhuǎn)發(fā)報(bào)文。
3.外部缺省路由的發(fā)布如果依賴(lài)于其它的路由,那么被依賴(lài)的路由不能是本OSPF路由域內(nèi)的路由(即不是本進(jìn)程O(píng)SPF學(xué)習(xí)到的路由)。
因?yàn)椋獠咳笔÷酚梢糜谥笇?dǎo)報(bào)文的域外轉(zhuǎn)發(fā),而本OSPF路由域的路由下一條都指向了域內(nèi)。
三、OSPF各種缺省路由情況具體分析
a外部缺省路由不能通過(guò)引入或者轉(zhuǎn)換產(chǎn)生,是由命令指定產(chǎn)生的。
b路由器一旦發(fā)布外部缺省路由,就是ASBR路由器。
c只有區(qū)域邊界路由器(ABR)才能發(fā)布三類(lèi)缺省路由。
1. STUB AREA的TYPE3 缺省路由
ABR路由器發(fā)布,傳播范圍為本STUB區(qū)域。
根據(jù)基本原則1、2:
a 當(dāng)存在骨干區(qū)域的FULL鄰居時(shí),需要發(fā)布缺省路由。同時(shí)不學(xué)習(xí)其它路由器發(fā)布的三類(lèi)缺省路由LSA(此時(shí),根據(jù)RFC2328路由計(jì)算使用骨干區(qū)域SUMMARY LSA,所以不會(huì)學(xué)習(xí)到其它路由器發(fā)布到STUB區(qū)域的三類(lèi)缺省路由LSA)。
b當(dāng)不存在骨干區(qū)域的鄰居或者骨干區(qū)域鄰居DOWN時(shí),需要取消發(fā)布缺省路由。同時(shí)學(xué)習(xí)其它路由器發(fā)布的三類(lèi)缺省路由LSA(此時(shí),路由計(jì)算使用各個(gè)非骨干區(qū)域SUMMARY LSA)。
對(duì)于PE路由器,不需要判斷骨干區(qū)域是否有FULL鄰居。始終發(fā)布缺省路由,同時(shí)不學(xué)習(xí)其它PE路由器發(fā)布的缺省路由LSA(通過(guò)DN比特實(shí)現(xiàn))。
(注:PE路由器,VRP V3會(huì)生成骨干區(qū)域,VRP V5不生成骨干區(qū)域)
2. NSSA AREA的TYPE3 缺省路由
ABR路由器配置NO-SUMMARY后發(fā)布,傳播范圍為本NSSA區(qū)域。
其它規(guī)格同STUB AREA的TYPE3 缺省路由。
3. DEFAULT-ROUTE-ADVERTISE SUMMARY的TYPE3 缺省路由
只有是PE路由器時(shí)才發(fā)布缺省路由。同時(shí)不學(xué)習(xí)其它路由器發(fā)布的缺省路由LSA(需要通過(guò)DN比特實(shí)現(xiàn))。
(注:此命令只存在于VRP V5 OSPF。)
4. DEFAULT-ROUTE-ADVERTISE ALWAYS的TYPE5 缺省路由
始終發(fā)布缺省路由,同時(shí)不學(xué)習(xí)其它路由器發(fā)布的缺省路由LSA。
不能根據(jù)外部連接的變化動(dòng)態(tài)調(diào)節(jié)缺省路由的發(fā)布和刪除,實(shí)際應(yīng)用不太靈活。
5. DEFAULT-ROUTE-ADVERTISE的TYPE5 缺省路由
只有路由表中存在活躍的缺省路由時(shí)(不是本OSPF進(jìn)程學(xué)習(xí)到的路由),才會(huì)發(fā)布缺省路由LSA。
如果OSPF路由器已經(jīng)發(fā)布了五類(lèi)外部缺省路由LSA,那么不再學(xué)習(xí)其它路由器發(fā)布的五類(lèi)外部缺省路由。(這點(diǎn)VRP V3也沒(méi)有實(shí)現(xiàn))
6. DEFAULT-ROUTE-ADVERTISE ROUTE-POLICY的TYPE5 缺省路由
只有ROUTE-POLICY匹配時(shí),才會(huì)發(fā)布缺省路由LSA。
如果OSPF路由器已經(jīng)發(fā)布了五類(lèi)外部缺省路由LSA,那么不再學(xué)習(xí)其它路由器發(fā)布的五類(lèi)外部缺省路由。
7. NSSA AREA DEFAULT-ROUTE-ADVERTISE的TYPE7 缺省路由
當(dāng)是區(qū)域邊界路由器(ABR)(且存在骨干區(qū)域的FULL鄰居)時(shí),發(fā)布七類(lèi)外部缺省路由(P標(biāo)志設(shè)0)。同時(shí)不學(xué)習(xí)其它路由器發(fā)布的七類(lèi)外部缺省路由 LSA。這條缺省路由的作用是指導(dǎo)NSSA區(qū)域的報(bào)文通過(guò)骨干區(qū)域向外轉(zhuǎn)發(fā)(由于NSSA區(qū)域不學(xué)習(xí)ASE LSA)。
當(dāng)不是區(qū)域邊界路由器 時(shí),只有路由表中存在活躍的缺省路由時(shí)(不是本OSPF進(jìn)程學(xué)習(xí)到的路由),才會(huì)發(fā)布缺省路由LSA(P標(biāo)志設(shè)1)。同時(shí)不學(xué)習(xí)其它路由器發(fā)布的七類(lèi)外部 缺省路由LSA。這條缺省路由的作用是指導(dǎo)NSSA區(qū)域的報(bào)文通過(guò)本ASBR路由器直接向外轉(zhuǎn)發(fā)(這種情況在實(shí)際應(yīng)用中并不多見(jiàn))。
第二篇:OSPF知識(shí)點(diǎn)總結(jié)
OSPF四種網(wǎng)絡(luò)類(lèi)型:
Broadcast:一般為以太網(wǎng),組播發(fā)送協(xié)議報(bào)文,選舉DR、BDR NBMA:FR、ATM等鏈路層協(xié)議;雖然跨接口,但是都在同一網(wǎng)段
Point-to-Point:PPP,不選舉DR/BDR,把兩端端口的類(lèi)型配置為P2P方式,可以加快協(xié)議收斂,因?yàn)椴恍枰龠x舉DR/BDR了
Point-to-Multipoint:手動(dòng)改成的,多播hello包自動(dòng)發(fā)現(xiàn)鄰居,不選DR/BDR
OSPF五種網(wǎng)絡(luò)交互報(bào)文:
? Hello報(bào)文:發(fā)現(xiàn)及維持鄰居關(guān)系,選舉DR,BDR 周期性發(fā)給鄰居路由器,使用組播224.0.0.5,DR/BDR使用組播224.0.0.6;間隔時(shí)間:廣播網(wǎng)絡(luò)10s,dead-timer40s;點(diǎn)到點(diǎn)30s。
? DD報(bào)文:本地LSDB的摘要
內(nèi)容包括LSDB中每條LSA的摘要;用來(lái)確定Exchang階段的主從關(guān)系(空DD報(bào)文)。? LSR報(bào)文:向?qū)Χ苏?qǐng)求本端沒(méi)有或?qū)Χ说母碌腖SA 包括本端向?qū)Χ松暾?qǐng)的LSA的摘要 ? LSU報(bào)文:向?qū)Ψ桨l(fā)送其需要的LSA 內(nèi)容是多條LSA(完整內(nèi)容)
? LSAck報(bào)文:收到LSU之后,進(jìn)行確認(rèn)(是對(duì)LSA的確認(rèn))內(nèi)容是多條LSA的報(bào)文頭
OSPF七種協(xié)議狀態(tài):
Down:這是鄰居的初始狀態(tài),表示沒(méi)有從鄰居收到任何信息。在NBMA網(wǎng)絡(luò)上,此狀態(tài)下仍然可以向靜態(tài)配置的鄰居發(fā)送Hello報(bào)文,發(fā)送間隔為PollInterval,通常和RouterDeadInterval間隔相同。
Attempt:此狀態(tài)只在NBMA網(wǎng)絡(luò)上存在,表示沒(méi)有收到鄰居的任何信息,但是已經(jīng)周期性的向鄰居發(fā)送報(bào)文,發(fā)送間隔為HelloInterval。如果RouterDeadInterval間隔內(nèi)未收到鄰居的Hello報(bào)文,則轉(zhuǎn)為Down狀態(tài)。Init:在此狀態(tài)下,路由器已經(jīng)從鄰居收到了Hello報(bào)文,但是自己不在所收到的Hello報(bào)文的鄰居列表中,表示尚未與鄰居建立雙向通信關(guān)系。在此狀態(tài)下的鄰居要被包含在自己所發(fā)送的Hello報(bào)文的鄰居列表中。2-WayReceived:此事件表示路由器發(fā)現(xiàn)與鄰居的雙向通信已經(jīng)開(kāi)始(發(fā)現(xiàn)自己在鄰居發(fā)送的Hello報(bào)文的鄰居列表中)。Init狀態(tài)下產(chǎn)生此事件之后,如果需要和鄰居建立鄰接關(guān)系則進(jìn)入ExStart狀態(tài),開(kāi)始數(shù)據(jù)庫(kù)同步過(guò)程,如果不能與鄰居建立鄰接關(guān)系則進(jìn)入2-Way。2-Way:在此狀態(tài)下,雙向通信已經(jīng)建立,但是沒(méi)有與鄰居建立鄰接關(guān)系。這是建立鄰接關(guān)系以前的最高級(jí)狀態(tài)。
1-WayReceived:此事件表示路由器發(fā)現(xiàn)自己沒(méi)有在鄰居發(fā)送Hello報(bào)文的鄰居列表中,通常是由于對(duì)端鄰居重啟造成的。
ExStart:這是形成鄰接關(guān)系的第一個(gè)步驟,鄰居狀態(tài)變成此狀態(tài)以后,路由器開(kāi)始向鄰居發(fā)送DD報(bào)文。主從關(guān)系是在此狀態(tài)下形成的;初始DD序列號(hào)是在此狀態(tài)下決定的。在此狀態(tài)下發(fā)送的DD報(bào)文不包含鏈路狀態(tài)描述。
Exchange:此狀態(tài)下路由器相互發(fā)送包含鏈路狀態(tài)信息摘要的DD報(bào)文,描述本地LSDB的內(nèi)容。Loading:相互發(fā)送LS Request報(bào)文請(qǐng)求LSA,發(fā)送LS Update通告LSA。Full:兩路由器的LSDB已經(jīng)同步。
DR選舉:
1,首先參選的各方都要進(jìn)入2-way階段,具有選舉資格的路由器列入列表(若無(wú)具有選舉資格的則停留在2-way狀態(tài));
2,Hello報(bào)文做選票(在Hello報(bào)文中標(biāo)出自己所認(rèn)為的DR),所有路由器剛開(kāi)始都認(rèn)為自己是DR,也都認(rèn)為自己是BDR;
3,優(yōu)先級(jí)最大當(dāng)選,優(yōu)先級(jí)相同,則router id(loopback地址)最大當(dāng)選。先選舉BDR,再選DR(華為設(shè)備剛好相反)
4,選舉成功后,新加入路由器,不重新選舉。(最先初始化的兩臺(tái)路由器成為DR和BDR)
DD字段解釋?zhuān)?/p>
Interface MTU:在不分片的情況下,此接口最大可發(fā)出的IP報(bào)文長(zhǎng)度。
I(Initial):當(dāng)發(fā)送連續(xù)多個(gè)DD報(bào)文時(shí),如果這是第一個(gè)DD報(bào)文,則置為1,否則置為0。
M(More):當(dāng)發(fā)送連續(xù)多個(gè)DD報(bào)文時(shí),如果這是最后一個(gè)DD報(bào)文,則置為0。否則置為1,表示后面還有其他的DD報(bào)文。
MS(Master/Slave):當(dāng)兩臺(tái)OSPF路由器交換DD報(bào)文時(shí),首先需要確定雙方的主從關(guān)系,Router ID大的一方會(huì)成為Master。當(dāng)值為1時(shí)表示發(fā)送方為Master。
DD Sequence Number:DD報(bào)文序列號(hào),由Master方規(guī)定起始序列號(hào),每發(fā)送一個(gè)DD報(bào)文序列號(hào)加1,Slave方使用Master的序列號(hào)作為確認(rèn)。主從雙方利用序列號(hào)來(lái)保證DD報(bào)文傳輸?shù)目煽啃院屯暾浴Wⅲ涸贛aster/Slaver選舉中,RID大者優(yōu)先。
OSPF報(bào)文頭:
OSPF直接運(yùn)行于IP協(xié)議之上,使用IP協(xié)議號(hào)89。所有的OSPF報(bào)文使用相同的OSPF報(bào)文頭部。Version #:
OSPF協(xié)議號(hào),應(yīng)當(dāng)被設(shè)置成2。Type:
OSPF報(bào)文類(lèi)型,OSPF共有五種報(bào)文。TYPE類(lèi)型:5種類(lèi)型Hello,DD,LSR,LSU和LSAck。Packet length:
OSPF報(bào)文總長(zhǎng)度,包括報(bào)文頭部。單位是字節(jié)。Router ID:
生成此報(bào)文的路由器的Router ID。Area ID: 此報(bào)文所屬的區(qū)域。AuType:
驗(yàn)證此報(bào)文所應(yīng)當(dāng)使用的驗(yàn)證方法。AuType:0無(wú)需認(rèn)證,1明文認(rèn)證,2密文認(rèn)證,4保留 Authentication:
驗(yàn)證此報(bào)文時(shí)所需要的密碼等信息。
LSA報(bào)文頭:
每個(gè)LSA頭部都20個(gè)字節(jié)。
每個(gè)LSA由LS Type,Link State ID以及Advertising Router三個(gè)值來(lái)唯一區(qū)分; 通過(guò)LS老化,LS序列號(hào)以及LS校驗(yàn)和來(lái)識(shí)別哪個(gè)LSA是最新的。多種OSPF報(bào)文可以攜帶LSA。LS age:
此字段表示LSA已經(jīng)生存的時(shí)間,單位是秒。LS type:
此字段標(biāo)識(shí)了LSA的格式和功能。Link State ID:
此字段是該LSA所描述的那部分鏈路的標(biāo)識(shí)。例如Router ID等。Advertising Router:
此字段是產(chǎn)生此LSA的路由器的Router ID。LS sequence number:
此字段用于檢測(cè)舊的和重復(fù)的LSA。
LS type,Link State ID和Advertising Router的組合共同標(biāo)識(shí)一條LSA。
七種LSA報(bào)文解讀(重點(diǎn)):
Router-LSA 由每個(gè)路由器生成,描述了路由器的鏈路狀態(tài)和花費(fèi),傳遞到整個(gè)區(qū)域(type1)
--區(qū)域內(nèi)各個(gè)路由器生成關(guān)于自己各個(gè)接口所連網(wǎng)段的鏈路狀態(tài)信息,并發(fā)送給本區(qū)域的DR和BDR,由DR對(duì)這些信息進(jìn)行匯總。
1、描述區(qū)域內(nèi)部與路由器直連的鏈路的信息(包括鏈路類(lèi)型,Cost等)
2、所有鏈路信息放在一個(gè)LSA里進(jìn)行描述
3、Type1 LSA只在區(qū)域內(nèi)部擴(kuò)散
4、LSA中會(huì)標(biāo)識(shí)路由器是否是ABR(Bbit置位),ASBR(E比特置位)或者是Vlink(V比特置位)的端點(diǎn)
5、LSA中會(huì)標(biāo)識(shí)路由器所支持的Option功能標(biāo)記(如E)Network-LSA 由DR生成,描述了本網(wǎng)段的鏈路狀態(tài),傳遞到整個(gè)區(qū)域(type2)
--DR匯總各個(gè)路由器所發(fā)的LSA,匯總后發(fā)給區(qū)域內(nèi)的各個(gè)路由器。列出區(qū)域內(nèi)每個(gè)網(wǎng)段的信息及該網(wǎng)段上所連路由器的地址。
1、描述TransNet(包括Broadcast和NBMA網(wǎng)絡(luò))網(wǎng)絡(luò)信息
2、由DR生成,描述其在該網(wǎng)絡(luò)上連接的所有路由器以及網(wǎng)段掩碼信息
3、Type 2 LSA只在區(qū)域內(nèi)部擴(kuò)散
4、Type 2 LSA的意義在于:發(fā)現(xiàn)拓?fù)湟约斑M(jìn)行SPF計(jì)算時(shí),整個(gè)Multi-Access網(wǎng)絡(luò)會(huì)濃縮成一個(gè)節(jié)點(diǎn)(偽節(jié)點(diǎn))
5、OSPF路由器根據(jù)type1和type2計(jì)算出區(qū)域內(nèi)的路由,滿(mǎn)足負(fù)載均衡條件就可以生成等價(jià)路由。
Net-Summary-LSA 由ABR生成,描述了ABR到某區(qū)域外AS內(nèi)的某一網(wǎng)段的路由的費(fèi)用,傳遞到自己區(qū)域內(nèi),供其它路由器計(jì)算最佳路由(type3)
--通告某一區(qū)域的某個(gè)網(wǎng)段以及ABR到該網(wǎng)段的花費(fèi)(包括通告該路由的路由器),可對(duì)路由信息進(jìn)行匯總。
1、由ABR生成,將所連接區(qū)域內(nèi)部的鏈路信息以子網(wǎng)的形式擴(kuò)散到鄰區(qū)域,會(huì)擴(kuò)散到鄰區(qū)域所有路由器;路由器根據(jù)type3計(jì)算區(qū)域間路由,下一跳指向發(fā)布type3的路由器的routerid,最終根據(jù)區(qū)域內(nèi)路由迭代出直連路由,如果區(qū)域內(nèi)路由到該routerid是負(fù)載均衡的,那么就能生成等價(jià)路由;
2、Type3 LSA實(shí)際上就是將區(qū)域內(nèi)部的Type1(lsid為主機(jī)地址)/Type2(lsid為網(wǎng)段地址)的信息收集起來(lái)以路由子網(wǎng)的形式擴(kuò)散出去,這就是Summay LSA中Summay的含義(注意這里的summary與路由聚合沒(méi)有關(guān)系)每個(gè)接口網(wǎng)段生成一個(gè)Type3 LSA ???
3、ABR收到來(lái)自同區(qū)域其它ABR傳來(lái)的Type3 LSA(不一定是另外一個(gè)區(qū)域的,只要是自己沒(méi)有生成的)后重新生成新的Type3 LSA(Advertising Router改為自己)后繼續(xù)在整個(gè)OSPF系統(tǒng)內(nèi)擴(kuò)散,Type3 LSA的擴(kuò)散本質(zhì)上屬于DV行為;
4、ABR收到的Type3 LSA與自己生成的相同,此LSA不做計(jì)算(避免環(huán)路)
注:針對(duì)Type3LSA,生成路由的規(guī)則:自己是ABR,會(huì)首先針對(duì)這個(gè)區(qū)域生成相應(yīng)的Type3,此時(shí)收到其它ABR發(fā)過(guò)來(lái)Type3 LSA:a)如果是相同的Type3(即自己已經(jīng)生成了),則只保留、不生成路由,也不生成新的Type3,因?yàn)閰^(qū)域內(nèi)路由優(yōu)先于區(qū)域間路由;b)如果沒(méi)有生成過(guò),則重新生成一個(gè)新的Type3,繼續(xù)傳遞,同時(shí)生成路由,指向原ABR。
自己非該區(qū)域的ABR,收到多個(gè)ABR生成的Type3,則分別生成區(qū)域間路由參與競(jìng)爭(zhēng),如果cost相同,就可以進(jìn)行負(fù)載均衡了。
注意路由器與ABR出現(xiàn)多條直連鏈路的情況,多個(gè)OSPF鄰居都可以建立,每個(gè)鄰居關(guān)系也會(huì)收到type3,但由于生成的type3都一樣,所以實(shí)際上只看到一個(gè),不過(guò)計(jì)算出來(lái)的區(qū)域間路由,則可能是多條路由迭代的??????
5、如果Type3 LSA來(lái)自不同的AREA,那么即使cost相同,也不會(huì)形成負(fù)載均衡,我司設(shè)備的實(shí)現(xiàn)是:最新到來(lái)的Type3 LSA最終生效,包括最后配置的,及最近undo shutdown的。解決方法:創(chuàng)建vlink,使骨干區(qū)域的路由可以以Type1 LSA方式引入路由器,從而達(dá)到負(fù)載均衡的目的。type5路由被認(rèn)為都是來(lái)自area0的,所以不受該規(guī)則影響。
6、如果是ABR,那么其對(duì)于type3/4路由,就只學(xué)習(xí)從骨干區(qū)域過(guò)來(lái)的type3/4路由(張延新),從非骨干區(qū)域鄰居傳遞過(guò)來(lái)的type3/4路由,只要其認(rèn)為自己還是ABR,就不會(huì)學(xué)習(xí)。如果area 0內(nèi)存在處于FULL的鄰居,則該area0不能通過(guò)非骨干區(qū)域的type3 LSA學(xué)習(xí)路由。否則可以。(顧德訪(fǎng))注:ABR的判斷原則:配置了包括骨干區(qū)域的多個(gè)區(qū)域,且骨干區(qū)域內(nèi)至少有一個(gè)端口的OSPF鄰居狀態(tài)處于FULL狀態(tài)。其通過(guò)在其type1報(bào)文中置位相應(yīng)位,告知同區(qū)域鄰居其地位。
Asbr-Summary-LSA 由ABR生成,描述了到ASBR的路由,傳遞到相關(guān)區(qū)域(type4)---路由信息 --若某個(gè)區(qū)域存在一個(gè)ASBR,則發(fā)布一條type4報(bào)文指出該ASBR的router id以及ABR到該ASBR的花費(fèi)。
1、由ABR生成,格式與Type3相同,描述的目標(biāo)網(wǎng)絡(luò)是一個(gè)ASBR的RouterID
2、Type4 LSA的觸發(fā)條件為:ABR收到一個(gè)Type5 LSA
3、Type4 LSA的意義在于讓區(qū)域內(nèi)部路由器知道如何到達(dá)ASBR(Type5 LSA是在整個(gè)OSPF系統(tǒng)內(nèi)擴(kuò)散的,Advertising Router始終為ASBR)
4、每個(gè)ABR在收到type5時(shí)都會(huì)在各個(gè)區(qū)域生成一個(gè)type4。
5、自己就是asbr的話(huà),不會(huì)生成指向自己的type4;
AS-External-LSA 由ASBR生成,描述了到AS外部的路由,傳遞到整個(gè)AS(STUB區(qū)域除外)(type5)--引入的外部路由網(wǎng)段及ASBR到該網(wǎng)段的花費(fèi),另外還有公布的FA,即下一跳地址(若為0.0.0.0則表示為本ASBR)
1、由ASBR生成,描述OSPF系統(tǒng)外部的路由信息,一般為引入的其他協(xié)議的路由;
2、Type5 LSA一旦生成,將在整個(gè)OSPF系統(tǒng)內(nèi)擴(kuò)散(Stub Total-Stub NSSA Totally-NSSA除外),不同ASBR生成的相同的外部路由Type5將會(huì)在domain內(nèi)共存(我司的做法);
3、Type5 LSA攜帶Tag信息(我司默認(rèn)為1)該參數(shù)不用于路由計(jì)算,其意義在于對(duì)于外部路由可以據(jù)此參數(shù)進(jìn)行路由策略的制定(類(lèi)似于BGP中的Community)
4、Type5 LSA以?xún)煞N方式在OSPF Domain內(nèi)擴(kuò)散(默認(rèn)為E2):類(lèi)型1(E置位為0)需要把外部花費(fèi)與內(nèi)部花費(fèi)疊加;類(lèi)型2只要關(guān)注外部花費(fèi)即可。
5、Type5 LSA中的Forwading Address地址分非0和全0兩種情況。
6、路由器收到Type5 LSA后,如果本地沒(méi)有生成相同的Type5,則會(huì)照單全收,根據(jù)每個(gè)Type5結(jié)合Type4計(jì)算外部路由;如果路由表中有一條優(yōu)先級(jí)值大于150的相同前綴的非OSPF路由,則會(huì)計(jì)算收到的Type5LSA,同時(shí)把優(yōu)先級(jí)為150的O-ASE路由放入總路由表,然后撤銷(xiāo)本地生成的Type5LSA(因?yàn)镺SPF引入路由是看該路由是否加入到了總路由表,而該非OSPF的路由由于競(jìng)爭(zhēng)不過(guò)O-ASE路由而被撤銷(xiāo));如果路由表中有一條優(yōu)先級(jí)值小于150的相同前綴的非OSPF路由,則計(jì)算收到的Type5LSA,存放于OSPF路由表,但不會(huì)放入全局路由表(因?yàn)镺-ASE的優(yōu)先級(jí)低于這個(gè)非OSPF路由,同時(shí)如果OSPF還是會(huì)引入該路由而產(chǎn)生Type5)
7、OSPF引入其它協(xié)議路由的條件是:該路由已經(jīng)通過(guò)競(jìng)爭(zhēng)加入到全局路由表了。
注:路由器根據(jù)Type5指示的外部路由,然后基于每個(gè)type4,會(huì)分別生成一條OSPF路由(我司的方案是如果多個(gè)ASBR生成相同的Type5,則每個(gè)ASBR都是Originator),計(jì)算出來(lái)的路由,只要滿(mǎn)足負(fù)載均衡條件,且小于配置的最大配置負(fù)載均衡數(shù),生成路由參與整路由表的計(jì)算,不過(guò)如果asbr指示的路由就不均衡的話(huà),那么就會(huì)選出最優(yōu)的asbr,來(lái)計(jì)算ase路由。下一跳根據(jù)Forwading Address進(jìn)行計(jì)算。如果為全0,則根據(jù)type4指示的ASBR進(jìn)行迭代計(jì)算;
如果非全0:1)在收到Type5的OSPF域內(nèi)路由器上,如果FA為非0,根據(jù)FA地址查找路由表,若有匹配的OSPF內(nèi)部路由(區(qū)域內(nèi)或者區(qū)域間),則以此FA地址作為出口計(jì)算外部路由;否則將認(rèn)為此Type5 LSA無(wú)效;2)我司設(shè)備查找OSPF路由表(Display ospf routing-table)思科查找全局路由表
3)在OSPF路由表中只要能查找到對(duì)應(yīng)的OSPF內(nèi)部路由即可(無(wú)須最長(zhǎng)匹配)思科在進(jìn)行路由查找時(shí)遵循最長(zhǎng)匹配的原則。已證實(shí)。
8、如果路由器上在不同area計(jì)算的外部路由cost相同,那么也無(wú)法形成負(fù)載均衡,而是根據(jù)協(xié)議會(huì)選擇area id大的路由。不對(duì),已證實(shí),老苗的文檔
NSSA External LSA 由ASBR生成,作為nssa區(qū)域內(nèi)的路由器引入外部路由時(shí)使用(type7)
--在NSSA的ABR將NSSA內(nèi)部產(chǎn)生的Type 7類(lèi)型的LSA(P位置1)轉(zhuǎn)化為T(mén)ype 5類(lèi)型的LSA再發(fā)布出去,并同時(shí)更改LSA的發(fā)布者為ABR自己
標(biāo)記:N:NSSA P:Propagation(通知ABR路由器轉(zhuǎn)換此LSA并繼續(xù)擴(kuò)散),NSSA ABR(R2)收到Type7 LSA后自動(dòng)轉(zhuǎn)換成Type5 LSA。對(duì)于做轉(zhuǎn)換作用的abr,一個(gè)區(qū)域只能有一個(gè),通過(guò)競(jìng)爭(zhēng)選擇出來(lái)。在7類(lèi)lsa進(jìn)行聚合時(shí),無(wú)論聚合前l(fā)sa的FA地址是否相同,聚合后lsa的FA地址規(guī)則如下:
1、如果在nssa區(qū)域內(nèi)使能了loopback接口,則優(yōu)先選擇loopback接口地址為FA地址,如果使能了多個(gè)loopback接口則優(yōu)選接口地址大的為FA地址。如果此時(shí)去使能loopback接口,則選擇在nssa區(qū)域內(nèi)接口地址最大的網(wǎng)段地址為FA地址
2、如果沒(méi)有使能loopback接口,則按照display cu的順序選擇首先在nssa區(qū)域使能ospf的接口地址作為FA地址
3、如果聚合后的lsa的FA地址已經(jīng)選擇了最大的接口地址,此時(shí)將最大的接口地址undo,則會(huì)選擇次大的接口地址,以此類(lèi)推,但是如果重新network一個(gè)更大的接口IP地址,那么不會(huì)重選,如果重新network一個(gè)更大的loopabck地址,會(huì)重選。
NSSA的FA地址肯定為非0.0.0.0(一般為ASBR的loopback接口),ABR將type7轉(zhuǎn)換為type5時(shí),不會(huì)改變FA,所以area0內(nèi)只要到這個(gè)FA的路由均衡,就能實(shí)現(xiàn)負(fù)載均衡。已實(shí)驗(yàn)證實(shí)
注意:Type7 LSA攜帶FA的原則(在生成該ASE的ASBR上)需要轉(zhuǎn)換的Type7 LSA(P-bit置1)必須攜帶非零FA,轉(zhuǎn)換為type5 LSA時(shí)FA不變,滿(mǎn)足前面type5 LSA對(duì)應(yīng)條件時(shí),type7 LSA攜帶FA為該路由的直接下一跳地址;否則,RFC1587規(guī)定任選一個(gè)使能OSPF的接口地址作為FA。RFC3101做了進(jìn)一步的限定,建議選擇順序如下: 優(yōu)選使能OSPF的Loopback接口地址
選擇使能OSPF的stub接口(無(wú)鄰居的接口)地址 選擇使能OSPF的其它接口地址 等值路由形成的基本條件:
1、路由類(lèi)型一致、cost相同
2、所屬區(qū)域一樣(外部路由無(wú)此限制)
3、直接下一跳不同
4、E2外部路由還需要到ASBR/FA的路徑等值(Cisco的實(shí)現(xiàn)無(wú)此限制)
FA的填充規(guī)則:
1)Ase Lsa:
當(dāng)ASBR引入外部路由,并且ospf在被引入路由的下一跳的接口上enable,并且ASBR的下一跳接口的網(wǎng)絡(luò)類(lèi)型被定義為broadcast或nbma,F(xiàn)A被填寫(xiě)成非0;其他P-to-P或者P-to-MP或者passive接口都填0。2)NSSA if(loopback被使能到相同的NSSA區(qū)且接口UP){loopback被填充為FA} else{當(dāng)ASBR引入外部路由,并且ospf在被引入路由的下一跳的接口上enable,并且ASBR的下一跳接口的網(wǎng)絡(luò)類(lèi)型被定義為broadcast或nbma,,F(xiàn)A被填寫(xiě)成非0;其他第一個(gè)被使能到NSSA區(qū)域的接口} 注:NSSA的FA地址優(yōu)選本區(qū)域內(nèi)network的loopback地址,如果沒(méi)有,則在network的實(shí)際接口地址中選擇地址較小的一個(gè)作為FA來(lái)填充。但是就是不會(huì)為全0
OSPF的type5路由的的FA地址為非0的條件:
1、該ASE的下一跳邏輯路由為OSPF內(nèi)部路由或本地啟用OSPF的直連網(wǎng)段路由;
2、下一跳對(duì)應(yīng)的路由的出接口為廣播鏈路或NBMA,且該接口為非silent接口;
3、下一跳對(duì)應(yīng)路由的直接下一跳地址落在OSPF協(xié)議中network發(fā)布的網(wǎng)絡(luò)地址范圍內(nèi)(新版本不再檢查該規(guī)則)
滿(mǎn)足上述三個(gè)條件,則生成的FA地址為該路由的直接下一跳地址,除非FA對(duì)應(yīng)的接口down或去使能OSPF,否則LSA不會(huì)因?yàn)槠渌涌谑鼓躉SPF而更新。
OSPF各種區(qū)域解讀(重點(diǎn)):
? Transit區(qū)域:主要負(fù)責(zé)IP包的傳輸,互聯(lián)OSPF其它區(qū)域,可以接收Summary LSA和External LSA,會(huì)轉(zhuǎn)發(fā)來(lái)自骨干區(qū)域的所有LSA。
注:當(dāng)一個(gè)網(wǎng)段上沒(méi)有發(fā)現(xiàn)其他ospf路由器(譬如沒(méi)有其他hello報(bào)文)時(shí),被識(shí)別為一個(gè)stubnet網(wǎng)絡(luò)。一旦鄰居起來(lái)了,開(kāi)始發(fā)hello時(shí),網(wǎng)絡(luò)就變?yōu)閠ransit網(wǎng)絡(luò)了。
? STUB區(qū)域:允許學(xué)習(xí)type3 LSA;但拒絕type5 LSA(接收一條Default LSA作為T(mén)ype3 LSA用以彌補(bǔ))stub 所有與骨干區(qū)域相連的abr會(huì)向stub區(qū)域發(fā)布一條type3的缺省路由,然后按照type3的選路規(guī)則進(jìn)行路由計(jì)算,多個(gè)abr的話(huà),就有可能產(chǎn)生多條缺省路由,如果滿(mǎn)足負(fù)載均衡條件的話(huà)。不過(guò)當(dāng)其中一個(gè)abr收到其它abr的type3缺省路由,是不會(huì)去使用的,也不會(huì)生成缺省路由。(因?yàn)橄嗤膖ype3,自己不使用)? Total Stub區(qū)域:拒絕具體的type3,拒絕所有的type5(接收一條Default LSA作為T(mén)ype3用來(lái)彌補(bǔ))stub no-summary 規(guī)則同stub區(qū)域,只是total stub區(qū)域的路由器也不會(huì)接受type3路由。
? NSSA區(qū)域:允許學(xué)習(xí)type3(可以配置只接收一條缺省type3),拒絕所有引入的type5,可以由域內(nèi)的ASBR引入type7路由(并置P為1),到達(dá)ABR后,由于轉(zhuǎn)換成type5發(fā)布出去。(若是ABR產(chǎn)生的type7,則P置0,則不會(huì)被其它ABR轉(zhuǎn)換成type5)nssa [ default-route-advertise ]
1、NSSA區(qū)域一旦生成,ASBR 將以Type7 LSA的方式向OSPF注入外部路由信息,該信息只能在NSSA區(qū)域內(nèi)部擴(kuò)散
2、當(dāng)Type7 LSA抵達(dá)NSSA的ABR時(shí),ABR會(huì)扮演Translator功能將Type7 LSA自動(dòng)轉(zhuǎn)換成Type5 LSA繼續(xù)在OSPF Domain中擴(kuò)散,同時(shí)將adv修改為自己。
3、如果NSSA中存在兩個(gè)以上ABR,將進(jìn)行Translator的競(jìng)選,RID高者勝出,然后nssa區(qū)域的type7都會(huì)由該專(zhuān)職ABR轉(zhuǎn)換為type5,由于一個(gè)type7只需要轉(zhuǎn)換為一個(gè)type5,所以一個(gè)區(qū)域只需要一個(gè)translater即可。然后路由器結(jié)合type4,利用這些type5計(jì)算路由,所以是有可能計(jì)算出等價(jià)路由的。
4、當(dāng)NSSA的ABR同時(shí)作為ASBR時(shí),默認(rèn)情況下會(huì)同時(shí)生成Type7 LSA(擴(kuò)散到NSSA中,不會(huì)攜帶P-Propagation標(biāo)識(shí))和Type5 LSA擴(kuò)散到NSSA外;若不希望Type7 LSA擴(kuò)散到NSSA中(NSSA中有專(zhuān)職的ASBR),在ABR/ASBR上配置參數(shù)no-import-route,此時(shí)只會(huì)產(chǎn)生type5 LSA。
? Total Nssa區(qū)域:只接收type7類(lèi)路由 nssa [ default-route-advertise ] [ no-import-route ] no-summary
1、NSSA ABR會(huì)自動(dòng)生成默認(rèn)路由并以Type3 LSA的方式注入到Totally-NSSA中;
2、拒絕type3、type5類(lèi)路由。
路由優(yōu)選原則:
區(qū)域內(nèi)和區(qū)域間路由描述的是自治系統(tǒng)內(nèi)部的網(wǎng)絡(luò)結(jié)構(gòu);外部路由則描述了應(yīng)該如何選擇到自治系統(tǒng)以外目的地的路由。
第一類(lèi)外部路由是指接收的是IGP路由(例如RIP,STATIC),由于這類(lèi)路由的可信程度高一些,所以計(jì)算出的外部路由的花費(fèi)與自治系統(tǒng)內(nèi)部的路由花費(fèi)的數(shù)量級(jí)是相同的并且和OSPF自身路由的花費(fèi)具有可比性,即到第一類(lèi)外部路由的花費(fèi)值=本路由器到相應(yīng)的ASBR的花費(fèi)值+ASBR到該路由目的地址的花費(fèi)值。
第二類(lèi)外部路由是指接收的是EGP路由,由于這類(lèi)路由的可信度比較低,所以O(shè)SPF協(xié)議認(rèn)為從ASBR到自治系統(tǒng)之外的花費(fèi)遠(yuǎn)遠(yuǎn)大于在自治系統(tǒng)之內(nèi)到達(dá)ASBR的花費(fèi)。所以計(jì)算路由花費(fèi)時(shí)將主要考慮前者,即到第二類(lèi)外部路由的花費(fèi)值=ASBR到該路由目的地址的花費(fèi)值。如果該值相等,再考慮本路由器到相應(yīng)的ASBR的花費(fèi)值。路由優(yōu)選順序(從高到低): 1 區(qū)域內(nèi)路由:優(yōu)選cost小的 2 區(qū)域間路由:優(yōu)選cost小的 3 第一類(lèi)外部路由(E1 N1):
優(yōu)選cost小的;
cost相同時(shí),按照RFC1587優(yōu)選type5 LSA、次選P-bit置1的type7 LSA(目前VRP的實(shí)現(xiàn))
cost相同時(shí),按照RFC3101優(yōu)選P-bit置1的type7 LSA、次選type5 LSA、最次選Router-ID大的P-bit置0的type7 LSA 4 第二類(lèi)外部路由(E2 N2)優(yōu)選cost小的;
cost相同時(shí),優(yōu)選到ASBR/FA路徑短的
cost相同,到ASBR/FA路徑也相同時(shí),按照RFC1587優(yōu)選type5 LSA、次選P-bit置1的type7 LSA(目前VRP的實(shí)現(xiàn))
cost相同,到ASBR/FA路徑也相同時(shí),按照RFC3101優(yōu)選P-bit置1的type7 LSA、次選type5 LSA、最次選Router-ID大的P-bit置0的type7 LSA OSPF外部路由優(yōu)選(描述同一條路由的1或多條相同類(lèi)型的type5/type7間LSA):RFC1583compatible使能(兼容OSPFV1規(guī)則)
1、計(jì)算、確定到每條LSA對(duì)應(yīng)的ASBR/FA的內(nèi)部最優(yōu)路徑:先針對(duì)每條LSA確定OSPF內(nèi)部路徑 FA非0,選擇匹配FA地址的最優(yōu)OSPF內(nèi)部路由(IA或ia)FA為0,需要計(jì)算到ASBR的內(nèi)部最優(yōu)路徑 優(yōu)選到ASBR/FA cost最小的路徑
到一條LSA對(duì)應(yīng)的ASBR/FA存在多條等值路徑時(shí)
優(yōu)選Area ID大的路徑 //這條專(zhuān)指到同一個(gè)LSA指示的ASBR的通過(guò)不同區(qū)域的路由,來(lái)自不同區(qū)域的不同LSA不檢查該條規(guī)則
同區(qū)域時(shí)可以形成到ASBR/FA的等值路徑
2、計(jì)算每條LSA對(duì)應(yīng)的完整路徑的整體cost,優(yōu)選整體cost最小的路徑:結(jié)合第一條計(jì)算出來(lái)的OSPF內(nèi)部路由,再計(jì)算整體cost進(jìn)行比較
Type1且FA為0:LSA中metric+到ASBR的內(nèi)部最優(yōu)路徑開(kāi)銷(xiāo)
Type1且FA非0:LSA中metric+匹配FA地址的最優(yōu)OSPF內(nèi)部路由的cost Type2:LSA中metric;相同時(shí)優(yōu)選到ASBR/FA最短的路徑
3、優(yōu)選整體cost最小的完整路徑
多條LSA對(duì)應(yīng)的路徑整體cost相同(type2時(shí)到各條LSA對(duì)應(yīng)的ASBR/FA的路徑cost也相同)時(shí) 按照RFC1587優(yōu)選type5 LSA、次選P-bit置1的type7 LSA(目前VRP的實(shí)現(xiàn))
按照RFC3101優(yōu)選P-bit置1的type7 LSA、次選type5 LSA、最次選Router-ID大的P-bit置0的type7 LSA 存在多條等值最短路徑時(shí)形成等值路由(一條LSA可能形成多條等值路徑)
RFC1583compatible去使能(RFC2328 OSPFV2規(guī)則,不兼容RFC1583 OSPFV1規(guī)則)在該標(biāo)準(zhǔn)中增加到ASBR的路徑的優(yōu)先級(jí)屬性,并在各種規(guī)則前面進(jìn)行比較
1、計(jì)算、確定到每條LSA對(duì)應(yīng)的ASBR/FA的內(nèi)部最優(yōu)路徑 FA非0,選擇匹配FA地址的最優(yōu)OSPF內(nèi)部路由(IA或ia)FA為0,需要計(jì)算到ASBR的內(nèi)部最優(yōu)路徑
最優(yōu)選非骨干區(qū)的區(qū)域內(nèi)部路徑(Cisco實(shí)現(xiàn)與RFC2328不一致,剛好相反)
骨干區(qū)區(qū)域內(nèi)部路徑與區(qū)域間路徑優(yōu)先級(jí)相同 解釋?zhuān)簩?duì)到ASBR的路徑賦予優(yōu)先級(jí)屬性,非骨干區(qū)域內(nèi)路徑優(yōu)先級(jí)最高,其次是骨干區(qū)域內(nèi)路徑和區(qū)域間路徑的優(yōu)先級(jí)相同并次之 存在優(yōu)先級(jí)相同的多條路徑時(shí),繼續(xù)比較路徑的cost,優(yōu)選cost小的 存在同優(yōu)先級(jí)的多條等值路徑時(shí) 優(yōu)選Area ID大的路徑
同區(qū)域時(shí)可以形成到ASBR/FA的等值路徑
2、基于每條LSA的內(nèi)部最優(yōu)路徑的優(yōu)先級(jí)對(duì)LSA進(jìn)行篩選,僅路徑優(yōu)先級(jí)高的LSA進(jìn)入第3步計(jì)算。比1583使能多了一步,即在比較整體cost前,先比較路徑優(yōu)先級(jí),入選才繼續(xù)比較 最優(yōu)選非骨干區(qū)的區(qū)域內(nèi)部路徑
骨干區(qū)區(qū)域內(nèi)部路徑與區(qū)域間路徑優(yōu)先級(jí)相同
3、計(jì)算每條LSA對(duì)應(yīng)的完整路徑的整體cost,優(yōu)選整體cost最小的路徑 Type1且FA為0:LSA中metric+到ASBR的內(nèi)部最優(yōu)路徑開(kāi)銷(xiāo)
Type1且FA非0:LSA中metric+匹配FA地址的最優(yōu)OSPF內(nèi)部路由的cost Type2:LSA中metric;相同時(shí)優(yōu)選到ASBR/FA最短的路徑
4、優(yōu)選整體cost最小的完整路徑
多條LSA對(duì)應(yīng)的路徑整體cost相同(type2時(shí)到各條LSA對(duì)應(yīng)的ASBR/FA的路徑cost也相同)時(shí) 按照RFC1587優(yōu)選type5 LSA、次選P-bit置1的type7 LSA(目前VRP的實(shí)現(xiàn))
按照RFC3101優(yōu)選P-bit置1的type7 LSA、次選type5 LSA、最次選Router-ID大的P-bit置0的type7 LSA 存在多條等值最短路徑時(shí)形成等值路由(一條LSA可能形成多條等值路徑)
OSPF快收斂:
1、鄰居的hello和dead間隔時(shí)間,命令為 ospf timer hello interval
2、設(shè)置SPF計(jì)算間隔,spf-schedule-interval { interval1 | millisecond interval2 },(缺省5秒),縮短兩次SPF算法運(yùn)行的間隔時(shí)間來(lái)加快收斂。
3、配置LSA的更新時(shí)間間隔,命令lsa-originate-interval 0,指定LSA的更新時(shí)間間隔為0來(lái)取消LSA的更新時(shí)間間隔,使得拓?fù)浠蛘呗酚傻淖兓梢粤⒓赐ㄟ^(guò)LSA發(fā)布到網(wǎng)絡(luò)中
4、配置LSA被接收的時(shí)間間隔,命令為lsa-arrival-interval 0,指定LSA被接收的時(shí)間間隔為0,使得拓?fù)浠蛘呗酚傻淖兓軌蛄⒓幢桓兄健?/p>
5、減少接口傳送LSA的延遲時(shí)間,命令為ospf trans-delay interval OSPF目前不支持I-SPF,PRC以及智能定時(shí)器等快收斂手段,只能通過(guò)調(diào)整部分參數(shù)來(lái)達(dá)到快速收斂的目的。具體可以調(diào)整的參數(shù)如下:
1、調(diào)整OSPF協(xié)議SPF計(jì)算的間隔,命令為:spf-schedule-interval { interval1 | millisecond interval2 },設(shè)置SPF計(jì)算間隔。
默認(rèn)的SPF計(jì)算間隔為5s,用戶(hù)可以配置的范圍包括兩個(gè)檔次,可以配置秒級(jí)間隔,即1s~10s,也可以配置毫秒級(jí)間隔,范圍為1ms~10000ms,配置時(shí)應(yīng)根據(jù)網(wǎng)絡(luò)規(guī)模以及穩(wěn)定情況進(jìn)行調(diào)整。IGP快收斂設(shè)計(jì)到多個(gè)方面的優(yōu)化,不宜僅將計(jì)算間隔調(diào)的過(guò)小,避免產(chǎn)生不必要的震蕩。
2、調(diào)整OSPF協(xié)議LSA產(chǎn)生的間隔,命令為:lsa-originate-interval 0,配置LSA的更新時(shí)間間隔。缺省情況下,LSA的更新時(shí)間間隔為5秒。OSPF協(xié)議規(guī)定LSA的更新時(shí)間間隔5秒,是為了防止網(wǎng)絡(luò)連接或者路由頻繁動(dòng)蕩引起的過(guò)多占用網(wǎng)絡(luò)帶寬和路由器資源。在網(wǎng)絡(luò)相對(duì)穩(wěn)定、對(duì)路由收斂時(shí)間要求較高的組網(wǎng)環(huán)境中,可以指定LSA的更新時(shí)間間隔為0來(lái)取消LSA的更新時(shí)間間隔,使得拓?fù)浠蛘呗酚傻淖兓梢粤⒓赐ㄟ^(guò)LSA發(fā)布到網(wǎng)絡(luò)中,從而加快網(wǎng)絡(luò)中路由的收斂速度
3、調(diào)整LSA被接受的時(shí)間間隔:命令為:lsa-arrival-interval 0,配置LSA被接收的時(shí)間間隔。缺省情況下,LSA被接收的時(shí)間間隔為1秒。在網(wǎng)絡(luò)相對(duì)穩(wěn)定、對(duì)路由收斂時(shí)間要求較高的組網(wǎng)環(huán)境中,可以指定LSA被接收的時(shí)間間隔為0,使得拓?fù)浠蛘呗酚傻淖兓軌蛄⒓幢桓兄健?/p>
調(diào)整OSPF協(xié)議廣播鏈路或NBMA鏈路上的接口類(lèi)型:OSPF協(xié)議在廣播或者NBMA鏈路上會(huì)首先選舉DR,和BDR設(shè)備,然后其它的DR other路由器和DR,BDR之間建立鄰接關(guān)系,DR和BDR之間也建立鄰接關(guān)系。
4、為了提高鏈路上鄰居建立的速度,我們可以將背靠背連接兩臺(tái)路由器的廣播或者NBMA鏈路調(diào)整OSPF的鏈路類(lèi)型為P2P。具體命令為:ospf network-type p2p。
OSPF附錄E問(wèn)題:
為什么在OSPF中引入的兩條路由不能同時(shí)發(fā)布:
這個(gè)是VRP3.0的歷史遺留問(wèn)題,不支持附錄E。實(shí)際上一般情況下靜態(tài)路由都可以正確發(fā)布的,但對(duì)于類(lèi)似于RFC 2328 Appendix E情況,由于OSPF type 5 LSA的ID是以這些網(wǎng)段的地址來(lái)標(biāo)識(shí)的,每一類(lèi)型的LSA是以Adv RID即產(chǎn)生該LSA的路由器ID、LS Type以及LS ID即所承載的網(wǎng)段的網(wǎng)絡(luò)地址這三個(gè)信息的組合作為其關(guān)鍵值進(jìn)行區(qū)分的。所以同一臺(tái)路由器產(chǎn)生的或者引入外部路由而生成的這些LSA,對(duì)于那些網(wǎng)段地址一樣、而掩碼信息不一樣的路由,路由器認(rèn)為是同一條LSA,后發(fā)布的路由將會(huì)直接扔掉。例如對(duì)于靜態(tài)路由172.16.0.0/16和172.16.0.0/24的引入將只會(huì)生成一個(gè)LSA,其中必有一條路由因不能引入而被丟棄。先發(fā)布的LSA一直生效。如果掩碼短的生效就不會(huì)有問(wèn)題,因?yàn)榘诖a長(zhǎng)的路由了。
對(duì)于此種情況,在開(kāi)局過(guò)程中應(yīng)盡量規(guī)避。對(duì)于無(wú)法避免的情況提供以下解決規(guī)避措施:
(1)先發(fā)布短掩碼的路由,這樣長(zhǎng)掩碼的路由雖然丟失,但是其他路由器轉(zhuǎn)發(fā)數(shù)據(jù)包時(shí)會(huì)最長(zhǎng)匹配到短掩碼的路由,報(bào)文送到此路由器后,再根據(jù)最長(zhǎng)匹配查找長(zhǎng)掩碼的路由進(jìn)行轉(zhuǎn)發(fā)。(2)發(fā)布更短掩碼的路由時(shí),先刪除長(zhǎng)掩碼路由,然后再按照短長(zhǎng)掩碼順序network(3)network通告完短掩碼路由后,reset ospf process 例:OSPF協(xié)議是一種基于鏈路狀態(tài)的路由協(xié)議,其路由計(jì)算是基于鏈路狀態(tài)LSA的。當(dāng)路由器引入靜態(tài)路由時(shí),通過(guò)生成相應(yīng)的第5類(lèi)LSA進(jìn)行洪泛,以此向其他路由器傳遞拓?fù)湫畔ⅰ5?類(lèi)LSA是以對(duì)應(yīng)網(wǎng)段的IP地址來(lái)標(biāo)識(shí)的,并協(xié)同產(chǎn)生該LSA的路由器ID、LSA的序列號(hào)三個(gè)信息的組合作為其關(guān)鍵值進(jìn)行唯一性標(biāo)識(shí),不關(guān)心路由的掩碼信息。
在本次案例中,在S8016原來(lái)配置一條靜態(tài)路由222.240.223.0/25,生成了一條第5類(lèi)LSA往NE80E洪泛;當(dāng)再配置第二條靜態(tài)路由222.240.223.0/24時(shí),由于網(wǎng)段IP地址相同,不再生成重復(fù)的LSA。這時(shí)刪除原來(lái)的222.240.223.0/25的靜態(tài)路由,由于刷新機(jī)制的問(wèn)題,OSPF模塊不重新為后來(lái)的靜態(tài)路由生成ASE_LSA,而導(dǎo)致路由無(wú)法傳播。附錄E提供的解決方法
最短掩碼的路由產(chǎn)生的LSA的LS ID=網(wǎng)絡(luò)地址 其它路由產(chǎn)生的LSA的LS ID=網(wǎng)絡(luò)廣播地址 兼容效果:
具備附錄E功能的路由器可以發(fā)布附錄E的LSA,也能處理附錄E的LSA;不具備附錄E功能的路由器不能發(fā)布附錄E的LSA,但是能處理附錄E的LSA。滿(mǎn)足附錄E的效果:
ip route-static 7.7.0.0 255.255.0.0 NULL0 ip route-static 7.7.0.0 255.255.255.0 20.20.20.2 哪個(gè)先發(fā)布無(wú)所謂,掩碼長(zhǎng)的ase的ls id對(duì)應(yīng)掩碼0的部分會(huì)以1填充。disp ospf lsdb ase Type : External Ls id : 7.7.0.255 Adv rtr : 5.5.5.5 Ls age : 9 Len : 36 Options : E seq# : 80000001 chksum : 0xb8f5 Net mask : 255.255.255.0 TOS 0 Metric: 1 E type : 2 Forwarding Address : 0.0.0.0 Tag : 1 Type : External Ls id : 7.7.0.0 Adv rtr : 5.5.5.5 Ls age : 9 Len : 36 Options : E seq# : 80000002 chksum : 0xb6f6 Net mask : 255.255.0.0 TOS 0 Metric: 1 E type : 2 Forwarding Address : 0.0.0.0 Tag : 1
缺省路由的下發(fā)方法(重點(diǎn)):
一、Ospf通過(guò)兩種命令引入缺省路由: default-route-advertise 和default-route-advertise always,配置命令后ospf會(huì)產(chǎn)生一條5類(lèi)lsa向其他路由器泛洪這條缺省路由,由于這條命令不是在特定area視圖中配置的,所以產(chǎn)生的type5會(huì)引入到所有area(stub、nssa除外)。
缺省情況下,普通OSPF區(qū)域內(nèi)的OSPF路由器是不會(huì)產(chǎn)生缺省路由的。當(dāng)網(wǎng)絡(luò)中缺省路由是通過(guò)其他路由協(xié)議產(chǎn)生或其他OSPF進(jìn)程時(shí)(該缺省路由是活躍的,且本ospf進(jìn)程及ibgp路由),為了能夠?qū)⑷笔÷酚赏ǜ娴秸麄€(gè)OSPF域中,必須在ASBR上手動(dòng)通過(guò)命令default-route-advertise [ always ]進(jìn)行配置,如果沒(méi)有缺省路由,需要在default-route-advertise命令后加上always參數(shù)。配置了permit-calculate-other參數(shù)的ME設(shè)備仍然計(jì)算來(lái)自于其他ME設(shè)備的缺省路由。
注意:完全處于nssa區(qū)域的路由器,即使配置了default-route-advertise always,也不會(huì)生成type5缺省路由,只能使用nssa default-route-advertis命令,還要依賴(lài)總路由表中有已經(jīng)生效的缺省路由。原則就是OSPF視圖下default-route-advertise命令就是創(chuàng)建type5缺省路由的,而type5路由會(huì)受到各種規(guī)則限制。nssa default-route-advertise命令就是創(chuàng)建type7缺省路由的(攜帶P標(biāo)識(shí)),受相應(yīng)規(guī)則限制。
二、內(nèi)部缺省路由(三類(lèi)lsa):當(dāng)ospf區(qū)域?yàn)閟tub ,totally stub ,totally nssa 區(qū)域時(shí)(注意沒(méi)有nssa區(qū)域),與骨干網(wǎng)相連的ABR路由器會(huì)產(chǎn)生一條3類(lèi)lsa,向非骨干區(qū)域內(nèi)通告一條缺省路由。ABR自動(dòng)下發(fā)type3類(lèi)似的缺省路由,但互相不學(xué)習(xí)其他ABR發(fā)布的缺省路由。當(dāng)然不同區(qū)域缺省路由的功能時(shí)不一樣的:
1、Stub區(qū)域內(nèi)傳播1,2,3類(lèi)LSA。并不知道外部引入的路由。缺省路由的目的時(shí)通過(guò)ABR去往外部網(wǎng)絡(luò)。
2、Totally stub區(qū)域內(nèi)只能傳播1,2類(lèi)LSA,只知道自己區(qū)域內(nèi)的路由,外部一切信息都無(wú)法感知。這時(shí)缺省路由是通往外部的唯一橋梁。
3、Totally NSSA與NSSA區(qū)域的區(qū)別僅在于前者不允許區(qū)域間路由即Type3 Network Summary LSAs注入。區(qū)域內(nèi)的路由器通過(guò)ABR知道其他區(qū)域的路由。ABR會(huì)自動(dòng)產(chǎn)生一條Link State ID為0.0.0.0,網(wǎng)絡(luò)掩碼為0.0.0.0的Summary LSA(Type3 LSA)通告到整個(gè)nssa區(qū)域內(nèi)。
三、nssa區(qū)域(非total nssa默認(rèn)不會(huì)發(fā)布缺省路由)可以在abr上配置nssa default-route-advertise命令,來(lái)向nssa區(qū)域發(fā)布一條type7的缺省路由(注意是只向nssa區(qū)域發(fā)布,是否需要本地存在一條缺省路由,要看發(fā)布路由器的角色是ASBR還是ABR)。如果nssa的abr在ospf視圖中直接配置default-route-advertise命令,則同第一條,發(fā)布一個(gè)type5的缺省路由,該路由無(wú)法進(jìn)入nssa區(qū)域。所以如果向nssa區(qū)域注入缺省路由,必須使用nssa default-route-advertise命令注入type7缺省路由,或配置為total nssa區(qū)域來(lái)默認(rèn)注入type3缺省路由。
在NSSA ABR或者NSSA ASBR上通過(guò)命令NSSA default-route-advertise以Type 7 LSA方式注入默認(rèn)路由到NSSA中:
1、ASBR上必須擁有默認(rèn)路由(生成的Type7 LSA攜帶P標(biāo)識(shí))
2、ABR上可以沒(méi)有默認(rèn)路由(生成的Type7 LSA不攜帶P標(biāo)識(shí))
注:OSPF路由器已經(jīng)發(fā)布了缺省路由LSA,如果收到了其它OSPF路由器發(fā)布的相同類(lèi)型缺省路由LSA(能夠進(jìn)入LSDB),但收到的默認(rèn)路由LSA不會(huì)參與SPF計(jì)算。
VRP5.x:發(fā)布缺省路由時(shí)不學(xué)習(xí)本進(jìn)程其它路由器發(fā)布的默認(rèn)路由,IBGP缺省路由不滿(mǎn)足非強(qiáng)制下發(fā)條件
LSA的過(guò)濾手段:
OSPF的過(guò)濾有兩種,一種是對(duì)路由表的過(guò)濾,這種方式只對(duì)配置過(guò)濾的路由器起作用,不能阻止LSA的泛洪,因此也不能影響其他路由器生成路由,filter-policy import(VRP)/distribute-list in(IOS);另一種是對(duì)LSA的過(guò)濾,這種方式其實(shí)并不是對(duì)LSA過(guò)濾,只是阻止LSA的生成,沒(méi)有了LSA,相應(yīng)也會(huì)影響其他同區(qū)域或同自治域的路由器。
對(duì)路由表的過(guò)濾,適用所有運(yùn)行OSPF的路由器;其他命令都是阻止LSA的生成,只能過(guò)濾原本應(yīng)該是本路由器產(chǎn)生的LSA,這種過(guò)濾只能在LSA生成者上做過(guò)濾,ASBR是ASE/NSSA LSA的生成者,ABR是SUMMARY LSA的生成者,NSSA區(qū)域的ABR是NSSA轉(zhuǎn)ASE的生成者,所以我們很容易想到這種方式的過(guò)濾只能在ABR,ASBR和NSSA區(qū)域的ABR上。
OSPF中6種過(guò)濾方式:
1、filter-policy import(OSPF)
只能用來(lái)過(guò)濾OSPF有效路由表里的路由,并不能阻止LSA的泛洪。(除此之外,以下的過(guò)濾方式均是對(duì)LSA的過(guò)濾),被過(guò)濾的路由在路由表中為inactive狀態(tài)。對(duì)接收的OSPF區(qū)域內(nèi)、區(qū)域間和自制系統(tǒng)外部的路由進(jìn)行過(guò)濾。
對(duì)應(yīng)IOS命令為Router(config-router)# distribute-list 1 in/distribute-list prefix 1 in
對(duì)應(yīng)Junos命令為import policy。IOS并不認(rèn)為這是一種真正的OSPF過(guò)濾。R1路由器上配置兩條靜態(tài)路由,然后import到ospf中。ip route-static 11.11.11.11 255.255.255.255 NULL0 ip route-static 111.111.111.111 255.255.255.255 NULL0 查看R2的路由表
2、filter-policy export[acl/ip-prefix]/import-route(OSPF)[route-policy] 該命令用來(lái)在ASBR上對(duì)ASE/NSSA過(guò)濾,可以對(duì)本臺(tái)路由器引入而產(chǎn)生的ASE/NSSA LSA做過(guò)濾,過(guò)濾徹底,所有OSPF域的路由器將不會(huì)收到被過(guò)濾的ASE/NSSA LSA。
對(duì)應(yīng)IOS命令為Router(config-router)#distribute-list x out [rip]/ redistribute rip route-map
在R1上配置filter-policy export的策略,拒絕11.11.11.11/32的lsa進(jìn)入到ospf中。ospf 1 filter-policy ip-prefix huawei export //阻止引入路由生成ase的lsdb import-route static ip ip-prefix huawei index 10 deny 11.11.11.11 32 ip ip-prefix huawei index 20 permit 0.0.0.0 0 less-equal 32 配置后在R1上查看lsdb,發(fā)現(xiàn)已經(jīng)沒(méi)有了11.11.11.11/32的ase lsa。[R1]dis ospf lsdb OSPF Process 1 with Router ID 111.111.111.111 Type LinkState ID AdvRouter Age Len Sequence Metric External 111.111.111.111 1.1.1.1 10 36 80000001 1 R2、R3也同樣沒(méi)有了11.11.11.11/32的ase lsa,當(dāng)然也無(wú)法計(jì)算出路由來(lái)。
3、asbr-summary not-advertise(OSPF)
該命令用來(lái)在ASBR上可以對(duì)自身產(chǎn)生的ASE/NSSA做過(guò)濾,阻止本路由器產(chǎn)生符合特定條件的ASE/NSSA,以及在NSSA區(qū)域的ABR上可以對(duì)7轉(zhuǎn)5的LSA做過(guò)濾,阻止本路由器根據(jù)NSSA產(chǎn)生符合特定條件的ASE。對(duì)應(yīng)IOS命令為Router(config-router)#summary-address 10.0.0.0 255.255.25.0 no advertise
NSSA區(qū)域的ABR可以在ABR上對(duì)Type7轉(zhuǎn)5的LSA進(jìn)行二次過(guò)濾
在R1上配置[R1-ospf-1]asbr-summary 11.11.11.11 255.255.255.255 not-advertise //阻止asbr發(fā)布type5的lsdb,或阻止nssa的abr轉(zhuǎn)換type7的lsdb 解釋?zhuān)簩?duì)路由進(jìn)行聚合后,可以阻止明細(xì)路由發(fā)布,同時(shí)由于配置了not-advertise參數(shù),所以聚合路由也不會(huì)被發(fā)布了,于是達(dá)到了過(guò)濾效果。
配置后,查看R1的lsab發(fā)現(xiàn)已經(jīng)沒(méi)有了11.11.11.11/32的ase lsa,其他路由器也沒(méi)有11.11.11.11/32的ase lsa,同樣無(wú)法計(jì)算出路由,過(guò)濾徹底。[R1-ospf-1]dis ospf lsdb AS External Database Type LinkState ID AdvRouter Age Len Sequence Metric External 111.111.111.111 1.1.1.1 142 36 80000001 1 對(duì)于在ABR上配置7轉(zhuǎn)5時(shí)過(guò)濾時(shí)需要注意以下特性:
ABR全局路由表中只有存在FA地址的路由時(shí),才會(huì)將nssa-external轉(zhuǎn)換成external lsa,其他路由器收到這個(gè)external的lsa后,還要檢查是否有到達(dá)fa地址的路由,如果沒(méi)有,不會(huì)參與計(jì)算,所以在ABR上如果對(duì)fa地址路由(該種過(guò)濾無(wú)法通過(guò)配置suppress-fa來(lái)搞定,因?yàn)樵贏BR上根本沒(méi)有執(zhí)行nssa-external轉(zhuǎn)external)或lsa進(jìn)行過(guò)濾,都會(huì)導(dǎo)致骨干區(qū)其他路由器無(wú)法計(jì)算該路由。如果確實(shí)需要進(jìn)行過(guò)濾,那么需要在ABR上配置R2(config-router)#area 100 nssa translate type7 suppress-fa命令。
在上圖的組網(wǎng)中,如果想在ABR上做Area 2區(qū)域的ASBR地址的LSA過(guò)濾,(我司VRP5命令為area視圖下abr-summary 100.0.15.0 255.255.255.0 not-advertise,此時(shí)在ABR上仍舊有ASBR FA地址的路由和nssa-external路由,該路由器也會(huì)將nssa-external lsa轉(zhuǎn)換成external lsa,其他路由器也有external的lsa,但由于沒(méi)有FA地址的路由,因此該external lsa不會(huì)參與計(jì)算,無(wú)法生成路由)或者(配置distribute-list in過(guò)濾掉FA的路由,此時(shí)ABR的路由表上由于沒(méi)有asbr FA地址的路由,也算不出來(lái)nssa-external的路由,同時(shí)ABR不會(huì)將nssa-external轉(zhuǎn)換成external,這樣其他路由器根本都不會(huì)再有external的lsa),那么會(huì)導(dǎo)致Area0的路由器無(wú)法到達(dá)AS1的網(wǎng)絡(luò),因?yàn)锳rea 2中ASBR的地址被寫(xiě)進(jìn)了Type 7 LSA的FA中,沒(méi)有到達(dá)這個(gè)FA地址的路由,Area0中的路由器無(wú)法使用這些Type5(7轉(zhuǎn)5)的LSA計(jì)算路由。
注:主要原因是在ABR上將FA地址的LSA聚合了,導(dǎo)致Area0中沒(méi)有這個(gè)FA地址路由無(wú)法迭代。配置命令:Router(config-router)# area 10 nssa translate type7 suppress-fa 我司目前VRP5.5仍不支持此特性, VRP5.6版本開(kāi)始支持該特性;Cisco在12.2(15)T版本之后提供此特性。注:在我司VRP5.6之前有一種解決方案,如果在ABR上配置了abr-summary not-advertise對(duì)ASBR的路由做了過(guò)濾,那么可以在ABR上配置asbr-summary對(duì)ase路由進(jìn)行一次聚合,這樣FA地址會(huì)改為0,就不會(huì)再去查FA地址,保證網(wǎng)絡(luò)可通。(asbr-sunmary x.x.x.x聚合的網(wǎng)段可以和原來(lái)的網(wǎng)段一致,這樣也能夠發(fā)布ase路由,并將FA置0)
4、filter import(area視圖)[acl/ip-prefix/route-policy] 該命令用來(lái)在ABR上作summary lsa過(guò)濾,如果是骨干區(qū)域(非骨干區(qū)域),就防止從其他非骨干區(qū)域(骨干區(qū)域)轉(zhuǎn)換到該區(qū)域符合特定條件的summary lsa生成,過(guò)濾徹底。
對(duì)應(yīng)IOS命令為Router(config-router)# area area-id filter-list prefix prefix-list-name in filter export(area視圖)[acl/ip-prefix/route-policy] 命令用來(lái)在ABR上作summary lsa過(guò)濾,如果是骨干區(qū)域(非骨干區(qū)域),就阻止從該區(qū)域轉(zhuǎn)換到其他非骨干區(qū)域(骨干區(qū)域)符合特定條件的summary lsa生成,過(guò)濾徹底。
對(duì)應(yīng)IOS命令為Router(config-router)# area area-id filter-list prefix prefix-list-name out
配置summary lsa過(guò)濾前,在R3上查看summary lsa的條目:
5、abr-summary not-advertise(area)用來(lái)在ABR上summary lsa做過(guò)濾,如果是骨干區(qū)域(非骨干區(qū)域),就防止從該區(qū)域轉(zhuǎn)換到其他非骨干區(qū)域(骨干區(qū)域)符合特定條件的summary lsa生成,類(lèi)似filter-policy export(area)命令的作用,但又有點(diǎn)區(qū)別,該命令只對(duì)本區(qū)域的區(qū)域內(nèi)路由作過(guò)濾不對(duì)區(qū)域間路由做過(guò)濾。(原因是:這條命令是聚合命令,目前我們VRP和IOS的聚合命令的實(shí)現(xiàn)是只對(duì)本區(qū)域的路由做聚合而不對(duì)區(qū)域間路由做聚合,所以說(shuō)abr-summary not-advertise這條命令實(shí)際只是對(duì)本區(qū)域的區(qū)域內(nèi)路由起過(guò)濾作用。)
對(duì)應(yīng)IOS命令為:Router(config-router)#area 10 range 1.1.1.0 255.255.255.0 no-advertise 在R2上配置abr-summary過(guò)濾1.1.1.1/32的summary lsa。
[R2-ospf-1-area-0.0.0.100]abr-summary 1.1.1.1 255.255.255.255 not-advertise //阻止abr生成type3的lsdb(只限本區(qū)域的type3,如果是轉(zhuǎn)發(fā)其它區(qū)域的type3就不行了)配置后在R3上查看lsa,發(fā)現(xiàn)已經(jīng)沒(méi)有了1.1.1.1的lsa信息。
6、ospf filter-lsa-out 該命令用來(lái)在廣播、NBMA、P2P以及P2MP網(wǎng)絡(luò)中,配置對(duì)特定OSPF接口出方向的LSA進(jìn)行過(guò)濾。有以下參數(shù): all:對(duì)所有的LSA(除了Grace LSA)都進(jìn)行過(guò)濾。summary:對(duì)Network Summary LSA(Type3)進(jìn)行過(guò)濾。acl acl-number:指定基本訪(fǎng)問(wèn)控制列表編號(hào)。整數(shù)形式。ase:對(duì)AS External LSA(Type5)進(jìn)行過(guò)濾。nssa:對(duì)NSSA LSA(Type7)進(jìn)行過(guò)濾。
通過(guò)對(duì)特定OSPF接口出方向的LSA進(jìn)行過(guò)濾可以不向鄰居發(fā)送無(wú)用的LSA,從而減少鄰居LSDB的大小,提高網(wǎng)絡(luò)收斂速度。
當(dāng)兩臺(tái)路由器之間存在多條鏈路時(shí),通過(guò)配置本地路由器可以在某些鏈路上過(guò)濾LSA的傳送,減少不必要的重傳,節(jié)省帶寬資源。
在P2MP網(wǎng)絡(luò)中配置對(duì)指定鄰居發(fā)送的LSA進(jìn)行過(guò)濾時(shí),需要使用filter-lsa-out peer命令。
路由聚合(重點(diǎn)):
在ABR上,通過(guò)命令abr-summary x.x.x.x對(duì)區(qū)域間路由(Type3 LSA)進(jìn)行聚合,可通過(guò)命令advertise配置該聚合路由是否發(fā)布。
1、不能跨區(qū)域聚合(不能企圖聚合來(lái)自其它ABR的Type3 LSA,在OSPF中,每個(gè)路由器均沒(méi)有資格去處理其它路由始發(fā)的LSA)
2、聚合路由可以跨區(qū)域傳輸(每經(jīng)過(guò)一個(gè)區(qū)域AdvRouter會(huì)發(fā)生改變)注意:進(jìn)行type3類(lèi)路由聚合時(shí),區(qū)域內(nèi)必須至少有一條在聚合的路由范圍內(nèi)的明細(xì)路由在OSPF中使能了,聚合路由才能生效。聚合后,明細(xì)路由就不再發(fā)布了。相同網(wǎng)絡(luò)前綴,不同掩碼的聚合路由,掩碼更長(zhǎng)的生效,短掩碼的消失???
向本區(qū)域也發(fā)布一條聚合路由,并且adv都是原router,不管是哪個(gè)abr進(jìn)行的聚合???可能是轉(zhuǎn)換另一個(gè)abr聚合的type3得來(lái)的。
在ASBR上,通過(guò)命令asbr-summary x.x.x.x對(duì)外部路由(Type5 LSA Type7 LSA)進(jìn)行聚合,原則同上。注:NSSA的ABR(Translator)收到的Type7 LSA轉(zhuǎn)換成Type5 LSA后,能夠?qū)ι傻腡ype5 LSA進(jìn)行聚合再擴(kuò)散出去,所以在NSSA區(qū)域中路由存在二次聚合的機(jī)會(huì)配置了路由聚合后,可以通過(guò)手工配置與聚合路由相同前綴/掩碼的黑洞路由來(lái)避免路由環(huán)路。注意ase路由聚合后,F(xiàn)A就統(tǒng)一變成了全0了,下一跳就直接指向做聚合的這臺(tái)ABR了。OSPF路由聚合:
1、OSPF內(nèi)部路由和外部路由的聚合是獨(dú)立進(jìn)行的
2、OSPF內(nèi)部路由聚合(只能在ABR上進(jìn)行): abr-summary 20.0.0.0 255.255.255.0 僅能聚合ABR發(fā)給其它區(qū)域的本區(qū)域內(nèi)部路由(即誰(shuí)產(chǎn)生的路由,誰(shuí)負(fù)責(zé)聚合,其他ABR發(fā)布的type3本地僅能修改adv后轉(zhuǎn)發(fā)),聚合路由LSA的metric=最差明細(xì)路由cost 加上no-advertise參數(shù)可以實(shí)現(xiàn)type3 LSA過(guò)濾
注意聚合后,該聚合路由所涵蓋的type3的明細(xì)路由就不再發(fā)布了,目前沒(méi)有機(jī)制可以使明細(xì)路由發(fā)布。多ABR區(qū)域注意聚合的一致性(否則可能導(dǎo)致流量一邊倒)
3、外部路由聚合(只能在ASBR上進(jìn)行): asbr-summary 10.0.0.0 255.255.0.0 僅能聚合本地引入的外部路由(本ASBR產(chǎn)生的type5才能在發(fā)布時(shí)進(jìn)行操作,也就是聚合)加上no-advertise參數(shù)可以實(shí)現(xiàn)type5/type7 LSA過(guò)濾
NSSA區(qū)域Translator ABR可以(且只能由translator執(zhí)行)聚合整個(gè)區(qū)域NSSA路由。但注意聚合后FA丟失,可能造成回程流量一邊倒。聚合路由屬性:
聚合路由的類(lèi)型(E1/E2)及cost值與最差明細(xì)路由相同(ciso選最優(yōu)的)聚合路由類(lèi)型為E1時(shí),LSA metric=最差明細(xì)路由LSA metric 聚合路由類(lèi)型為E2時(shí),LSA metric=(最差明細(xì)路由LSA metric)+1
路由收斂?jī)?yōu)先級(jí): 收斂?jī)?yōu)先級(jí)的順序由高到低為critical > high > medium > low。
prefix-priority配置OSPF路由的收斂?jī)?yōu)先級(jí)。該命令根據(jù)指定的IP前綴列表名來(lái)配置OSPF路由的收斂?jī)?yōu)先級(jí),僅在公網(wǎng)上配置有效。
缺省情況下,公網(wǎng)OSPF主機(jī)路由的收斂?jī)?yōu)先級(jí)為medium,直連路由的收斂?jī)?yōu)先級(jí)為high,靜態(tài)路由的收斂?jī)?yōu)先級(jí)為medium,其他協(xié)議(如BGP、RIP等)路由的收斂?jī)?yōu)先級(jí)為low。私網(wǎng)中OSPF 32位主機(jī)路由統(tǒng)一標(biāo)識(shí)為medium。表現(xiàn)就是優(yōu)先處理(包括計(jì)算和泛洪L(zhǎng)SA、同步LSDB等動(dòng)作)優(yōu)先級(jí)級(jí)別較高的LSA,從而加速這部分路由的收斂速度。
prefix-priority命令用來(lái)配置IS-IS路由的收斂?jī)?yōu)先級(jí),該命令僅在公網(wǎng)生效。
缺省情況下,IS-IS 32位主機(jī)路由的收斂?jī)?yōu)先級(jí)為medium,其他IS-IS路由的收斂?jī)?yōu)先級(jí)為low。Level-2 IS-IS路由的收斂?jī)?yōu)先級(jí)高于Level-1 IS-IS路由的收斂?jī)?yōu)先級(jí)。
如果一條路由符合多個(gè)收斂?jī)?yōu)先級(jí)的匹配規(guī)則,則這些收斂?jī)?yōu)先級(jí)中最高者當(dāng)選為路由的收斂?jī)?yōu)先級(jí)
第三篇:網(wǎng)絡(luò)工程師o(wú)spf總結(jié)
LSA類(lèi)型》》》
LSA-1(沿途累加metric值)
LSA-2
(不累加)
LSA-3
區(qū)域間 OIA
LSA-4
(幫助5類(lèi)查找定位Asbr的位置)
LSA-5
OE1/2
OSPF的特殊區(qū)域類(lèi)型》》》
(因?yàn)長(zhǎng)SA類(lèi)型條目過(guò)多,使用ospf特殊區(qū)域類(lèi)型限制LSA的傳播范圍)
1.stub area 末節(jié)區(qū)域
does not accept externall LSA(不接收4、5類(lèi)LSA)
另外在EIGRP中某路由被置為stub后其不會(huì)接收查詢(xún)包
2.totally stubby area絕對(duì)末節(jié)區(qū)域
does not accept external or summary(不接收4、5類(lèi)、3類(lèi)LSA)
3.配置stub and totally stub 區(qū)域的規(guī)則條件:
有單個(gè)或者多個(gè)ABR存在(即存在多區(qū)域);
某區(qū)域被配置為特殊區(qū)域則該區(qū)域中所有路由器都要配置成相同類(lèi)型的特殊區(qū)域類(lèi)型;
該區(qū)域不能有ASBR;
該區(qū)域不能為主干區(qū)域 即area 0;
該區(qū)域不能有虛鏈路virtual link 通過(guò);
第四篇:ospf學(xué)習(xí)心得
OSPF(open shortest path first)開(kāi)放式最短路徑協(xié)議已經(jīng)成為網(wǎng)絡(luò)中非常重要的一員,涉及到OSPF的RFC(包括草案等)有58個(gè),這從正面說(shuō)明了其重要性。
我們?yōu)槭裁从肙SPF
每樣事物的誕生都有其緣由,同樣的,每種網(wǎng)絡(luò)中的協(xié)議的存在都是有其原因的,不管它是否有很多的缺陷,或者是很不好使用,存在即合理這話(huà)應(yīng)牢牢刻在腦中的。
OSPF是一種公有的鏈路狀態(tài)協(xié)議,既然公有,那就說(shuō)明了是各個(gè)廠(chǎng)商都會(huì)支持的,相對(duì)那些私有的路由協(xié)議(其實(shí)就那IGRP和EIGRP了,其實(shí)EIGRP很強(qiáng)大的,cisco的研發(fā)人員真的強(qiáng))來(lái)說(shuō)這是一個(gè)極大的優(yōu)勢(shì);其次,它是基于IP的鏈路狀態(tài)路由協(xié)議,鏈路狀態(tài)的另外一個(gè)代名詞就是無(wú)循環(huán)了,因?yàn)槊恳粋€(gè)OSPF的成員都有它所處區(qū)域的所有成員的LSA(這里可以看出為啥一直強(qiáng)調(diào)LSA的傳播不允許受到阻礙了),然后根據(jù)已有的LSA通過(guò)迪杰克斯拉算法得出了它所處區(qū)域的拓?fù)洹?/p>
從OSPF協(xié)議包的角度來(lái)說(shuō),網(wǎng)絡(luò)規(guī)模是沒(méi)有任何限制的,但是這個(gè)優(yōu)點(diǎn)只是相對(duì)來(lái)說(shuō),因?yàn)榈辖芸怂估惴ǎㄒ韵路Q(chēng)為SPF算法)所耗用的CPU資源是比較巨大的,并且對(duì)于一個(gè)OSPF路由器來(lái)說(shuō),它所要維護(hù)的鏈路狀態(tài)數(shù)據(jù)庫(kù)的規(guī)模是隨著區(qū)域的大小指數(shù)型上升的,因此,OSPF引進(jìn)了一個(gè)非常重要的概念——區(qū)域,區(qū)域的加盟,使得OSPF的擴(kuò)展性得到了極大的提高(有另外中夸張的說(shuō)法,OSPF沒(méi)有區(qū)域還不如一個(gè)RIPv2)。基于對(duì)OSPF設(shè)備的壓力,一個(gè)區(qū)域的OSPF節(jié)點(diǎn)數(shù)推薦為30-200(一般設(shè)計(jì)小于50),區(qū)域有幾個(gè)很重要的特點(diǎn):路由器只與同一區(qū)域的路由器去分享LSA,去同步LSDB;擁有更小的LSDB以及更少的LSA的洪泛(即blooding);大多數(shù)的洪泛都只限于單個(gè)區(qū)域。
OSPF另外一個(gè)不算優(yōu)點(diǎn)的優(yōu)點(diǎn)--VLSM CIDR,即變長(zhǎng)子網(wǎng)劃分,就是說(shuō)掩碼決定網(wǎng)絡(luò),其實(shí)大多路由協(xié)議都能夠做到這一點(diǎn);相對(duì)距離矢量路由協(xié)議來(lái)說(shuō),OSPF減少了對(duì)設(shè)備和鏈路的帶寬壓力,相對(duì)距離矢量的定時(shí)更新機(jī)制,OSPF采取了更為靈活的方式--出發(fā)更新和定期的hello包,一個(gè)用來(lái)確定鄰居還活著的,一個(gè)用來(lái)處理突發(fā)事件;OSPF的收斂速度是很快的,通過(guò)各種計(jì)時(shí)器的調(diào)節(jié)使其的收斂時(shí)間能夠到達(dá)ms級(jí)別。
OSPF的協(xié)議包
OSPF的設(shè)計(jì)之初就是為T(mén)CP/IP協(xié)議簇服務(wù)的,因此它是IP封裝的,它不支持appletalk網(wǎng)絡(luò),不支持IPX,也不支持CLNP等網(wǎng)絡(luò)(相對(duì)IS-IS來(lái)說(shuō),這是一個(gè)劣勢(shì)了)。它使用了IP協(xié)議號(hào)89,因此它是三層的協(xié)議。在廣播環(huán)境的網(wǎng)絡(luò)(如以太網(wǎng))下,它的協(xié)議包的目標(biāo)IP是224.0.0.5(所有運(yùn)行OSPF協(xié)議的路由器均會(huì)接收),或者是224.0.0.6(這是給DR和BDR的),源IP若沒(méi)有特殊指定,自然就是協(xié)議包出口的IP了。
OSPF的PDU(protocol data unite協(xié)議數(shù)據(jù)單元,即協(xié)議包了)有五種:hello包,DBD包(database description數(shù)據(jù)庫(kù)描述包),LSR(link state request鏈路狀態(tài)請(qǐng)求包),LSU(link state update鏈路狀態(tài)更新包)和LSACK(link state acknowledge鏈路狀態(tài)確認(rèn)包)。聽(tīng)俺一一道來(lái)各種包的作用。
hello包:發(fā)現(xiàn)鄰居;協(xié)商鄰居參數(shù);維持鄰居關(guān)系(通過(guò)定時(shí)打招呼實(shí)現(xiàn),反正包小嘛,對(duì)鏈路壓力也不大);確保鄰居路由器的雙向通信(在鄰居給自己的hello包中發(fā)現(xiàn)了自己的router ID);在MA(Multiaccess多路訪(fǎng)問(wèn))網(wǎng)絡(luò)(可以理解為廣播型網(wǎng)絡(luò)了,以太網(wǎng)啥的,不過(guò)那啥NBMA也屬于的)中選擇DR和BDR。每臺(tái)OSPF路由器在起來(lái)時(shí)首先干的事情就是發(fā)hello包,看還有誰(shuí)是一伙的了,通過(guò)hello包,志同道合(即運(yùn)行OSPF的路由器)的互相聯(lián)系下,通過(guò)互相打招呼,大家開(kāi)始拉幫結(jié)派了,憑著以下幾個(gè)共同點(diǎn):area id,即區(qū)域ID,;認(rèn)證,OSPF的協(xié)議結(jié)構(gòu)中有一個(gè)認(rèn)證的概念,包括認(rèn)證的方式和口令(一種簡(jiǎn)單的明文口令,還有種可以用MD5哦);掩碼(其實(shí)這個(gè)的檢測(cè)并不像書(shū)上說(shuō)的那樣),在一個(gè)網(wǎng)段就好了;hello interval,hello包的間隔,這個(gè)沒(méi)得說(shuō),大家打招呼時(shí)間不一致,會(huì)引起保持時(shí)間的不一致從而引起鄰居表震蕩;保持時(shí)間,即在一段時(shí)間內(nèi)未收到鄰居hello包,等多久宣告該鄰居無(wú)效的時(shí)間,也叫做路由器無(wú)效間隔時(shí)間,保持時(shí)間的不一致同樣會(huì)造成鄰居表的震蕩(其實(shí)缺省來(lái)說(shuō),一般是4個(gè)hello interval);可選項(xiàng),即option值,一些特殊的可選性能的支持。hello包的源目標(biāo)IP是隨著網(wǎng)絡(luò)的不同而不同的,在最廣泛使用的以太網(wǎng)中,自然目的IP是組播地址,224.0.0.4和224.0.0.5;點(diǎn)對(duì)點(diǎn)類(lèi)型的網(wǎng)絡(luò)中,很奇怪的是,用的目標(biāo)地址也是組播地址(覺(jué)得奇怪是因?yàn)樵邳c(diǎn)對(duì)點(diǎn)中這條路過(guò)去就是你,沒(méi)有任何人了,用單播豈不簡(jiǎn)單得多,有待研究);NBMA中用單播地址,這個(gè)能夠理解,畢竟幀中繼網(wǎng)絡(luò)復(fù)雜程度比較高,過(guò)多的映射會(huì)很痛苦;點(diǎn)到多點(diǎn),既然點(diǎn)到多點(diǎn)是人為創(chuàng)造的點(diǎn)到點(diǎn)的集合,自然也是組播了;虛鏈路中,單播,又是人為弄出來(lái)的,這個(gè)多在分裂區(qū)域使用,畢竟用虛鏈路雖然降低了效率,但總比分裂的區(qū)域要好。
DBD包,有些叫做DDP,有些叫DD。其實(shí)大家所說(shuō)的都一樣,都是指database description packet數(shù)據(jù)庫(kù)描述包了。數(shù)據(jù)庫(kù)描述包在鄰接關(guān)系的形成過(guò)程中占據(jù)了非常重要的地位。顧名思義,既然叫做數(shù)據(jù)庫(kù)描述包,自然它發(fā)出去時(shí)自然要帶上自己數(shù)據(jù)庫(kù)中的LSA,但是如此一來(lái),可能存在的浪費(fèi)就很多了,說(shuō)不定大家數(shù)據(jù)庫(kù)擁有的LSA都差不多,你這一全帶出去,對(duì)鏈路壓力啥的就大了,所以它只把數(shù)據(jù)庫(kù)中的LSA頭部帶了出去,讓人家去對(duì)比,看看少了哪些LSA或者哪些LSA已經(jīng)不是最新的了,其主要目的就達(dá)到了。不過(guò)在此之前,DBD包的另外一功能:選舉主從路由器(其實(shí)也是為了可靠的交換LSA頭部而來(lái))。因?yàn)橐_(kāi)始交換信息了,但是OSPF使用的IP并不是可靠的,所以必須要靠OSPF自己解決可靠性問(wèn)題了。這時(shí)候,DBD包中的數(shù)據(jù)庫(kù)描述序列號(hào)就開(kāi)始起作用了,類(lèi)似TCP中序列號(hào)的作用。如此一來(lái),選個(gè)主從就是相對(duì)簡(jiǎn)單的解決方法了,由主決定(呵呵)。其中有幾個(gè)置位需要了解下:I位(Initial初始位),我總要告訴別人我發(fā)的是啥包啊,不然等人看完了才知道豈不是浪費(fèi)了,第一個(gè)DBD包I位置位為一;M位(More后繼位),其實(shí)這個(gè)就是仿效IP數(shù)據(jù)結(jié)構(gòu)中標(biāo)記位的MF(more fragment更多的分片),置一時(shí)就是說(shuō)后頭還有DBD包;MS位(master slave主從位),前邊說(shuō)的住就置一了。
LSR包,link state request鏈路狀態(tài)請(qǐng)求包,應(yīng)該說(shuō)是LSA的請(qǐng)求包。上邊的DBD完成了讓大家互相了解所欠缺的LSA,既然我的LSA不是最新的或者干脆沒(méi)有,那么自然要去問(wèn)有的人要了。發(fā)一張單子出去,請(qǐng)求的LSA列表在上頭,請(qǐng)求的那些LSA有三個(gè)東東:link state type鏈路狀態(tài)的類(lèi)型,其實(shí)就是說(shuō)LSAn(n是1到7除了6)了;link state ID鏈路狀態(tài)ID,這個(gè)在不同網(wǎng)絡(luò)是不同的,基本是子網(wǎng)信息,鄰居的路由器ID等;advertising router這里裝的是產(chǎn)生這個(gè)LSA的router ID。
LSU包,link state undate鏈路狀態(tài)更新包。這沒(méi)得說(shuō),一邊要,一邊給咯,要不然這個(gè)OSPF不死翹翹。當(dāng)然,在網(wǎng)絡(luò)變化的時(shí)候也會(huì)產(chǎn)生的。
LSACK,link state acknowledge鏈路狀態(tài)確認(rèn)包。這個(gè)是保證可靠性的,自然要來(lái)。
在LSU中的LSA的傳輸中有兩種方式保證其傳輸?shù)陌目煽啃裕弘[式和顯示。顯式自然是收到了你的關(guān)于這個(gè)LSA的LSACK了;隱式即在接下來(lái)的發(fā)過(guò)去的LSR更新包中并沒(méi)有出現(xiàn)這條LSA的請(qǐng)求信息。
OSPF的操作概述
第一步:OSPF的路由器從所有的OSPF接口發(fā)送hello包,主要目的是形成鄰居,在互相都收到了hello包后,形成了鄰居。
第二步:通過(guò)DBD,LSR,LSU形成鄰接關(guān)系。其實(shí)說(shuō)白了,鄰接關(guān)系是一種虛擬的點(diǎn)對(duì)點(diǎn)鏈路,看看鄰居表里頭鄰居的那些個(gè)數(shù)據(jù)就知道了。這個(gè)是與二層鏈路性質(zhì)有關(guān)的。
第三步:路由器互相交換LSA(接口,鄰居路由器,鏈路狀態(tài))。
第四步:LSA的同步。同一區(qū)域內(nèi)OSPF的路由器中的LSDB完全一致,因此就有了區(qū)域內(nèi)LSA的洪泛不能受到任何阻礙這句話(huà),這個(gè)自然,不一致會(huì)出大問(wèn)題的。
第五步:以自己為根算一個(gè)SPF路徑,占資源比較嚴(yán)重的事來(lái)了,SPF占用資源是比較大的。
第六步:根據(jù)SPF路徑構(gòu)建路由表。
完全按照自己的想法來(lái)寫(xiě)了,哪位高人指出錯(cuò)誤,不勝感激
接口的狀態(tài)
在OSPF路由器上,接口有以下幾種狀態(tài):
Down狀態(tài):最初狀態(tài),這時(shí)并不是說(shuō)接口是down的,只能說(shuō),這個(gè)接口沒(méi)有啟用OSPF罷了,專(zhuān)業(yè)名詞叫做非功能狀態(tài),沒(méi)有任何協(xié)議包傳送,;
Point-to-point狀態(tài):這個(gè)狀態(tài)僅僅在點(diǎn)到點(diǎn)網(wǎng)絡(luò)環(huán)境才會(huì)出現(xiàn),當(dāng)然,點(diǎn)到多點(diǎn)和虛鏈路自然也是,性質(zhì)一樣,此狀態(tài)的接口,一旦形成了鄰居就自然形成鄰接關(guān)系。
Loopback狀態(tài):自己設(shè)置的。
以下四個(gè)狀態(tài)是在MA網(wǎng)絡(luò)中才會(huì)有的:
Waiting狀態(tài):廣播網(wǎng)絡(luò)中,NBMA。確定DR,BDR之前的狀態(tài)。DR狀態(tài):說(shuō)明在當(dāng)前的這臺(tái)OSPF路由器上這個(gè)接口為DR。Backup狀態(tài):當(dāng)前這臺(tái)OSPF路由器的此接口為BDR。
DRother狀態(tài):這臺(tái)OSPF路由器的此接口非DR,非BDR。
說(shuō)完了自己接口的狀態(tài),自然就開(kāi)始說(shuō)與鄰居的狀態(tài)了
首先的狀態(tài)仍然是down狀態(tài):沒(méi)有收到鄰居的hello包,自己發(fā)了一堆,那人沒(méi)反應(yīng),自然就是down了,其實(shí)應(yīng)該說(shuō)是在與其形成鄰居后,那人沒(méi)有反應(yīng)了,才叫做down。
Attempt狀態(tài):這個(gè)狀態(tài)僅僅適用于NBMA網(wǎng)絡(luò),鄰居的關(guān)系也需要手工的配置,按照poll interval發(fā)送hello包。
Init狀態(tài):收到了鄰居的hello包,但是在鄰居hello包的鄰居列表中沒(méi)有看到自己的routerID。
2-way狀態(tài):在鄰居的hello包中看到了自己的routerID,當(dāng)然,有可能自己看來(lái)是2-way狀態(tài),但在鄰居看來(lái)卻是Init狀態(tài),這個(gè)與延遲等有關(guān)。
Exstart狀態(tài):準(zhǔn)啟動(dòng)狀態(tài),此狀態(tài)中建立master/slave關(guān)系,并且確定了DBD包中的序列號(hào)。
Exchange狀態(tài):交換狀態(tài),交換LSDB中LSA摘要信息的狀態(tài),通過(guò)互相交換發(fā)送DBD包,嚴(yán)格來(lái)說(shuō),這個(gè)狀態(tài)已經(jīng)發(fā)送了LSR包。
Loading狀態(tài):此時(shí)是交換LSDB中LSA的狀態(tài),通過(guò)互相發(fā)送LSR,LSU,LSACK實(shí)現(xiàn)。
Full狀態(tài):大家LSDB達(dá)到了同步。OSPF路由器與鄰居的關(guān)系
首先自然是通過(guò)互相發(fā)送hello包,發(fā)現(xiàn)OSPF鄰居;其次,實(shí)現(xiàn)雙向通訊,其實(shí)不過(guò)是要在對(duì)方發(fā)過(guò)來(lái)的hello包中的鄰居列表發(fā)現(xiàn)自己的routerID罷了;再次,LSDB的同步,鄰居建立成了,自然要向鄰接的方向發(fā)展,通過(guò)DBD,LSR,LSU來(lái)同步LSDB;最后,達(dá)到full adjacency,即達(dá)到了鄰接。
其實(shí)應(yīng)該好好說(shuō)說(shuō)數(shù)據(jù)結(jié)構(gòu)的,但是書(shū)上有,還是覺(jué)得應(yīng)該說(shuō)下
DR(Designated Router):在一般網(wǎng)絡(luò)中這個(gè)名詞的使用頻率是很高了,大多數(shù)用的都是以太網(wǎng),自然,MA中的典型代表。在多路訪(fǎng)問(wèn)的網(wǎng)絡(luò)中,廣播網(wǎng)絡(luò)環(huán)境中。在OSPF路由器的數(shù)量不是很多的情況下,形成full mesh的全鄰接關(guān)系其實(shí)也沒(méi)啥,因?yàn)猷徑拥泥従硬欢啵牡馁Y源以及對(duì)帶寬的壓力也不多。但對(duì)于有較多節(jié)點(diǎn)的網(wǎng)絡(luò)中,過(guò)多的鄰接關(guān)系會(huì)給鏈路造成極大的壓力,對(duì)設(shè)備本身也會(huì)造成很大的壓力。想想看,偌大一個(gè)網(wǎng)絡(luò),充斥著無(wú)數(shù)224.0.0.5的組播包會(huì)怎么樣,這還不包括后頭那一堆子更新包。所以這時(shí)候要選個(gè)頭出來(lái)了,大家都跟它建立鄰接,與它同步LSDB,如此一來(lái),整個(gè)網(wǎng)絡(luò)的鄰接關(guān)系呈指數(shù)級(jí)減少了。對(duì)于管理以及做相應(yīng)策略來(lái)說(shuō),也輕松了很多。BDR(Backup Designated Router):這個(gè)存在的目的就是防止單點(diǎn)故障了,雖然DR掛了后,網(wǎng)絡(luò)收斂會(huì)再次選舉,但是這要時(shí)間啊,于是,這個(gè)副統(tǒng)領(lǐng)就出來(lái)了。同樣它也也跟所有人建立了鄰接關(guān)系,LSDB啥的也同步好了,只是不吭聲,等大哥死了后,它就上位了。主干路由器:位于主干區(qū)域的路由器,至少有一個(gè)接口連接到了區(qū)域0。這些路由器采用與內(nèi)部路由器相同的程序步驟和算法來(lái)維持OSPF路由的選擇信息。這個(gè)區(qū)域0是與其他區(qū)域的轉(zhuǎn)接區(qū)域。ABR(Area Border Router)區(qū)域邊界路由器:這類(lèi)路由器的任務(wù)比較艱巨,連接到多個(gè)區(qū)域接口的路由器。這些路由器為它們所連接的每一個(gè)區(qū)域都維護(hù)了單獨(dú)的LSDB,并且路由那些去往或者來(lái)自其他區(qū)域的數(shù)據(jù)流。ABR是區(qū)域的出口,那些目的地是其他區(qū)域的路由選擇信息之能夠通過(guò)自己這個(gè)區(qū)域的ABR才能到達(dá)。ABR歸納了LSDB以后,會(huì)把它發(fā)往主干區(qū)域。主干區(qū)域的ABR將會(huì)把這些信息發(fā)送到它們相連的所有其他的區(qū)域。它的作用有點(diǎn)類(lèi)似一個(gè)網(wǎng)段中的網(wǎng)關(guān)了,不過(guò)是那種有HSRP的,因?yàn)橐粋€(gè)區(qū)域可能有很多的ABR。當(dāng)然了,一般如果沒(méi)有設(shè)計(jì)錯(cuò)誤的話(huà),ABR的連接的一個(gè)區(qū)域肯定是區(qū)域0的。ASBR(英文名難寫(xiě))自治系統(tǒng)邊界路由器:它就是到外部網(wǎng)絡(luò)的出口了,它有一個(gè)接口是到外部網(wǎng)絡(luò)去的,有一個(gè)接口是OSPF域內(nèi)的接口。這些路由器能夠引入(就是重發(fā)布了)非OSPF得網(wǎng)絡(luò)信息到OSPF網(wǎng)絡(luò),或者把OSPF的網(wǎng)絡(luò)信息給外頭。
標(biāo)準(zhǔn)區(qū)域:?jiǎn)蝹€(gè)OSPF區(qū)域。能夠接收域內(nèi)的鏈路更新,域間的路由匯總和外部的路由。主干區(qū)域:也叫做轉(zhuǎn)接區(qū)域,當(dāng)它連接到多個(gè)區(qū)域時(shí),它是所有區(qū)域所連接的中心。其實(shí)主干區(qū)域就是我們說(shuō)的區(qū)域0了。所有其他區(qū)域都必須連接到這主干區(qū)域來(lái)交換信息并且路由信息。其實(shí)在區(qū)域間傳遞路由時(shí),OSPF的行為是距離矢量的,主干區(qū)域的存在避免了循環(huán)的可能。
存根區(qū)域:也叫樁區(qū)域(stub area),不接收本身AS(OSPF網(wǎng)絡(luò))以外的路由信息的一種區(qū)域,如果它要路由到AS外的網(wǎng)絡(luò),就會(huì)使用缺省路由了。
完全存根:不接受外部AS路由或者來(lái)自AS內(nèi)其他區(qū)域的匯總路由的區(qū)域。一旦需要路由到非本區(qū)域的網(wǎng)絡(luò),那么就使用缺省路由了。
次存根(NSSA):接收有限數(shù)量的外部路由。數(shù)量限于那些所需的提供區(qū)域間連接的路由。其實(shí)以上幾種區(qū)域的表現(xiàn)就是LSA的不同表現(xiàn)罷了。
鄰居與鄰接的問(wèn)題
在繼續(xù)之后的話(huà)題前,覺(jué)得應(yīng)該好好說(shuō)一下鄰居與鄰接的問(wèn)題。其實(shí)在之前協(xié)議包的介紹時(shí)就已經(jīng)說(shuō)過(guò)部分了,今天算是補(bǔ)全了。
OSPF路由器為了形成鄰居關(guān)系而互相發(fā)送hello包,或組播或單播,只是不同網(wǎng)絡(luò)環(huán)境采取的不同方式罷了。形成鄰居需要驗(yàn)證的幾個(gè)參數(shù)在hello包的介紹中已經(jīng)說(shuō)了,略微提下:area ID;認(rèn)證;掩碼;hello interval;保持時(shí)間;option值。
鄰居關(guān)系形成了,對(duì)于點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)和以太網(wǎng),接下來(lái)操心的事情就是鄰接關(guān)系的形成了。但對(duì)于NBMA網(wǎng)絡(luò)來(lái)說(shuō)(它很牛B),要操心的事情才剛開(kāi)始。
在點(diǎn)到點(diǎn)和點(diǎn)對(duì)多點(diǎn)網(wǎng)絡(luò)環(huán)境下是不需要管鄰接的,只要成為了鄰居自然就成為了鄰接。想想看,對(duì)于我的這個(gè)接口,除了我就你了,不和你鄰居還能跟誰(shuí)鄰居,不和你鄰接那鄰居還有啥意義啊,呵呵。
在廣播型網(wǎng)絡(luò)中,其實(shí)就是說(shuō)在以太網(wǎng)中,組播和廣播地址都有它們對(duì)應(yīng)的MAC地址,所以二層封裝不存在問(wèn)題,要解決的就是鄰接問(wèn)題了。
對(duì)于NBMA網(wǎng)絡(luò)來(lái)說(shuō),又稍微的不同了,誰(shuí)叫人家牛B呢,因?yàn)槭欠菑V播類(lèi)型,所以二層封裝有問(wèn)題。并且,它也是MA網(wǎng)絡(luò),所以它要選DR和BDR。
要記住的是,在MA網(wǎng)絡(luò)中,會(huì)自動(dòng)的去選舉DR,BDR,為了便于控制,自然我們?nèi)ジ缮嫠倪x舉比較好。
要求真的很低,大家頂下貼就可以了,如果覺(jué)得我寫(xiě)得很差,盡可以提出來(lái),有問(wèn)題大家可以一起討論,不過(guò)唱獨(dú)角戲真的很難過(guò)。
為什么需要多區(qū)域
相信對(duì)于區(qū)域的理解是比較令人頭疼的,因?yàn)槊糠N特殊區(qū)域里頭都被看似亂七八糟的LSA充斥著。應(yīng)該牢記的一句話(huà)是:LSA的可靠洪泛在一個(gè)純粹的OSPF網(wǎng)絡(luò)中不允許受到阻礙。其目的是LSDB完全一致,再之后產(chǎn)生的結(jié)果是,大家都以自己為根生成了一棵樹(shù),并且樹(shù)的樣子是一樣的,樹(shù)的樣子一樣,也就是路由一致了。LSA不受阻礙的洪泛原因也就出來(lái)了,在OSPF路由器沒(méi)有收到區(qū)域內(nèi)所有的LSA時(shí),它不會(huì)運(yùn)行SPF算法來(lái)計(jì)算出路由,因?yàn)闆](méi)有得到自己所在區(qū)域內(nèi)所有LSA前,它對(duì)網(wǎng)絡(luò)的拓?fù)渚陀腥笔В娜笔Ш苡锌赡芫驮斐闪搜h(huán)了。
扯遠(yuǎn)了,回到話(huà)題。隨著OSPF路由器的數(shù)目激增,問(wèn)題出來(lái)了,維護(hù)巨大的LSDB所需要的內(nèi)存以及運(yùn)行SPF算法對(duì)CPU的巨大壓力;巨大的細(xì)化路由不能匯總導(dǎo)致查找路由表已經(jīng)轉(zhuǎn)發(fā)的速度急劇下降(不能匯總的路由之前說(shuō)了,我們沒(méi)法干涉);LSA洪泛所引起的動(dòng)蕩變化將席卷整個(gè)網(wǎng)絡(luò)而無(wú)法被壓制(牽一發(fā)而動(dòng)全身)。
如此一來(lái),我們需要做的事情是減小OSPF路由器保持的LSDB,匯總以及壓制動(dòng)蕩。其實(shí)歸根結(jié)底就是一句話(huà),想讓LSA受控,我們只能隔離了,而后區(qū)域應(yīng)運(yùn)而生。所以要記住的是,區(qū)域間的行為已經(jīng)不是鏈路狀態(tài)而是距離矢量路由協(xié)議的行為了。而為了防止出現(xiàn)循環(huán),就出現(xiàn)了所有區(qū)域必須連接到區(qū)域0這條定義性質(zhì)的規(guī)定。如此一來(lái),就像是大家分團(tuán)抱一起,爾后由一個(gè)或幾個(gè)強(qiáng)大點(diǎn)的角色做邊界,用來(lái)隔離LSA洪泛的范圍以及將LSA以受控的形式傳播出去。
區(qū)域有以下的幾個(gè)特點(diǎn):OSPF路由器只跟同一區(qū)域下的OSPF路由器去分享鏈路,去同步鏈路狀態(tài);更小的LSDB,更少的LSA的洪泛,之前區(qū)域設(shè)計(jì)的主要目的達(dá)成;大多數(shù)的洪泛僅僅局限于單個(gè)區(qū)域,不可能不與外頭通信,有通信自然要與外頭交換信息,只是這時(shí)出去的LSA是已經(jīng)被控制了的。
其實(shí)從根本意義來(lái)說(shuō),OSPF不過(guò)是種應(yīng)用罷了。不同的是它建立在IOS(對(duì)CISCO來(lái)說(shuō))基礎(chǔ)上。那一臺(tái)臺(tái)路由器交換機(jī)和防火墻都是裝了系統(tǒng)的類(lèi)似PC的東西,它們有CPU(防火墻稍微有些不同了),有內(nèi)存,有flash卡,等等。少了的東西不過(guò)輸入輸出設(shè)備了,但是當(dāng)我們的本本連上時(shí),一臺(tái)類(lèi)似PC結(jié)構(gòu)的東西就成立了。這樣想吧,我們PC上的office知道用,為啥就不會(huì)用IOS上的OSPF呢。覺(jué)得腦中應(yīng)該把OSPF當(dāng)作一種IOS的應(yīng)用,那些網(wǎng)絡(luò)設(shè)備是用來(lái)傳遞數(shù)據(jù)的,OSPF不過(guò)是一種讓我們以?xún)?yōu)化的方法傳遞數(shù)據(jù)的方式了。其實(shí)不光是OSPF,其他協(xié)議都一樣,只是應(yīng)用罷了,雖然這應(yīng)用可能對(duì)我們來(lái)說(shuō)有些復(fù)雜。萬(wàn)變不離其宗,其實(shí)設(shè)備間協(xié)議的交流倒有些類(lèi)似PC的交流了。網(wǎng)絡(luò)設(shè)備間要協(xié)同合作,首先要給它們一種語(yǔ)言了,那就是現(xiàn)在的各種協(xié)議了,各自有各自的任務(wù),但其最終的目的還是轉(zhuǎn)發(fā)數(shù)據(jù),所有的技術(shù),圍繞的就是更好的更快的更安全的轉(zhuǎn)發(fā)數(shù)據(jù)。把那些技術(shù)從這一層面考慮,那么會(huì)發(fā)現(xiàn),其實(shí)那些協(xié)議不是很難。
協(xié)議的產(chǎn)生很簡(jiǎn)單,就是為了更好的服務(wù)數(shù)據(jù)傳輸。比如說(shuō)OSPF,鏈路狀態(tài)路由協(xié)議,出現(xiàn)的目的很簡(jiǎn)單,它對(duì)大網(wǎng)絡(luò)的適應(yīng)能力比rip之類(lèi)的強(qiáng),而且付出的代價(jià)并不高,路由協(xié)議干嘛的,傳遞路由嘛,傳遞路由干嘛,讓路由器為數(shù)據(jù)選路,轉(zhuǎn)發(fā)數(shù)據(jù)。再比如說(shuō),MPLS,標(biāo)簽轉(zhuǎn)發(fā),很熱的,出現(xiàn)也很簡(jiǎn)單,擁有稍遜于ATM的傳輸速度但相對(duì)很低廉的實(shí)施成本,通過(guò)傳遞標(biāo)簽,生成類(lèi)似路由表的標(biāo)簽轉(zhuǎn)發(fā)表,通過(guò)標(biāo)簽轉(zhuǎn)發(fā),速度提升是不言而喻的,技術(shù)都是互相學(xué)習(xí)的,互用所長(zhǎng)補(bǔ)其短,每項(xiàng)技術(shù)都有其優(yōu)點(diǎn)有其缺陷。
既然協(xié)議是語(yǔ)言,那么自然有其語(yǔ)法,語(yǔ)義,時(shí)序。三者缺一不可,就像是人類(lèi)說(shuō)話(huà)的話(huà)語(yǔ)般,每句話(huà)都有其順序,都有其格式,對(duì)其相同的字有相同的理解。而協(xié)議中交流就是通過(guò)協(xié)議包了,整個(gè)網(wǎng)絡(luò)充滿(mǎn)著各式的協(xié)議包,大家互相交流,傳遞著各種協(xié)議的信息。
LSA 前邊說(shuō)了一大堆,絕大多數(shù)都是與LSA有關(guān)的。LSA作為理解OSPF中最為重要的一個(gè)部分,是很需要好好理解的。LSA的具體說(shuō)明其實(shí)路由卷一里頭有,所以下邊只會(huì)粗略的說(shuō)下了。
了解一種包最簡(jiǎn)單的方法無(wú)外乎研究其數(shù)據(jù)結(jié)構(gòu),LSA包的頭部中需要注意的幾個(gè)參數(shù):
類(lèi)型,鏈路狀態(tài)ID和通告路由器,它們?nèi)呶ㄒ蛔R(shí)別每個(gè)LSA,、只是通過(guò)這三項(xiàng)在LSDB中識(shí)別出一個(gè)LSA,僅僅是識(shí)別出,通過(guò)老化時(shí)間,序列號(hào)和校驗(yàn)和識(shí)別了一個(gè)LSA的最新實(shí)例,也就是說(shuō)要確認(rèn)一個(gè)LSA是否是最新的,需要通過(guò)以上六項(xiàng)實(shí)現(xiàn)。而LSR的包里頭包含的東西就是前三項(xiàng):類(lèi)型,鏈路狀態(tài)ID和通告路由器了。
區(qū)域決定LSA,一個(gè)區(qū)域內(nèi)能夠洪泛著的LSA能否到達(dá)其他區(qū)域,這一切是在我們控制下的,我們的配置決定了這個(gè)區(qū)域中擁有哪些LSA。不過(guò)為了真正理解OSPF,希望能夠從LSA的角度來(lái)看,也就是說(shuō)認(rèn)為L(zhǎng)SA決定了這個(gè)區(qū)域是什么區(qū)域。
LSA總共有11種,編號(hào)自然是1至11號(hào),其中常用的就是1到5再加上7了。6和8 偶爾得用,前者用于組播OSPF里頭,8是用在bgp里頭的東西了。
不同的路由器產(chǎn)生不同的LSA,并且對(duì)各種LSA的處理方式也不同,其實(shí)說(shuō)到底,我們是能夠控制除了LSA1,LSA2以外所有LSA的,但是是在特定的路由器(其實(shí)說(shuō)白了就是ABR,ASBR了)上才能夠控制,因?yàn)槠渌鸏SA都是它們產(chǎn)生的,只能控制產(chǎn)生,不能控制其洪泛范圍,這點(diǎn)再次強(qiáng)調(diào),否則很容易出現(xiàn)意想不到的事情。
至此基礎(chǔ)理論基本完結(jié),準(zhǔn)備開(kāi)始貼配置了。
本來(lái)都完全死心了
感謝樓上
呵呵
OSPF高級(jí)特性
很多協(xié)議都有其所謂的高級(jí)特性,其實(shí)這些高級(jí)特性不見(jiàn)得有多高級(jí),多數(shù)不過(guò)是一些更加細(xì)化的名詞解釋?zhuān)恍┴?fù)載均衡的使用等等。下邊就開(kāi)始名詞解釋了。
NBMA下的OSPF,這個(gè)環(huán)境應(yīng)該說(shuō)是最繞人的一個(gè)環(huán)境,如果能夠在這里頭把OSPF給繞清楚,那么其他的幾個(gè)環(huán)境的了解不過(guò)是探囊取物罷了。
NBMA環(huán)境之所以復(fù)雜,就是其名字的分開(kāi)處理的集合比較復(fù)雜了。
首先,MA:有了一個(gè)MA,那么OSPF就要選擇DR,BDR了。
其次,NB:這一點(diǎn)又不能保證所有路由器都能正常接收hello包,由此導(dǎo)致的不能自動(dòng)發(fā)現(xiàn)所有鄰居。
那么,針對(duì)NBMA的解決方法就不外乎以下幾個(gè)了:
適應(yīng)NBMA環(huán)境;讓NBMA支持廣播;修改網(wǎng)絡(luò)類(lèi)型,不選舉DR,BDR。在卷一里頭有詳細(xì)的說(shuō)明,這里就不仔細(xì)說(shuō)了,反正繞來(lái)繞去就是上邊三種方法之一的實(shí)現(xiàn)。
OSPF數(shù)據(jù)流量類(lèi)型:區(qū)域內(nèi),區(qū)域間,外部。這名詞沒(méi)啥解釋的。
虛鏈路是應(yīng)用在區(qū)域分裂時(shí)的。其定義:通過(guò)非骨干區(qū)域連到骨干區(qū)域的一條鏈路。虛鏈路實(shí)施的幾條規(guī)則:首先它必須在ASBR上配置,這個(gè)毋庸置疑,ASBR本身用來(lái)連接區(qū)域0與其他區(qū)域的;其次虛鏈路穿過(guò)的區(qū)域必須有完整的路由表,這點(diǎn)也自然,在轉(zhuǎn)發(fā)路由器看來(lái),虛鏈路的數(shù)據(jù)包跟正常的數(shù)據(jù)包沒(méi)啥兩樣;虛鏈路穿過(guò)的區(qū)域不能是stub區(qū)域,不然stub區(qū)域還叫啥stub區(qū)域了,這么多出口;虛鏈路只是一種臨時(shí)的修補(bǔ)措施,不能長(zhǎng)期施行;通過(guò)冗余設(shè)計(jì)來(lái)避免使用虛鏈路,所以說(shuō),良好的設(shè)計(jì)很重要。
按需鏈路上的OSPF,按需鏈路是種比較特殊的鏈路,因?yàn)檫@鏈路是按時(shí)間收費(fèi)的,所以hello包和LSA被壓制了。Hello包在按需鏈路下的作用很簡(jiǎn)單,僅僅用于啟用按需鏈路,并且LSA在正常情況下不會(huì)老化。協(xié)議自主啟用連接的情況:LSA的option改了;收到LSA的Age為MaxAge的新的實(shí)例;LSA頭部長(zhǎng)度改變;LSA內(nèi)容發(fā)生變化。
最后一節(jié),寫(xiě)完后下次就貼配置了。
OSPF網(wǎng)絡(luò)設(shè)計(jì)
其實(shí)這是一個(gè)大塊了,市面上根本就有本設(shè)計(jì)指南,所以這里也不過(guò)撿些東西說(shuō)說(shuō)了。其實(shí)網(wǎng)絡(luò)設(shè)計(jì)就圍繞那么幾個(gè)東西來(lái):可用性,可靠性,可擴(kuò)展性,其實(shí)還有個(gè)東西-可控性,我們自己設(shè)計(jì)的東西都不在我們的控制范圍,那還做啥呢。
有幾條原則(啰七八嗦一堆,實(shí)際上大家對(duì)著上頭的那幾個(gè)什么性來(lái)看就好了):
1.要記住OSPF是圍繞區(qū)域0構(gòu)建的,因?yàn)閺腛SPF區(qū)域間的路由傳遞看來(lái),其行為是從自己路由表中拿出來(lái)給別人,這樣一來(lái),就成為了距離矢量路由協(xié)議的標(biāo)準(zhǔn)行為,實(shí)際上是違背了鏈路狀態(tài)的原則的:我的這些路由是你給我的,而不是我通過(guò)LSA算出來(lái)的。由此一來(lái),循環(huán)的存在的可能性就不可避免了,所以采取了措施去避免循環(huán):區(qū)域0的建立,所有區(qū)域都連在區(qū)域0上,區(qū)域0擁有全局2.3.4.5.路由,那么循環(huán)自然就不會(huì)存在了。
一般來(lái)說(shuō)是以業(yè)務(wù)或者地理位置為單位來(lái)劃分區(qū)域的,劃分區(qū)域的可謂一舉多得,之前說(shuō)的區(qū)域一大堆好處自然,隨后還有類(lèi)似vlan的隔離,不過(guò)這隔離倒是高了一檔次,在路由層面隔離了。業(yè)務(wù)模型決定了流量的模型,特殊區(qū)域的存在使得業(yè)務(wù)的控制更加精確。Cost值的控制在此逐漸體現(xiàn)其作用了,在大帶寬的環(huán)境下,各廠(chǎng)商自己算的cost已不再能清晰的指引數(shù)據(jù)走不同的路了,此般,cost只能我們自己手工定義了,我們才是網(wǎng)絡(luò)的控制者,讓它自己折騰不定會(huì)成啥樣。特殊鏈路的存在,其實(shí)說(shuō)白了就是NBMA了,這些鏈路需要好好的注意下。路由器ID應(yīng)該好好的規(guī)劃下,別到時(shí)候找臺(tái)設(shè)備都需要通過(guò)一堆的show命令才能找到。ABR,ASBR最好都有鏈路的冗余,冗余不管啥技術(shù)出來(lái)總是要關(guān)心的,但要記住的是冗余細(xì)分下來(lái)倒是分為了主備和負(fù)載均衡,這個(gè)需要自己去斟酌了。IP地址的規(guī)劃不能亂來(lái)了,最好能夠以區(qū)域?yàn)閱挝粊?lái)劃分,一般說(shuō)最好整個(gè)公司對(duì)外是呈現(xiàn)一個(gè)網(wǎng)絡(luò)號(hào),自然就要?jiǎng)澐肿泳W(wǎng)了,其實(shí)現(xiàn)在對(duì)外都那么幾個(gè)公有IP了,所以就隨自己喜好去規(guī)劃IP了。其實(shí)就是一句話(huà),便于匯總,壓制動(dòng)蕩,穩(wěn)定性(個(gè)人認(rèn)為穩(wěn)定性是屬于可靠性的,呵呵)。引入外部路由的問(wèn)題一向都是需要注意的,要記住一條通用的規(guī)則,只有小的網(wǎng)絡(luò)重發(fā)布到大的網(wǎng)絡(luò),大的只能以匯總的形式通告小的。不然隨意想想,一個(gè)偌大的BGP來(lái)個(gè)上w條路由到OSPF中,OSPF豈不撐死。
覺(jué)得路由匯總和地址的匯聚應(yīng)該要好好說(shuō)說(shuō)。首先要明確的是,鏈路狀態(tài)路由協(xié)議不能在任意路由器上匯總,前邊說(shuō)得很清楚了;OSPF是通過(guò)控制洪泛來(lái)隱藏拓?fù)浣Y(jié)構(gòu)的,這條說(shuō)起來(lái)也很簡(jiǎn)單,如果LSA能夠到達(dá)每一個(gè)角落,那么任何一臺(tái)路由器都有整個(gè)網(wǎng)絡(luò)的拓?fù)淞耍ㄟ^(guò)ABR來(lái)確定洪泛的范圍,來(lái)控制路由的匯總和地址的匯聚(其實(shí)差不多了);其實(shí)之前說(shuō)的控制網(wǎng)絡(luò)這個(gè)問(wèn)題并不是簡(jiǎn)單的事情,網(wǎng)絡(luò)的復(fù)雜性由此體現(xiàn)了,不論怎樣設(shè)計(jì),還是有很多東西在我們的控制以外,從一定角度來(lái)證明了網(wǎng)絡(luò)的復(fù)雜。
第五篇:OSPF協(xié)議優(yōu)缺點(diǎn)
OSPF協(xié)議優(yōu)缺點(diǎn)
與RIP協(xié)議不同,OSPF將一個(gè)自治域再劃分為區(qū),相應(yīng)地即有兩種類(lèi)型的路由選擇方式?當(dāng)源和目的地在同一區(qū)時(shí),采用區(qū)內(nèi)路由選擇;當(dāng)源和目的地在不同區(qū)時(shí),則采用區(qū)間路由選擇?這就大大減少了網(wǎng)絡(luò)開(kāi)銷(xiāo),并增加了網(wǎng)絡(luò)的穩(wěn)定性?當(dāng)一個(gè)區(qū)內(nèi)的路由器出了故障時(shí)并不影響自治域內(nèi)其他區(qū)路由器的正常工作,這也給網(wǎng)絡(luò)的管理?維護(hù)帶來(lái)方便?
(1)OSPF協(xié)議主要優(yōu)點(diǎn)
OSPF協(xié)議主要優(yōu)點(diǎn)如下:
快速收斂?OSPF是真正的LOOP-FREE(無(wú)路由自環(huán))路由協(xié)議?源自其算法本身——鏈路狀態(tài)及最短路徑樹(shù)算法,OSPF收斂速度快,能夠在最短的時(shí)間內(nèi)將路由變化傳遞到整個(gè)自治系統(tǒng)?
區(qū)域劃分?提出區(qū)域(Area)劃分的概念,將自治系統(tǒng)劃分為不同區(qū)域后,通過(guò)區(qū)域之間的對(duì)路由信息的摘要,大大減少了需傳遞的路由信息數(shù)量,也使得路由信息不會(huì)隨網(wǎng)絡(luò)規(guī)模的擴(kuò)大而急劇膨脹?
開(kāi)銷(xiāo)控制?將協(xié)議自身的開(kāi)銷(xiāo)控制到最小?目的如下所示:
用于發(fā)現(xiàn)和維護(hù)鄰居關(guān)系的是定期發(fā)送的不含路由信息的hello報(bào)文,非常短小?包含路由信息的報(bào)文是觸發(fā)更新的機(jī)制,而且只有在路由變化時(shí)才會(huì)發(fā)送?但為了增強(qiáng)協(xié)議的健壯性,每1800秒全部重發(fā)一次?在廣播網(wǎng)絡(luò)中,使用組播地址(而非廣播)發(fā)送報(bào)文,減少對(duì)其他不運(yùn)行OSPF的網(wǎng)絡(luò)設(shè)備的干擾?
在各類(lèi)可以多址訪(fǎng)問(wèn)的網(wǎng)絡(luò)中(廣播型網(wǎng)絡(luò)和非廣播型多路訪(fǎng)問(wèn)),通過(guò)選舉DR(指定路由器),使同網(wǎng)段的路由器之間的路由交換(同步)次數(shù)由O(N×N)次減少為O(N)次?
OSPF協(xié)議提出STUB區(qū)域的概念,使得STUB區(qū)域內(nèi)不再傳播引入的ASE路由?
在ABR(區(qū)域邊界路由器)上支持路由聚合,進(jìn)一步減少區(qū)域間的路由信息傳遞?
在點(diǎn)到點(diǎn)接口類(lèi)型中,通過(guò)配置按需播號(hào)屬性(OSPF over On Demand Circuits),使得OSPF不再定時(shí)發(fā)送hello報(bào)文及定期更新路由信息?只在網(wǎng)絡(luò)拓?fù)湔嬲兓瘯r(shí)才發(fā)送更新信息?
路由可信?通過(guò)嚴(yán)格劃分路由的級(jí)別(共分4級(jí)),提供更可信的路由選擇?
安全性高?良好的安全性,OSPF支持基于接口的明文及MD5 驗(yàn)證?
適應(yīng)性廣?OSPF適應(yīng)各種規(guī)模的網(wǎng)絡(luò),最多可達(dá)數(shù)千臺(tái)?
(2)OSPF協(xié)議主要缺點(diǎn)
OSPF協(xié)議主要缺點(diǎn)如下:
配置相對(duì)復(fù)雜?由于網(wǎng)絡(luò)區(qū)域劃分和網(wǎng)絡(luò)屬性的復(fù)雜性,需要網(wǎng)絡(luò)分析員有較高的網(wǎng)絡(luò)知識(shí)水平才能配置和管理OSPF網(wǎng)絡(luò)?
路由負(fù)載均衡能力較弱?OSPF雖然能根據(jù)接口的速率?連接可靠性等信息,自動(dòng)生成接口路由優(yōu)先級(jí),但在通往同一目的的不同優(yōu)先級(jí)路由中,OSPF只選擇優(yōu)先級(jí)較高的轉(zhuǎn)發(fā),不同優(yōu)先級(jí)的路由中,不能實(shí)現(xiàn)負(fù)載分擔(dān)?只有相同優(yōu)先級(jí)的,才能達(dá)到負(fù)載均衡的目的,不像EIGRP那樣可以根據(jù)優(yōu)先級(jí)不同,自動(dòng)匹配流量?