目錄

簡介

必要條件

需求

採用元件

慣例

問題

行為說明

解決方案

相關資訊

簡介

路由器上有時會注意到某些開放最短路徑優先(OSPF)show命令(例如show ip ospf neighbor和show ip ospf database)的輸出需要很長時間才能完成。輸出將逐行顯示，顯示一行後，下一行顯示前需要15到20秒。本文討論此行為的一些原因以及可能的解決方案。

必要條件

需求

本文件沒有特定需求。

採用元件

本文件所述內容不限於特定軟體和硬體版本。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路正在作用，請確保您已瞭解任何指令可能造成的影響。

慣例

如需文件慣例的詳細資訊，請參閱思科技術提示慣例。

問題

由於問題的性質，本文檔僅能描述問題，不能顯示問題的示例。要說明問題，需要花費16秒才能完全顯示此輸出。

citrus# show ip ospf database

OSPF Router with ID (10.48.77.45) (Process ID 1)

Router Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum Link count

10.48.77.45     10.48.77.45     72          0x80000001 0x5A6F   1

citrus#

顯示此行為的最常見命令是：

- show ip ospf border-routers

- show ip ospf database(包括命令更具體的版本，如show ip ospf database router)

- show ip ospf interface

- show ip ospf neighbor

行為說明

要確定發生此行為的原因，請在發出show ip ospf database命令時在路由器上啟用debug ip packet detail命令，如下例所示。

citrus# debug ip packet detail

IP packet debugging is on (detailed)

citrus# show ip ospf database

OSPF Router with ID (10.48.77.45) (Process ID 1)

Router Link States (Area 0)

Link ID         ADV Router      Age         Seq#       Checksum Link count

10.48.77.45

Oct 23 11:26:16: IP: s=10.48.77.45 (local), d=255.255.255.255 (Dialer1), len 70, sending broad/multicast

Oct 23 11:26:16:     UDP src=57969, dst=53

Oct 23 11:26:16: IP: s=126.106.177.81 (local), d=255.255.255.255 (Dialer2), len 70, sending broad/multicast

Oct 23 11:26:16:     UDP src=57969, dst=53

Oct 23 11:26:16: IP: s=10.48.77.45 (local), d=255.255.255.255 (Ethernet0), len 70, sending broad/multicast

Oct 23 11:26:16:     UDP src=57969, dst=53

...

Oct 23 11:26:31: IP: s=10.48.77.45 (local), d=255.255.255.255 (Ethernet0), len 70, sending broad/multicast

Oct 23 11:26:31:     UDP src=57969, dst=5310.48.77.45     160         0x80000001 0x3AFD   1

citrus#

上面的輸出顯示，只要發出show ip ospf database命令，路由器就會在所有介面上廣播目標埠為53的使用者資料包協定(UDP)資料包。UDP 53是網域名稱服務(DNS)。 通過檢視路由器的配置，您可以瞭解路由器嘗試執行DNS查詢的原因。

解決方案

要解決此問題，需要確定路由器傳送DNS查詢的原因。使用show run和include命令檢視路由器的配置，可以看到以下內容。

citrus# show run | include name

hostname citrus

ip ospf name-lookup

citrus#

路由器配置中包含ip ospf name-lookup命令。此命令將OSPF配置為查詢所有OSPF show EXEC命令顯示中使用的DNS名稱。此功能使識別路由器變得更加容易，因為路由器的顯示按名稱而不是按路由器ID或鄰居ID。因此，配置此命令後，路由器將在各種show命令中對OSPF router-id執行DNS查詢。如果路由器可以將此類router-id解析為名稱，則它會在show命令中顯示名稱，而不是IP地址。

請注意，只有未全域性禁用ip domain-lookup時，ip ospf name-lookup才會觸發DNS查詢。預設情況下，Cisco IOS®軟體上啟用ip domain-lookup。

在Cisco路由器中配置ip ospf name-lookup時，可能會遇到下列問題：

- 路由器配置中未指定DNS伺服器。在這種情況下，您將廣播DNS查詢，如上面的調試輸出所示。如果是這種情況，延遲是由於等待DNS查詢超時造成的。

如果這是問題，可以通過發出ip name-server命令在路由器上配置DNS伺服器。如需詳細資訊，請參閱在Cisco路由器上設定DNS。

- 路由器中指定了DNS伺服器，但無法訪問該伺服器。可能使用ip name-server指令在路由器中設定了DNS伺服器，但此DNS伺服器由於某些原因無法連線。您可以通過ping來檢查DNS伺服器是否可達。如果ping失敗，則無法訪問DNS伺服器，並且無法執行任何DNS查詢。

要解決此問題，請檢查無法訪問DNS伺服器的原因（伺服器已關閉或網路中出現路由問題）。 這種情形的解決方法是發出no ip ospf name-lookup 全域性命令禁用OSPF名稱查詢功能。

相關資訊

- OSPF技術支援

- 在Cisco路由器上配置DNS

- 技術支援 - Cisco Systems