ルータ上で、Open Shortest Path First(OSPF)の show コマンド(show ip ospf neighbor および show ip ospf database など)の出力が完了するまでに長い時間がかかるという問題が報告されることがあります。出力は 1 行ずつ表示され、ある行が表示された後、次の行が表示されるまでに 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 として User Datagram Protocol(UDP)パケットをブロードキャストしていることが示されています。UDP 53 は Domain Name Service(DNS; ドメイン ネーム サービス)です。 このルータの設定を詳しく調べると、なぜこのルータが DNS ルックアップを実行しようとしているかが分かります。
この問題を解決するには、ルータが DNS クエリーを送信する理由を明らかにする必要があります。show run および include コマンドを使ってルータの設定を調べると、次のことが分かります。
citrus# show run | include name hostname citrus ip ospf name-lookup citrus#
このルータの設定には ip ospf name-lookup コマンドがあります。このコマンドは、OSPF を設定し、show EXEC で表示されるすべての OSPF で使用される DNS 名を調査します。この機能を使用すると、ルータの識別が容易になります。その理由は、ルータがそのルータ ID または隣接 ID ではなく、名前によって表示されるからです。したがってこのコマンドが設定されている場合、ルータは各種 show コマンドで OSPF ルータ ID の DNS ルックアップを実行します。ルータ ID が名前に変換されると、show コマンドには IP アドレスに代わって名前が表示されます。
ip ospf name-lookup が DNS ルックアップを実行するのは、ip domain-lookup がグローバルに無効化されている場合だけです。デフォルトでは、ip domain-lookup は Cisco IOS® ソフトウェアで有効になっています。
ただし、ip ospf name-lookup コマンドがシスコのルータに設定されていると、次のような問題が発生する可能性があります。
ルータの設定に DNS サーバが指定されていない。この場合、上記のデバッグ出力で示したように、DNS クエリーをブロードキャストすることになります。この状況になると、DNS クエリーがタイムアウトになるのを待つために遅延が発生します。
これが問題である場合は、 ip name-server コマンドを実行してルータに DNS サーバを設定することができます。詳細は、「シスコ ルータでの DNS の設定」を参照してください。
ルータに DNS サーバが設定されているが、そこに到達できない。これは、ip name-server コマンドによってルータに DNS サーバが設定されているものの、何らかの理由でその DNS サーバに到達できないことを示しています。DNS サーバに ping を送って、到達可能かどうかを調べることができます。この ping が失敗した場合、DNS サーバには到達不可能で、DNS ルックアップが行われていないことになります。
この問題を解決するには、なぜ DNS サーバへの到達が不可能なのかを調査します(サーバがダウンしているか、ネットワークにルーティングの問題が発生しているなど)。 この問題の回避策としては、no ip ospf name-lookup グローバル コマンドを実行して、OSPF ネーム ルックアップ機能を無効にすることができます。
改定 | 発行日 | コメント |
---|---|---|
1.0 |
10-Aug-2005 |
初版 |