本文檔介紹了與開放最短路徑優先(OSPF)相關的最常見問題(FAQ)。 本文檔僅涉及OSPF第2版。Cisco IOS®軟體版本12.0(24)S、12.2(18)S和12.2(15)T中引入的OSPF版本3用於分發IP版本6路由資訊;本檔案沒有明確說明。在本檔案的範圍內,「OSPF」指的是OSPF第2版,「IP」指的是IP第4版。
A.環回在OSPF中被視為主機路由,並通告為/32。有關詳細資訊,請參閱RFC 2328 的9.1部分。在Cisco IOS軟體版本11.3T和12.0中,如果在環回下配置了ip ospf network point-to-point命令,OSPF會將環回子網通告為在環回上配置的實際子網。ISDN撥號器介面通告/32子網而不是其已設定的子網掩碼。如果配置了ip ospf network point-to-multipoint,這是預期行為。
例如,假設兩台路由器(R1和R2)通過FastEthernet介面連線。R1使用ip ospf network point-to-point命令配置環回,並在OSPF中通告環回。
interface Loopback0 ip address 1.1.1.1 255.255.255.0 ip ospf network point-to-point使用show ip route ospf命令檢查路由器R2時,路由1.1.1.1顯示為:
!..output truncated 1.0.0.0/24 is subnetted, 1 subnets O 1.1.1.0 [110/11] via 10.1.1.1, 00:00:02, FastEthernet0/0但是,當從R1到0的介面上刪除ip ospf network point-to-point命令時,R2上的路由1.1.1.1將視為:
1.0.0.0/32 is subnetted, 1 subnets O 1.1.1.1 [110/11] via 10.1.1.1, 00:00:01, FastEthernet0/0
答:在router ospf下使用ospf auto-cost reference-bandwidth命令,可以更改Cisco IOS軟體版本11.2及更高版本中的參考頻寬。預設情況下,參考頻寬為100 Mbps。ospf link-cost是一個16位數字。因此,支援的最大值為65,535。
A. OSPF使用100 Mbps的參考頻寬來計算成本。計算開銷的公式是參考頻寬除以介面頻寬。例如,對於乙太網,它為100 Mbps / 10 Mbps = 10。
注意:如果在介面上使用ip ospf cost ,它將覆蓋此公式化開銷。有關詳細資訊,請參閱OSPF開銷。
A.如果存在等價路由,OSPF將使用CEF負載均衡。如需詳細資訊,請參閱使用Cisco快速轉送對並行連結上的負載平衡進行疑難排解。
答:是,OSPF可以驗證鄰居之間交換的所有資料包。身份驗證可以通過簡單密碼或MD5加密校驗和。要為區域配置簡單密碼身份驗證,請使用命令ip ospf authentication-key 為連線到區域的每個介面分配最多八個八位元的密碼。然後,對OSPF路由器配置發出area x authentication 命令以啟用身份驗證。(在命令中,x是區號。)
Cisco IOS軟體版本12.x也支援啟用每個介面的驗證。如果只想在某些介面上啟用身份驗證,或者希望在屬於同一區域的不同介面上使用不同的身份驗證方法,請使用ip ospf authentication interface mode命令。
A. OSPF必須傳送對新收到的每個鏈路狀態通告(LSA)的確認。 它通過傳送LSA資料包來實現這一點。重新傳輸LSA,直到確認。鏈路狀態重傳間隔定義了重傳之間的時間。您可以使用命令ip ospf retransmit-interval來設定重新傳輸間隔。預設值為5秒。
A.此變數將指定的時間新增到更新的期限欄位。如果在通過鏈路傳輸之前沒有新增延遲,則不會考慮鏈路狀態通告(LSA)在鏈路上傳播的時間。預設值為1秒。此引數在極低速鏈路上更有意義。
答:不,OSPF中的虛擬鏈路保持從非主幹區域到主幹的連線,但它們對於不連續定址是不必要的。OSPF支援不連續網路,因為每個區域都有網路集合,而OSPF會在每個通告上附加掩碼。
A.OSPF使用組播編址傳送所有通告。除權杖環外,多點傳送IP位址將對映到MAC層級多點傳送位址。Cisco將權杖環對映到MAC級廣播位址。
答:Cisco OSPF僅支援TOS 0。這意味著路由器會路由TOS 0路徑上的所有資料包,從而無需計算非零的TOS路徑。
A.offset-list命令對OSPF不起作用。它用於距離向量協定,如內部網關路由協定(IGRP)、路由資訊協定(RIP)和RIP第2版。
A.只在使用命令default-information originate配置了OSPF並且機箱中有來自不同進程的預設網路時,OSPF才會生成預設網路。OSPF中的預設路由是0.0.0.0。如果您希望啟用OSPF的路由器生成預設路由(即使它本身沒有預設路由),請使用命令default-information originate always。
A. OSPF支援distribute-list命令,但其運作方式與距離向量路由協定(如路由資訊協定(RIP)和增強型內部網關路由協定(EIGRP))不同。無法過濾進入OSPF資料庫的OSPF路由。distribute-list in命令只會過濾路由,防止其進入路由表;它不會阻止傳播鏈路狀態資料包。因此,此命令不有助於節省路由器記憶體,也不禁止路由器將過濾的路由傳播到其他路由器。
注意:在OSPF中使用distribute-list in命令會導致網路出現路由環路(如果沒有仔細實施)。
distribute-list out命令僅適用於自治系統邊界路由器(ASBR)重分發到OSPF的路由。它可以應用於外部型別2和外部型別1路由,但不能應用於區域內和區域間路由。
請參閱OSPF中分發清單的配置示例,
A.根據RFC 2328 第11節,OSPF路由的優先順序為:
區域內路由,O
區域間路由,O IA
外部路由型別1、O E1
外部路由型別2、O E2
此優先順序規則無法更改。但是,它僅適用於單個OSPF進程。如果路由器運行多個OSPF進程,則會進行路由比較。路由比較是對OSPF進程的度量和管理距離(如果它們已更改)進行比較。當比較兩個不同的OSPF進程提供的路由時,會忽略路由型別。
答:在低於Cisco IOS軟體版本10.0的Cisco IOS軟體版本中,需要使用neighbor命令在非廣播多路訪問(NBMA)網路(例如幀中繼、X.25和SMDS)上建立鄰接關係。 在Cisco IOS軟體版本10.0及更高版本中,可以使用ip ospf network broadcast命令將網路定義為廣播網路,無需使用neighbor命令。如果沒有使用全網狀SMDS雲,則必須使用ip ospf network point-to-multipoint命令。
A.保留SPF指標。它們之間的重分佈就像任何兩個IP路由進程之間的重分佈。
A.您可以配置OSPF,以瞭解它是否應嘗試在多路訪問介面上使用組播設施。此外,如果組播可用,OSPF會將其用於其正常組播。
Cisco IOS軟體版本10.0包含一項稱為子介面的功能。可以使用帶有幀中繼的子介面將一組虛擬電路(VC)連線在一起,形成充當單個IP子網的虛擬介面。子網中的所有系統應完全互聯。在Cisco IOS軟體版本10.3、11.0及更高版本中,還可以使用ip ospf point-to-multipoint命令。
A.當配置未編號的介面時,它會引用路由器上的另一個介面。在未編號介面上啟用OSPF時,使用未編號介面指向的介面對address-wild-mask。
A.否,如果對一端進行編號,另一端未編號,則OSPF不起作用。這會導致OSPF資料庫中存在不一致,導致路由無法安裝到路由表中。
A. OSPF將最高IP地址作為路由器ID。如果沒有處於up/up模式的介面具有IP地址,則會返回此錯誤消息。要解決此問題,請配置環回介面。
A.您的軟體可能不支援OSPF。此錯誤消息最常出現在Cisco 1600系列路由器上。如果您使用的是1600路由器,則需要Plus映像來運行OSPF。
A. DR表示指定路由器。BDR表示備用指定路由器。DROTHER表示路由器既不是DR也不是BDR。DR生成網路鏈路狀態通告,其中列出該網路上的所有路由器。
A.為了減少廣播媒體(例如乙太網路、FDDI和權杖環)上的泛洪量,路由器已滿且只有指定路由器(DR)和備用指定路由器(BDR),並且它顯示所有其他路由器的2-WAY。
這很正常。在點對點和點對多點網路中,沒有指定路由器(DR)或備用指定路由器(BDR)。
A.除了正常的OSPF配置命令外,您還應使用dialer map命令。使用dialer map命令時,使用broadcast關鍵字指示應將廣播轉發到協定地址。
A.除了正常的OSPF配置命令外,您還應在非同步介面上使用非同步預設路由命令。此命令使路由器能夠通過非同步介面將路由更新傳遞給其他路由器。此外,在使用dialer map命令時,使用broadcast關鍵字指示應將廣播轉發到協定地址。
A.在Cisco IOS軟體版本12.0(8)中新增了RFC 2178 所述的每個介面驗證型別。
A.在第7類鏈路狀態通告(LSA)中將外部路由資訊匯入NSSA時,第7類LSA僅具有區域泛洪範圍。為進一步分發外部資訊,第7類LSA在NSSA邊界被轉換為第5類LSA。第7類LSA選項欄位中的P-bit指示是否應轉換第7類LSA。僅轉換已設定P位的LSA。將資訊重新分發到NSSA時,將自動設定P位。當自治系統邊界路由器(ASBR)也是區域邊界路由器(ABR)時,可能採用一種解決方法。 然後,NSSA ASBR可以使用not-advertise關鍵字進行彙總,這將導致不通告已轉換的第7類LSA。
A.發出OSPF show命令時可能會遇到響應緩慢,但其它命令則不會。延遲的最常見原因是您在路由器上配置了ip ospf name-lookup配置命令。此命令使路由器為所有OSPF show命令查詢裝置域名系統(DNS)名稱,從而更容易識別裝置,但導致命令響應時間變慢。如果除了OSPF show命令之外,其它命令響應緩慢,則可能需要開始檢視其他可能的原因,例如CPU使用率。
A. clear ip ospf redistribution 命令刷新所有第5類和第7類鏈路狀態通告(LSA),並掃描路由表以查詢重分發的路由。這會導致網路中收到刷新/更新LSA的所有路由器中出現部分最短路徑優先演算法(SPF)。當預期的重分佈路由不在OSPF中時,此命令可能有助於更新LSA並將該路由獲取到OSPF。
A. OSPF在不位於同一子網的鄰居之間形成鄰接關係的唯一時間是鄰居通過點對點鏈路連線。使用ip unnumbered命令時可能需要這樣做,但在所有其他情況下,鄰居必須位於同一子網中。
A.當LSA老化時間達到鏈路狀態刷新時間(1800秒)時,OSPF會傳送其自發的LSA。有關詳細資訊,請參閱鏈路狀態通告。
A.要阻止路由器成為特定介面上的OSPF鄰居,請在接口發出passive-interface命令。
在Internet服務提供商(ISP)和大型企業網路中,許多分佈路由器具有200多個介面。在200個介面中的每一個上配置passive-interface可能很困難。在這種情況下,解決方案是使用單個passive-interface default命令預設將所有介面配置為被動。然後,使用no passive-interface命令配置需要鄰接關係的各個介面。如需詳細資訊,請參閱預設被動介面功能。
passive-interface default 命令有一些已知問題。解決方法列在Cisco錯誤ID CSCdr09263(僅限註冊客戶)。
A.當OSPF資料庫中同一外部網路有兩個第5類LSA時,優先使用到自治系統邊界路由器(ASBR)路徑最短的外部LSA,並將其安裝到IP路由表中。使用show ip ospf border-routers命令檢查ASBR的開銷。
A. Cisco 800路由器不支援OSPF。但是,它們支援路由資訊協定(RIP)和增強型內部網關路由協定(EIGRP)。 您可以使用Software Advisor(僅供註冊客戶使用)工具來瞭解有關功能支援的詳細資訊。
A.與邊界網關協定(BGP)或增強型內部網關路由協定(EIGRP)不同,OSPF在相鄰路由器之間形成鄰接關係並交換路由資訊時,不檢查進程號(或自治系統號)。OSPF進程編號唯一考慮的情況是,在多協定標籤交換(MPLS)VPN中,OSPF用作提供商邊緣到客戶邊緣(PE-CE)鏈路上的路由協定。PE路由器使用從OSPF進程號派生的域屬性來標籤OSPF路由,以指示該路由源自同一個OSPF域還是外部。如果MPLS VPN中PE路由器上的OSPF進程編號不一致,應使用domain-id OSPF模式命令來標籤具有不同編號的OSPF進程屬於同一個OSPF域。
這意味著,在許多實際情況下,您可以對網路中的同一OSPF域使用不同的自治系統編號。但是,最好儘可能使用一致的OSPF進程編號。這種一致性簡化了網路維護,並符合網路設計人員將路由器保持在同一個OSPF域中的意圖。
A. CEF的工作方式是根據路由協定(例如OSPF)填充的路由表執行資料包交換。一旦路由協定表計算完畢,CEF就會執行負載均衡。有關負載均衡的詳細資訊,請參閱負載均衡如何工作?
A. OSPF使用與頻寬相關的度量aCost。如果有等價路徑(兩個多鏈路上的頻寬相同),OSPF將在路由表中安裝兩條路由。無論介面利用率如何,路由表都會嘗試平等地使用兩條鏈路。如果第一個多鏈路中的一個鏈路發生故障,OSPF不會將所有流量傳送到第二個多鏈路。如果第一個多鏈路的峰值是100%,則OSPF不會通過第二個多鏈路傳送任何流量,因為OSPF會嘗試平等地使用兩個鏈路,而不管介面利用率如何。僅當第一個多鏈路斷開時,才會完全使用第二個多鏈路。
A.為了對拓撲更改進行快速故障檢測,需要將hello計時器值設定為1秒。需要配置保持計時器值(是hello計時器的四倍)。如果將hello計時器和保持計時器的值從預設值中減去,則可能會產生更多的路由流量。
注意:調整OSPF計時器可能會導致網路和裝置資源開銷。思科建議使用雙向轉發檢測(BFD),而不是調整路由協定計時器。BFD也提供了次秒級收斂。如需詳細資訊,請參閱適用於BFD over IPv4的OSPF支援。
答:是,運行高級IPS服務映像的3800系列路由器支援OSPF Stub功能。
A.此錯誤消息是由於某些路由器正在刷新網路LSA,因為路由器收到的網路LSA的LSA ID與路由器某個介面的IP地址衝突,並將該LSA刷新出網絡。要使OSPF正常工作,傳輸網路的IP地址必須是唯一的。如果不唯一,衝突路由器將報告此錯誤消息。在錯誤消息中,OSPF路由器ID報告為adv-rtr的路由器報告此消息。
答:是,請參閱使用OSPF配置IPSec上的GRE隧道。
A.第3類LSA由區域邊界路由器(ABR)作為總結路由生成。在ABR路由器中無法操作總結路由。
A.當NSSA ABR配置為從nssa no-summary移動到nssa時,OSPF鄰居關係不會翻動。
A.由於收到來自鄰居的資料庫說明(DBD)資料包的意外序列號,OSPF鄰居的狀態從FULL更改為EXSTART。
SeqNumberMismatch表示在OSPF鄰居交涉期間收到的DBD封包具有以下任一功能:
具有意外的DBD序列號
意外設定了Init位
有一個選項欄位與資料庫說明資料包中收到的最後一個「選項」欄位不同。
答:Cisco IOS的路由進程限製為32個。其中兩個用於靜態路由和直連路由。Cisco 7600路由器支援每個VRF的28個OSPF進程。
A.增量SPF比完整SPF演算法更有效,從而使OSPF能夠在新的路由拓撲上更快收斂以響應網路事件。增量SPF的設計方式是隻更新受影響的節點,而不重建整個樹。這樣會加快收斂速度並節省CPU週期,因為無需處理未受影響的節點。關於最佳實踐,對於大型OSPF域,ISPF將發揮更大的作用。
對於節點和鏈路數量多的網路,增量SPF在收斂時間方面有了更大的改進。當網路拓撲的更改距離SPT的根更遠時,增量SPF也提供了顯著優勢;例如,網路越大,影響越顯著。400到1000個節點的網段應該會得到改進。但是,如果沒有某種設施或工具來測量端到端延遲,在已部署的生產網路中可能很難進行驗證。有關詳細資訊,請參閱OSPF增量SPF。
A.是,請參閱Cisco NX-OS/IOS OSPF比較。
A. OSPF最短路徑優先限制功能能夠以毫秒間隔配置SPF排程,並可能會在網路不穩定期間延遲SPF計算。當拓撲發生變化時,SPF計畫計算最短路徑樹(SPT)。
OSPF下命令的語法:
timers throttle spf [spf-start] [spf-hold] [spf-max-wait]
其中:
spf-start — 在更改後計畫SPF計算的初始延遲(以毫秒為單位)。範圍是從1到600000。
spf-hold — 兩次連續SPF計算之間的最短保持時間(毫秒)。範圍是從1到600000。
spf-max-wait — 兩次連續SPF計算之間的最大等待時間(以毫秒為單位)。範圍為1至600000。
有關OSPF限制功能的詳細資訊,請參閱OSPF最短路徑優先限制。
A.此消息與DBD交換過程相關,該過程使用序列號進行資料庫同步。由於某種原因,在DBD資料包中報告了錯誤的序列號。這可能是由於瞬態情況導致的,包括資料包丟失或資料包損壞。