ネットワーク設定復元方法およびシステム
【課題】サーバからの接続性を確保しながらルータやスイッチのネットワーク設定を切り戻せるネットワーク設定復元方法およびシステムを提供する。
【解決手段】メッセージ送受信部309は、自身の経路情報に基づいて動作し、ネットワークを構成する各ネットワーク機器を対象に経路調査用のtracerouteを順次に実行し、ICMPエコー要求メッセージおよびICMP Time Exceededエラーメッセージを送受信する。ホップ数検知部310は、前記各ネットワーク機器から返信されたメッセージに基づいて、各ネットワーク機器までのホップ数を検知する。切戻順序決定部313は、前記各ネットワーク機器までのホップ数に基づいてネットワーク機器の切戻順序を決定する。前記切戻対象特定部307は、前記切戻順序に基づいて、自身からのホップ数が多いネットワーク機器から優先的にネットワーク設定を切り戻す。
【解決手段】メッセージ送受信部309は、自身の経路情報に基づいて動作し、ネットワークを構成する各ネットワーク機器を対象に経路調査用のtracerouteを順次に実行し、ICMPエコー要求メッセージおよびICMP Time Exceededエラーメッセージを送受信する。ホップ数検知部310は、前記各ネットワーク機器から返信されたメッセージに基づいて、各ネットワーク機器までのホップ数を検知する。切戻順序決定部313は、前記各ネットワーク機器までのホップ数に基づいてネットワーク機器の切戻順序を決定する。前記切戻対象特定部307は、前記切戻順序に基づいて、自身からのホップ数が多いネットワーク機器から優先的にネットワーク設定を切り戻す。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ルータやサーバなどのネットワーク機器の設定を変更前の状態に切り戻すことで復元するネットワーク設定復元方法およびシステムに係り、特に、短時間での復元を可能にしたネットワーク設定復元方法およびシステムに関する。
【背景技術】
【0002】
ルータやサーバなどのネットワーク機器のネットワーク設定ファイル(以下、単に設定ファイルと表現する場合もある)を管理する次世代NWオペレーションサーバをネットワーク(NW)上に設置し、オペレーションミスなどの障害が発生した際には、この次世代NWオペレーションサーバより一括して以前の設定ファイルを読み出し、各ネットワーク機器に順次に切り戻すことにより迅速な障害復旧を支援するシステムが、非特許文献1,2および特許文献1に開示されている。従来のネットワーク設定ファイルの切り戻しは、例えば以下のような手順で実行される。
【0003】
手順1: 運用者がクライアント端末を用いてルータ、スイッチ、サーバ等の各種ネットワーク機器のオペレーション(操作・設定)を行う。その際、次世代NWオペレーションサーバはオペレーションのログを収集する。また、オペレーション終了時に全てのネットワーク機器の設定ファイルを保存管理する。
【0004】
手順2:オペレーションの内容にエラー等が含まれていた場合、警報や障害発生が通知される。
【0005】
手順3:運用者はクライアント端末を介して次世代NWオペレーションサーバを操作し、全ての被管理装置の設定ファイルを以前の(正常に動作していた任意の時点の)状態に切戻す。これにより、障害から復旧する。
【0006】
手順4:運用者は障害復旧後に、次世代NWオペレーションサーバが保存管理しているオペレーションのログを分析して障害原因を特定する。
【非特許文献1】「オペレーションミスからの迅速な復旧を可能とするディペンダブルネットワーク管理システムの提案」,吉原貴仁ほか:信学会2007総合大会論文集
【非特許文献2】オペレーションミスからの迅速な復旧を可能とするディペンダブルネットワーク管理システムの実装,荒井大輔ほか:信学会2007総合大会論文集
【特許文献1】特願2006−249299号
【発明の開示】
【発明が解決しようとする課題】
【0007】
ネットワーク設定の切り戻し対象となるネットワーク機器のうち、自身の経路情報にしたがって動作し、ネットワークを構成するルータやスイッチでは、ネットワーク設定の切り戻しにより経路情報も以前の設定に切り戻されてしまうので、切り戻し前の機器と切り戻し後の機器とで経路情報に齟齬が生じてしまい、接続が断たれてしまう場合がある。したがって、ネットワーク機器のうち、特にルータやスイッチに関しては、齟齬の影響が最小限に抑えられるように、オペレーションサーバから遠い位置のルータ等から順にネットワーク設定を切り戻すことが望ましい。
【0008】
しかしながら、上記した従来技術ではルータやスイッチのネットワーク設定を切り戻す際でも、その順序が全く考慮されていなかったので、切り戻しの開始直後から多くの経路が断たれて通信不能に陥ってしまうという技術課題があった。
【0009】
本発明の目的は、上記した従来技術の課題を全て解決し、サーバからの接続性を確保しながらルータやスイッチのネットワーク設定を切り戻せるネットワーク設定復元方法およびシステムを提供することにある。
【課題を解決するための手段】
【0010】
上記した目的を達成するために、本発明は、自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、保存要求に応答してオペレーションサーバに保存し、その後の切戻要求で指定された既登録の設定ファイルを各ネットワーク機器へ切り戻してネットワーク設定を復元するネットワーク設定復元方法において、前記オペレーションサーバが、各ネットワーク機器までのホップ数を検知する手順と、前記ホップ数が多いネットワーク機器から優先的にネットワーク設定が切り戻されるように切戻順序を決定する手順とを含むことを特徴とする。
【発明の効果】
【0011】
本発明によれば、自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、オペレーションサーバから遠いネットワーク機器から順に切り戻せるようになるので、サーバとの接続性を維持したままでの復元が可能になる。
【発明を実施するための最良の形態】
【0012】
以下、図面を参照して本発明の最良の実施の形態について詳細に説明する。図1は、本発明に係るネットワーク設定復元方法が適用されるネットワークの典型的な想定環境を示した図である。
【0013】
管理対象のネットワーク1には、ネットワーク設定ファイルの復元対象となるスイッチ、ルータあるいはサーバ等の各種ネットワーク機器A,B,C,D…が収容されている。このネットワーク1にはさらに、各ネットワーク機器にネットワーク設定を行うクライアント2、およびクライアント2からの保存要求に応答して各ネットワーク機器からネットワークの設定ファイルを取得し、さらに、クライアント2からの切戻要求に応答して各ネットワーク機器へ既登録の設定ファイルを切り戻してネットワーク設定を復元するオペレーションサーバ3が接続されている。
【0014】
図2は、4つのネットワーク機器A,B,C,Dの設定ファイルがクライアント1の操作で更新され、更新後の設定ファイルが2つの識別子IDs,IDrsと紐付けられてオペレーションサーバ3に保存される様子を模式的に表現した図である。
【0015】
本発明では、保存要求ごとに全てのネットワーク機器の設定ファイルが、当該保存時刻を代表する第1識別子(セッション識別子IDs)と紐付けられてオペレーションサーバ3に蓄積される。また、本発明では未更新の設定ファイルが各ネットワーク機器から保存要求ごとに繰り返し取得されてしまう無駄を省くために、各ネットワーク機器からは更新されている可能性のある設定ファイルのみが取得され、未更新の設定ファイルに関しては、オペレーションサーバ3に既登録の設定ファイルが読み出されてコピーされるようにしている。
【0016】
そこで、本発明ではコピー元の設定ファイルが新規保存された時刻を代表する第2識別子(実セッション識別子IDrs)を定義し、この実セッション識別子IDrsも各設定ファイルに紐付けられる。したがって、ネットワーク機器から取得されて新規保存される設定ファイルでは、セッション識別子IDsおよび実セッション識別子IDrsが同値となる。
【0017】
図2では、時刻t1において全てのネットワーク機器A,B,C,Dの設定ファイルFa,Fb,Fc,Fdが、その保存タイミングを代表するセッション識別子IDsおよび実セッション識別子IDrsと紐付けられてオペレーションサーバ3に予め登録されている。時刻t1が最初の保存タイミングであれば、セッション識別子IDsおよび実セッション識別子IDrsのいずれにも、時刻t1を代表する「1」が登録される
【0018】
図3,4は、前記オペレーションサーバ3の動作を示したフローチャートであり、図2の時刻t1以降、2つのネットワーク機器B,Cの設定ファイルFb,Fcのみが更新され、時刻t2において、設定ファイルの保存要求がクライアント1からオペレーションサーバ3へ通知されると、これが図3のステップS1で検知されてステップS2へ進む。ステップS2では、設定ファイル保存処理が実行される。
【0019】
図4は、前記設定ファイル保存処理の手順を示したフローチャートであり、ステップS201では、前記時刻t2を代表するセッション識別子IDs=2および実セッション識別子IDrs=2が設定される。ステップS202では、前回の保存時刻t1以降に操作履歴のあるネットワーク(NW)機器の一つが選択される。本実施形態では、3つのネットワーク機器B,C,Dに関して操作履歴があり、最初にネットワーク機器Bが選択されたものとして説明を続ける。
【0020】
ステップS203では、ネットワーク機器Bの設定ファイルFbがオペレーションサーバ3により取得される。ステップS204では、直前の保存時刻t1を代表するセッション識別子IDs=1と紐付けられている既登録の設定ファイル群の中から、ネットワーク機器Bの設定ファイルFbが読み取られる。そして、この設定ファイルFb(IDs=1)と、時刻t2で取得された今回の設定ファイルFbとが比較され、両者が一致するか否かに基づいて更新の有無が判定される。不一致であれば、更新が有ったと判定されてステップS205へ進み、前記ステップS203で取得された今回の設定ファイルFbが、時刻t2を代表するセッション識別子IDs=2および実セッション識別子IDrs=2と紐付けられて保存される。
【0021】
ステップS206では、操作履歴のある全てのネットワーク機器に関して上記した各処理が完了したか否かが判定され、ここではネットワーク機器C,Dに対する処理が残っているので、ステップS202へ戻って上記した各処理が繰り返される。このとき、ネットワーク機器Cに関しては前記ネットワーク機器Bと同様に、その設定ファイルが更新されていると判定されるので、ステップS203でネットワーク機器Cから取得された設定ファイルFcが、時刻t2を代表するセッション識別子IDs=2および実セッション識別子IDrs=2と紐付けられて保存される。
【0022】
これに対して、ネットワーク機器Dに関しては、例えばファイルを参照した操作履歴が残っているだけなので、ステップS204では設定ファイルが更新されていないと判定されてステップS206へ進む。
【0023】
ステップS207では、設定ファイルが未更新のネットワーク機器の一つが選択される。本実施形態では、2つのネットワーク機器A,Dが順次に選択される。ステップS208では、選択されたネットワーク機器に関して、前回の保存時刻t1を代表するセッション識別子IDs=1と紐付けられている既登録の設定ファイル群の中から、前記未更新のネットワーク機器の設定ファイルが、そのセッション識別子IDsおよび実セッション識別子IDrsと共に読み込まれる。ステップS209では、セッション識別子IDsのみが今回の保存時刻t2を代表する「2」に書き換えられ、このセッション識別子IDs=2に対応した設定ファイル群の一つとして保存される。
【0024】
ネットワーク機器Aであれば、セッション識別子IDs=1および実セッション識別子IDrs=1と紐付けられている既登録の設定ファイルFa(IDs=1,IDrs=1)と同一内容の設定ファイルが、今回の保存時刻t2を代表するセッション識別子IDs=2および実セッション識別子IDrs=1と紐付けられて保存される。
【0025】
ステップS210では、設定ファイルが未更新の全てのネットワーク機器に関して上記した各処理が完了したか否かが判定され、全てのネットワーク機器に関して上記した処理が完了するまで、ステップS207へ戻って上記した各処理が繰り替えられる。
【0026】
図2へ戻り、上記のように時刻t2で保存要求が検知されると、2つのネットワーク機器B,Cの設定ファイルFb,Fcは、保存時刻t2を代表するセッション識別子IDs=2、および実セッション識別子IDrs=2と紐付けられてオペレーションサーバ3に保存される。
【0027】
これに対して、設定ファイルが更新されていない残りのネットワーク機器A,Dの設定ファイルFa,Fdは、今回の保存時刻t2を代表するセッション識別子IDs=2、および当該設定ファイルが新規保存された時刻t1を代表する実セッション識別子IDrs=1と紐付けられてオペレーションサーバ3に登録される。
【0028】
さらに、時刻t2以降にネットワーク機器Dの設定ファイルFdのみが更新され、時刻t3で新たな保存要求が検知されると、当該ネットワーク機器Dの設定ファイルFdは、今回の保存時刻t3を代表するセッション識別子IDs=3、および実セッション識別子IDrs=3と紐付けられてオペレーションサーバ3に登録される。
【0029】
これに対して、設定ファイルが更新されていない残りのネットワーク機器A,B,Cの設定ファイルFa,Fb,Fcのうち、その内容が時刻t1で新規保存された内容と同一であるネットワーク機器Aの設定ファイルFaに関しては、今回の保存時刻t3を代表するセッション識別子IDs=3および時刻t1を代表する実セッション識別子IDrs=1と紐付けられてオペレーションサーバ3に登録される。
【0030】
同様に、設定ファイルの内容が時刻t2で新規保存された内容と同一であるネットワーク機器B,Cの設定ファイルFb,Fcに関しては、今回の保存時刻t3を代表するセッション識別子IDs=3および時刻t2を代表する実セッション識別子IDrs=2と紐付けられてオペレーションサーバ3に登録される。
【0031】
次いで、以上のようにして時系列で保存された設定ファイルを利用して、各ネットワーク機器の設定ファイルを所望の復元時刻における設定内容に切り戻す手順を説明する。ここでは、各ネットワーク機器の設定ファイルが、図5に示した経過を経て更新され、最新の保存タイミングが時刻t3である場合を例にして説明する。
【0032】
オペレータがクライアント1から、所望の復元時刻を含む切戻要求をオペレーションサーバ3へ送信し、これが図3のステップS3で検知されると、ステップS4へ進んで設定ファイル切戻処理が実行される。ここでは、復元時刻としてt2が指定されたものとして説明を続ける。
【0033】
図7は、前記設定ファイル切戻処理の手順を示したフローチャートであり、図8は、そのシーケンスフローである。
【0034】
ステップS401では、最新の保存時刻t3以降、新たに操作されたネットワーク機器があるか否かが判定される。操作されたネットワーク機器がなければステップS403ヘ進み、有ればステップS402へ進む。ステップS402では、前記図4のフローチャートで説明した設定ファイル保存処理と同様の処理が実行され、当該切戻要求の受信時刻t4を保存時刻として設定ファイルが前記と同様にオペレーションサーバ3に保存され、その後、ステップS403へ進む。
【0035】
図6は、時刻t4で新たにネットワーク設定保存処理が実行された場合の、各ネットワーク機器の設定ファイルの更新状況を示した図であり、ここでは、時刻t3以降にネットワーク機器Bが操作されていたので、ネットワーク機器Bの設定ファイルFbが取り込まれ、保存時刻t4を代表するセッション識別子IDs=4および実セッション識別子IDrs=4と紐付けられてオペレーションサーバ3に新規保存される。
【0036】
また、更新されていない他のネットワーク機器A,C,Dに関しては、直前の保存時刻t3を代表するセッション識別子IDs=3と紐付けられている設定ファイルが読み出され、セッション識別子IDsのみが、今回の保存時刻t4を代表するセッション識別子IDs=4に書き換えられて保存される。
【0037】
ステップS403では、最新(直前)の保存時刻(図5の例では、時刻t3)を代表するセッション識別子IDs=3と紐付けられた各設定ファイルの実セッション識別子IDrsと、復元時刻t2を代表するセッション識別子IDs=2と紐付けられた各設定ファイルの実セッション識別子IDrsとが比較され、この比較結果に基づいて切戻対象のネットワーク機器が特定される。すなわち、実セッション識別子IDrsが不一致のネットワーク機器が切戻対象とされる。
【0038】
図5を参照すれば、ネットワーク機器Aの時刻t3で保存された設定ファイルFaの実セッション識別子IDrsおよび復元時刻t2で保存された設定ファイルの実セッション識別子IDrsはいずれも「1」であり、各時刻t2,t3の設定ファイルは同一であることが判るので、ネットワーク機器Aは切戻対象とされない。
【0039】
同様に、ネットワーク機器B,Cについても、各設定ファイルFb,Fcの時刻t3における実セッション識別子IDrsおよび復元時刻t2における実セッション識別子IDrsはいずれも「2」であり、各時刻t2,t3の設定ファイルは同一であることが判るので、ネットワーク機器B,Cも切戻対象とされない。
【0040】
これに対して、ネットワーク機器Dに関しては、その設定ファイルFdの復元時刻t2における実セッション識別子IDrsが「1」であるのに対して、最新の保存時刻t3における実セッション識別子IDrsは「3」であり、各時刻t2,t3の設定ファイルが異なっていることが判るので、ネットワーク機器Dは切戻対象とされる。
【0041】
なお、図6に示した例であれば、ネットワーク機器A,Cは切戻対象とされず、ネットワーク機器B,Dが切戻対象とされる。
【0042】
図7のフローチャートへ戻り、ステップS404では、特定された切戻対象のネットワーク機器が一つ選択される。ステップS405では、このネットワーク機器に対して、後に詳述するネットワーク設定の切戻処理が実行される。ステップS406では、全ての切戻対象に対する切戻処理が完了したか否かが判定され、完了するまで前記ステップS404へ戻って上記した各手順が繰り返される。
【0043】
次いで、前記ステップS405で実行されるネットワーク設定の切戻方法について説明する。
【0044】
本実施形態では、ネットワーク機器がCisco社製のルータやスイッチのように、不揮発性記憶領域に記憶されている設定ファイルが起動時に揮発性記憶領域へコピーされて実行される機器であるか否かによって切り戻し手順が異なり、不揮発性記憶領域に記憶されている設定ファイルが起動時に揮発性記憶領域へコピーされて実行される機器では、以下に詳述するコマンドを用いた切り戻し手順が実行され、それ以外の機器では従来技術と同様の切り戻し手順が実行される。
【0045】
図9は、Cisco社製ルータの設定ファイルの一例を示した図であり、設定ファイルは、2つの「!」マークで挟まれた「項目」の集合であり、各「項目」には「項目値」が登録されている。ここでは、項目「スタティックルート」に登録されている3つの項目値「ip route 0.0.0.0 0.0.0.0 192.168.1.1」,「ip route 192.168.2.0 255.255.255.0 192.168.0.8」,「ip route 192.168.3.0 255.255.255.0 192.168.0.8」に着目して説明する。本発明では、以下の2つの切り戻し方法のいずれかを採用して切り戻しが実行される。
[第1の切戻方法]
【0046】
Cisco社製ルータは、設定ファイルの記憶領域として不揮発性の"startup-config"および揮発性の"running-config"を備え、ルータの起動時に"startup-config"の内容が"running-config"にコピーされ、それ以後、ルータは"running-config"に登録されている設定ファイルにしたがって動作する。したがって、復元時刻の設定ファイルを"startup-config"に書き込み、その後、ルータを再起動させれば、設定ファイルが"running-config"にコピーされるのでルータの復元が可能になる。
[第2の切戻方法]
【0047】
上記した第1の切戻方法ではルータの再起動が必要となるが、復元目標の設定ファイルを"startup-config"ではなく"running-config"へ直接コピーできればルータの再起動を不要にできる。しかしながら、Cisco社製ルータのように、"running-config"へのコピーコマンドがマージ(結合)であると、復元目標の設定ファイルの内容と切り戻し後の"running-config"の内容とに齟齬が生じる場合がある。
【0048】
図10は、ネットワーク機器の"running-config"に復元目標の設定ファイルをマージした際に生じる得る齟齬を説明した図であり、"running-config"に登録されている現在の設定ファイルから復元目標の設定ファイルへの切り戻しが、項目値の追加や変更のみであれば、現在の設定ファイルに復元目標の設定ファイルをマージするだけでも齟齬は生じない。しかしながら、項目値の削除を伴う場合は、マージでは既存の不要な項目値を削除できないので齟齬が生じてしまう。
【0049】
そこで、第2の切戻方法では、現在の設定ファイルと復元目標の設定ファイルとを予め比較して両者の差分を求め、マージのみで齟齬の無い切り戻しが可能であれば設定ファイルを"running-config"へ直接コピーする一方、マージでは齟齬が生じる場合には、オペレーションサーバ3において"running-config"を書き換えるコマンドを生成し、これをネットワーク機器へ送信して"running-config"を書き換えるようにしている。
【0050】
以下、図11のフローチャートを参照して、上記した第2の切戻方法の手順について詳細に説明する。
【0051】
ステップS61では、最新の設定ファイルと復元目標の設定ファイルとの差分が設定項目ごとに取得される。ステップS62では、前記差分に基づいてマージでの切り戻しが可能か否かが判定される。マージでの切り戻しが可能であればステップS63へ進み、前記復元目標の設定ファイルがルータの"running-config"にコピー(マージ)される。
【0052】
これに対して、マージでの切り戻しが不可能であればステップS64へ進み、項目の一つが選択される。ステップS65で、選択された項目に関して、最新の設定ファイルの各項目値と復元目標の設定ファイルの各項目値との差分が参照され、差分があればステップS66へ進み、この差分を切り戻すコマンドが生成される。
【0053】
図12は、コマンド生成の手順を示したフローチャートであり、ここでは、項目「スタティックルート」を切り戻す際のコマンドを例にして説明する。
【0054】
ステップS71では、前記差分が項目値ごとに分析される。ステップS72では、その分析結果に基づいて、復元目標の設定ファイルから現在の設定ファイルへの更新内容が、「削除」、「追加」、「変更」のいずれであるかが判定される。
【0055】
図13に示したように、現在の設定ファイルが、復元目標の設定ファイルから一部の項目値(ここでは、"ip route 192.168.3.0 255.255.255.0 192.168.0.8")を削除された内容であれば、「削除」と判定されるのでステップS73へ進み、この項目値を設定ファイルへ追加するコマンド"iproute 192.168.3.0 255.255.255.0 192.168.0.8"が生成される。
【0056】
また、図14に示したように、現在の設定ファイルが、復元目標の設定ファイルに一部の項目値(ここでは、"ip route 0.0.0.0 0.0.0.0 192.168.1.1")を追加した内容であれば、「追加」と判定されるのでステップS74へ進み、この項目値を設定ファイルから削除するコマンド"no iproute 0.0.0.0 0.0.0.0 192.168.1.1"が生成される。
【0057】
さらに、図15に示したように、現在の設定ファイルが、復元目標の設定ファイルの一部の項目値が変更された内容(ここでは、"ip route 192.168.5.0 255.255.255.0 192.168.0.8"が"ip route 192.168.3.0 255.255.255.0 192.168.0.8"に変更されている)であれば、「変更」と判定されるのでステップS75へ進み、変更後(現在)の項目値を設定ファイルから削除するコマンド"no iproute 192.168.3.0 255.255.255.0 192.168.0.8"が生成される。ステップS76では、変更前の項目値を設定ファイルへ追加するコマンド"iproute 192.168.5.0 255.255.255.0 192.168.0.8"が生成される。
【0058】
図11へ戻り、ステップS67では、全ての項目に関してコマンド生成が完了したか否かが判定され、完了するまでは、ステップS64へ戻って上記した各処理が繰り返される。ステップS68では、前記ステップS66で生成されたコマンドが、対応するネットワーク機器へ送信される。各ネットワーク機器は、受信したコマンドを実行して"running-config"を切り戻す。ステップS69では、"running-config"を"startup-config"へコピーする要求がネットワーク機器へ送信される。各ネットワーク機器は、この要求に応答して、"running-config"の内容を"startup-config"へコピーする。
【0059】
次いで、図16および図17のフローチャートを参照して、ネットワーク機器(ここでは、ルータまたはスイッチ)の切り戻し順序の決定方法について説明する。本実施形態では、オペレーションサーバ3がバックグラウンド処理として、経路調査のためのtracerouteを実行してICMPエコー要求メッセージを各ルータへ送信し、その応答であるICMP Time Exceededエラーメッセージに基づいて各ルータまでの距離(ホップ数)を判別し、ホップ数の多いルータから順にネットワーク設定を復元するようにしている。
【0060】
図17は、オペレーションサーバ3によるルータの切り戻し順序の決定方法の手順を示したフローチャートであり、ステップS81では、ネットワーク機器の一つが今回の注目機器として選択される。ステップS82では、今回の注目機器を対象にtracerouteが実行され、前記注目機器を宛先とするICMPエコー要求メッセージが、そのTTL(Time To Live)フィールドの値を更新させながら順次に送信される。
【0061】
このICMPエコー要求メッセージを受信した経路上の各ルータでは、そのTTLフィールドの値を「1」だけ減じ、その結果が「0」以外であれば、当該メッセージを自身の経路情報に基づいて次ホップ先へ転送する。また、TTLフィールドの値を「1」だけ減じた結果が「0」であれば、当該メッセージを破棄すると共に、送信元IPアドレスフィールドに自身のIPアドレスが登録されているICMP Time Exceededエラーメッセージをオペレーションサーバ3へ返信する。
【0062】
ステップS83では、今回の注目機器からの応答メッセージを受信できたか否かに基づいて、今回の注目機器を対象としたtracerouteが完了したか否かが判定される。tracerouteが完了するとステップS84へ進み、今回の注目機器までのホップ数が確認される。ステップS85では、今回の注目機器のIPアドレスと当該注目機器までのホップ数とのペアが記憶される。ステップS86では、全てのネットワークに関してtracerouteが完了したか否かが判定され、完了するまでは、前記ステップS81へ戻って注目機器を変更しながら上記した各処理が繰り返される。
【0063】
全てのネットワーク機器に関してtracerouteが完了するとステップS87へ進み、前記ステップS85においてネットワーク機器ごとに記憶されたデータがホップ数の降順にソートされて切り戻し順序が決定される。すなわち、オペレーションサーバ3からのホップ数が多いネットワーク機器から順に早い切戻順序が割り当てられる。
【0064】
図18は、前記オペレーションサーバ3の一実施形態の構成を示した機能ブロックであり、ここでは本発明の説明に不用な構成の図示が省略されている。
【0065】
設定ファイルデータベース301は、設定ファイルがその保存タイミングを代表する第1識別子(セッション識別子IDs)および新規保存タイミングを代表する第2識別子(実セッション識別子IDrs)と紐付けられて保存される記憶手段である。操作履歴監視部302は、各ネットワーク機器の操作履歴を監視し、前記ステップS401において、操作履歴のあるネットワーク機器を選別する。
【0066】
保存要求検知部305は、前記ステップS1において、クライアント1から送信される保存要求を検知する。設定ファイル取得部303は、前記保存要求に応答して、前回の保存タイミング以降に操作履歴のあるネットワーク機器から設定ファイルを取得する。
【0067】
更新有無判定部304は、前記ステップS204において、ネットワーク機器ごとに、取得した設定ファイルと、前回の保存タイミングを代表する第1識別子(セッション識別子IDs)と紐付けられている既登録の設定ファイルとを比較して更新の有無を判定する。新規保存部312は、前記ステップS205において、更新されている設定ファイルをネットワーク機器から取得し、今回を保存タイミングとする第1識別子(セッション識別子IDs)および今回を新規保存タイミングとする第2識別子(実セッション識別子IDrs)と紐付けて前記設定ファイルデータベース301に保存する。
【0068】
保存部311は、前記ステップS209において、設定ファイルが更新されていないネットワーク機器の既登録の設定ファイルをコピーして、今回の保存タイミングを代表する第1識別子および当該設定ファイルに紐付けられている第2識別子と紐付けて前記設定ファイルデータベース301に保存する。切戻要求検知部306は、前記ステップS3において、クライアント1から送信される切戻要求を検知する。切戻対象特定部307は、前記ステップS403において、復元時刻を含む切戻要求に応答して、切戻対象のネットワーク機器を特定する。設定ファイル切戻部308は、前記ステップS405において、切戻対象のネットワーク機器に、前記復元時刻を代表する第1識別子と紐付けられている既登録の設定ファイルを切り戻す。
【0069】
前記切戻対象特定部307は、前記ステップS403において、最新の保存タイミングを代表する第1識別子(セッション識別子IDs)と紐付けられている既登録の設定ファイルの第2識別子(実セッション識別子IDrs)を読み出す第1読出部307a、前記復元時刻を代表する第1識別子(セッション識別子IDs)と紐付けられている既登録の設定ファイルの第2識別子(実セッション識別子IDrs)を読み出す第2読出部307b、および読み出された第2識別子同士を比較する比較部307cを含み、前記比較結果に基づいて切戻対象のネットワーク機器を特定する。
【0070】
前記設定ファイル切戻部308は、前記ステップS61,S62において、最新の保存タイミングを代表する第1識別子と紐付けられている既登録の設定ファイルと、復元時刻を代表する第1識別子と紐付けられている既登録の設定ファイルとを比較して、変更項目および変更内容を分析する変更分析部308eを含む。
【0071】
前記設定ファイル切戻部308はさらに、変更内容が「削除」の項目に関して、当該削除されている項目を設定ファイルに追加するコマンドを前記ステップS73で生成する第1コマンド生成部308a、変更内容が「追加」の項目に関して、当該追加されている項目を設定ファイルから削除するコマンドを前記ステップS74で生成する第2コマンド生成部308b、変更内容が「変更」の項目に関して、当該変更後の項目を設定ファイルから削除するコマンド、および変更前の項目を設定ファイルに追加するコマンドを、それぞれ前記ステップS75,S76で生成する第3コマンド生成部308c、および前記各コマンドをネットワーク機器へ前記ステップS68で送信して実行させるコマンド送信部308dを含む。
【0072】
メッセージ送受信部309は、前記ステップS82において、各ネットワーク機器(ここでは、ルータまたはスイッチ)を対象に経路調査用のtracerouteを順次に実行し、ICMPエコー要求メッセージおよびICMP Time Exceededエラーメッセージを送受信する。ホップ数検知部310は、前記ステップS84〜86において、前記各ネットワーク機器から返信された応答メッセージに基づいて、各ネットワーク機器までのホップ数を検知する。切戻順序決定部313は、前記ステップS87において、前記各ネットワーク機器までのホップ数に基づいてネットワーク機器の切戻順序を決定する。前記切戻対象特定部307は、前記切戻順序に基づいて、自身からのホップ数が多いネットワーク機器から優先的にネットワーク設定を切り戻す。
【図面の簡単な説明】
【0073】
【図1】本発明に係るネットワーク設定復元方法が適用されるネットワークの典型的な想定環境を示した図である。
【図2】ネットワーク機器の設定ファイルがセッション識別子IDsおよび実セッション識別子IDrs=1と紐付けられて保存される様子を模式的に表現した図である。
【図3】オペレーションサーバ3の動作を示したフローチャートである。
【図4】設定ファイル保存処理の手順を示したフローチャートである。
【図5】ネットワーク機器の設定ファイルがセッション識別子IDsおよび実セッション識別子IDrs=1に基づいて復元される様子を模式的に表現した図(その1)である。
【図6】ネットワーク機器の設定ファイルがセッション識別子IDsおよび実セッション識別子IDrs=1に基づいて復元される様子を模式的に表現した図(その2)である。
【図7】設定ファイル切戻処理の手順を示したフローチャートである。
【図8】設定ファイル切戻処理の手順を示したシーケンスフローである。
【図9】Cisco社製ルータの設定ファイルの一例を示した図である。
【図10】設定ファイルをマージにより切り戻したときに齟齬が生じる様子を説明した図である。
【図11】第2の切戻方法の手順を示したフローチャートである。
【図12】コマンド生成の手順を示したフローチャートである。
【図13】コマンドの内容を説明した図(その1)である。
【図14】コマンドの内容を説明した図(その2)である。
【図15】コマンドの内容を説明した図(その3)である。
【図16】ルータの切り戻し順序の決定方法を説明した図である。
【図17】ルータの切り戻し順序を示したフローチャートである。
【図18】オペレーションサーバの機能ブロックである。
【符号の説明】
【0074】
1…ネットワーク,2…クライアント,3…オペレーションサーバ,301…設定ファイルデータベース,302…操作履歴監視部,303…設定ファイル取得部,304…更新有無判定部,305…保存要求検知部,306…切戻要求検知部,307…切戻対象特定部,308…設定ファイル切戻部,309…メッセージ送受信部,310…ホップ数検知部,311…保存部,312…新規保存部,313…切戻順序決定部
【技術分野】
【0001】
本発明は、ルータやサーバなどのネットワーク機器の設定を変更前の状態に切り戻すことで復元するネットワーク設定復元方法およびシステムに係り、特に、短時間での復元を可能にしたネットワーク設定復元方法およびシステムに関する。
【背景技術】
【0002】
ルータやサーバなどのネットワーク機器のネットワーク設定ファイル(以下、単に設定ファイルと表現する場合もある)を管理する次世代NWオペレーションサーバをネットワーク(NW)上に設置し、オペレーションミスなどの障害が発生した際には、この次世代NWオペレーションサーバより一括して以前の設定ファイルを読み出し、各ネットワーク機器に順次に切り戻すことにより迅速な障害復旧を支援するシステムが、非特許文献1,2および特許文献1に開示されている。従来のネットワーク設定ファイルの切り戻しは、例えば以下のような手順で実行される。
【0003】
手順1: 運用者がクライアント端末を用いてルータ、スイッチ、サーバ等の各種ネットワーク機器のオペレーション(操作・設定)を行う。その際、次世代NWオペレーションサーバはオペレーションのログを収集する。また、オペレーション終了時に全てのネットワーク機器の設定ファイルを保存管理する。
【0004】
手順2:オペレーションの内容にエラー等が含まれていた場合、警報や障害発生が通知される。
【0005】
手順3:運用者はクライアント端末を介して次世代NWオペレーションサーバを操作し、全ての被管理装置の設定ファイルを以前の(正常に動作していた任意の時点の)状態に切戻す。これにより、障害から復旧する。
【0006】
手順4:運用者は障害復旧後に、次世代NWオペレーションサーバが保存管理しているオペレーションのログを分析して障害原因を特定する。
【非特許文献1】「オペレーションミスからの迅速な復旧を可能とするディペンダブルネットワーク管理システムの提案」,吉原貴仁ほか:信学会2007総合大会論文集
【非特許文献2】オペレーションミスからの迅速な復旧を可能とするディペンダブルネットワーク管理システムの実装,荒井大輔ほか:信学会2007総合大会論文集
【特許文献1】特願2006−249299号
【発明の開示】
【発明が解決しようとする課題】
【0007】
ネットワーク設定の切り戻し対象となるネットワーク機器のうち、自身の経路情報にしたがって動作し、ネットワークを構成するルータやスイッチでは、ネットワーク設定の切り戻しにより経路情報も以前の設定に切り戻されてしまうので、切り戻し前の機器と切り戻し後の機器とで経路情報に齟齬が生じてしまい、接続が断たれてしまう場合がある。したがって、ネットワーク機器のうち、特にルータやスイッチに関しては、齟齬の影響が最小限に抑えられるように、オペレーションサーバから遠い位置のルータ等から順にネットワーク設定を切り戻すことが望ましい。
【0008】
しかしながら、上記した従来技術ではルータやスイッチのネットワーク設定を切り戻す際でも、その順序が全く考慮されていなかったので、切り戻しの開始直後から多くの経路が断たれて通信不能に陥ってしまうという技術課題があった。
【0009】
本発明の目的は、上記した従来技術の課題を全て解決し、サーバからの接続性を確保しながらルータやスイッチのネットワーク設定を切り戻せるネットワーク設定復元方法およびシステムを提供することにある。
【課題を解決するための手段】
【0010】
上記した目的を達成するために、本発明は、自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、保存要求に応答してオペレーションサーバに保存し、その後の切戻要求で指定された既登録の設定ファイルを各ネットワーク機器へ切り戻してネットワーク設定を復元するネットワーク設定復元方法において、前記オペレーションサーバが、各ネットワーク機器までのホップ数を検知する手順と、前記ホップ数が多いネットワーク機器から優先的にネットワーク設定が切り戻されるように切戻順序を決定する手順とを含むことを特徴とする。
【発明の効果】
【0011】
本発明によれば、自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、オペレーションサーバから遠いネットワーク機器から順に切り戻せるようになるので、サーバとの接続性を維持したままでの復元が可能になる。
【発明を実施するための最良の形態】
【0012】
以下、図面を参照して本発明の最良の実施の形態について詳細に説明する。図1は、本発明に係るネットワーク設定復元方法が適用されるネットワークの典型的な想定環境を示した図である。
【0013】
管理対象のネットワーク1には、ネットワーク設定ファイルの復元対象となるスイッチ、ルータあるいはサーバ等の各種ネットワーク機器A,B,C,D…が収容されている。このネットワーク1にはさらに、各ネットワーク機器にネットワーク設定を行うクライアント2、およびクライアント2からの保存要求に応答して各ネットワーク機器からネットワークの設定ファイルを取得し、さらに、クライアント2からの切戻要求に応答して各ネットワーク機器へ既登録の設定ファイルを切り戻してネットワーク設定を復元するオペレーションサーバ3が接続されている。
【0014】
図2は、4つのネットワーク機器A,B,C,Dの設定ファイルがクライアント1の操作で更新され、更新後の設定ファイルが2つの識別子IDs,IDrsと紐付けられてオペレーションサーバ3に保存される様子を模式的に表現した図である。
【0015】
本発明では、保存要求ごとに全てのネットワーク機器の設定ファイルが、当該保存時刻を代表する第1識別子(セッション識別子IDs)と紐付けられてオペレーションサーバ3に蓄積される。また、本発明では未更新の設定ファイルが各ネットワーク機器から保存要求ごとに繰り返し取得されてしまう無駄を省くために、各ネットワーク機器からは更新されている可能性のある設定ファイルのみが取得され、未更新の設定ファイルに関しては、オペレーションサーバ3に既登録の設定ファイルが読み出されてコピーされるようにしている。
【0016】
そこで、本発明ではコピー元の設定ファイルが新規保存された時刻を代表する第2識別子(実セッション識別子IDrs)を定義し、この実セッション識別子IDrsも各設定ファイルに紐付けられる。したがって、ネットワーク機器から取得されて新規保存される設定ファイルでは、セッション識別子IDsおよび実セッション識別子IDrsが同値となる。
【0017】
図2では、時刻t1において全てのネットワーク機器A,B,C,Dの設定ファイルFa,Fb,Fc,Fdが、その保存タイミングを代表するセッション識別子IDsおよび実セッション識別子IDrsと紐付けられてオペレーションサーバ3に予め登録されている。時刻t1が最初の保存タイミングであれば、セッション識別子IDsおよび実セッション識別子IDrsのいずれにも、時刻t1を代表する「1」が登録される
【0018】
図3,4は、前記オペレーションサーバ3の動作を示したフローチャートであり、図2の時刻t1以降、2つのネットワーク機器B,Cの設定ファイルFb,Fcのみが更新され、時刻t2において、設定ファイルの保存要求がクライアント1からオペレーションサーバ3へ通知されると、これが図3のステップS1で検知されてステップS2へ進む。ステップS2では、設定ファイル保存処理が実行される。
【0019】
図4は、前記設定ファイル保存処理の手順を示したフローチャートであり、ステップS201では、前記時刻t2を代表するセッション識別子IDs=2および実セッション識別子IDrs=2が設定される。ステップS202では、前回の保存時刻t1以降に操作履歴のあるネットワーク(NW)機器の一つが選択される。本実施形態では、3つのネットワーク機器B,C,Dに関して操作履歴があり、最初にネットワーク機器Bが選択されたものとして説明を続ける。
【0020】
ステップS203では、ネットワーク機器Bの設定ファイルFbがオペレーションサーバ3により取得される。ステップS204では、直前の保存時刻t1を代表するセッション識別子IDs=1と紐付けられている既登録の設定ファイル群の中から、ネットワーク機器Bの設定ファイルFbが読み取られる。そして、この設定ファイルFb(IDs=1)と、時刻t2で取得された今回の設定ファイルFbとが比較され、両者が一致するか否かに基づいて更新の有無が判定される。不一致であれば、更新が有ったと判定されてステップS205へ進み、前記ステップS203で取得された今回の設定ファイルFbが、時刻t2を代表するセッション識別子IDs=2および実セッション識別子IDrs=2と紐付けられて保存される。
【0021】
ステップS206では、操作履歴のある全てのネットワーク機器に関して上記した各処理が完了したか否かが判定され、ここではネットワーク機器C,Dに対する処理が残っているので、ステップS202へ戻って上記した各処理が繰り返される。このとき、ネットワーク機器Cに関しては前記ネットワーク機器Bと同様に、その設定ファイルが更新されていると判定されるので、ステップS203でネットワーク機器Cから取得された設定ファイルFcが、時刻t2を代表するセッション識別子IDs=2および実セッション識別子IDrs=2と紐付けられて保存される。
【0022】
これに対して、ネットワーク機器Dに関しては、例えばファイルを参照した操作履歴が残っているだけなので、ステップS204では設定ファイルが更新されていないと判定されてステップS206へ進む。
【0023】
ステップS207では、設定ファイルが未更新のネットワーク機器の一つが選択される。本実施形態では、2つのネットワーク機器A,Dが順次に選択される。ステップS208では、選択されたネットワーク機器に関して、前回の保存時刻t1を代表するセッション識別子IDs=1と紐付けられている既登録の設定ファイル群の中から、前記未更新のネットワーク機器の設定ファイルが、そのセッション識別子IDsおよび実セッション識別子IDrsと共に読み込まれる。ステップS209では、セッション識別子IDsのみが今回の保存時刻t2を代表する「2」に書き換えられ、このセッション識別子IDs=2に対応した設定ファイル群の一つとして保存される。
【0024】
ネットワーク機器Aであれば、セッション識別子IDs=1および実セッション識別子IDrs=1と紐付けられている既登録の設定ファイルFa(IDs=1,IDrs=1)と同一内容の設定ファイルが、今回の保存時刻t2を代表するセッション識別子IDs=2および実セッション識別子IDrs=1と紐付けられて保存される。
【0025】
ステップS210では、設定ファイルが未更新の全てのネットワーク機器に関して上記した各処理が完了したか否かが判定され、全てのネットワーク機器に関して上記した処理が完了するまで、ステップS207へ戻って上記した各処理が繰り替えられる。
【0026】
図2へ戻り、上記のように時刻t2で保存要求が検知されると、2つのネットワーク機器B,Cの設定ファイルFb,Fcは、保存時刻t2を代表するセッション識別子IDs=2、および実セッション識別子IDrs=2と紐付けられてオペレーションサーバ3に保存される。
【0027】
これに対して、設定ファイルが更新されていない残りのネットワーク機器A,Dの設定ファイルFa,Fdは、今回の保存時刻t2を代表するセッション識別子IDs=2、および当該設定ファイルが新規保存された時刻t1を代表する実セッション識別子IDrs=1と紐付けられてオペレーションサーバ3に登録される。
【0028】
さらに、時刻t2以降にネットワーク機器Dの設定ファイルFdのみが更新され、時刻t3で新たな保存要求が検知されると、当該ネットワーク機器Dの設定ファイルFdは、今回の保存時刻t3を代表するセッション識別子IDs=3、および実セッション識別子IDrs=3と紐付けられてオペレーションサーバ3に登録される。
【0029】
これに対して、設定ファイルが更新されていない残りのネットワーク機器A,B,Cの設定ファイルFa,Fb,Fcのうち、その内容が時刻t1で新規保存された内容と同一であるネットワーク機器Aの設定ファイルFaに関しては、今回の保存時刻t3を代表するセッション識別子IDs=3および時刻t1を代表する実セッション識別子IDrs=1と紐付けられてオペレーションサーバ3に登録される。
【0030】
同様に、設定ファイルの内容が時刻t2で新規保存された内容と同一であるネットワーク機器B,Cの設定ファイルFb,Fcに関しては、今回の保存時刻t3を代表するセッション識別子IDs=3および時刻t2を代表する実セッション識別子IDrs=2と紐付けられてオペレーションサーバ3に登録される。
【0031】
次いで、以上のようにして時系列で保存された設定ファイルを利用して、各ネットワーク機器の設定ファイルを所望の復元時刻における設定内容に切り戻す手順を説明する。ここでは、各ネットワーク機器の設定ファイルが、図5に示した経過を経て更新され、最新の保存タイミングが時刻t3である場合を例にして説明する。
【0032】
オペレータがクライアント1から、所望の復元時刻を含む切戻要求をオペレーションサーバ3へ送信し、これが図3のステップS3で検知されると、ステップS4へ進んで設定ファイル切戻処理が実行される。ここでは、復元時刻としてt2が指定されたものとして説明を続ける。
【0033】
図7は、前記設定ファイル切戻処理の手順を示したフローチャートであり、図8は、そのシーケンスフローである。
【0034】
ステップS401では、最新の保存時刻t3以降、新たに操作されたネットワーク機器があるか否かが判定される。操作されたネットワーク機器がなければステップS403ヘ進み、有ればステップS402へ進む。ステップS402では、前記図4のフローチャートで説明した設定ファイル保存処理と同様の処理が実行され、当該切戻要求の受信時刻t4を保存時刻として設定ファイルが前記と同様にオペレーションサーバ3に保存され、その後、ステップS403へ進む。
【0035】
図6は、時刻t4で新たにネットワーク設定保存処理が実行された場合の、各ネットワーク機器の設定ファイルの更新状況を示した図であり、ここでは、時刻t3以降にネットワーク機器Bが操作されていたので、ネットワーク機器Bの設定ファイルFbが取り込まれ、保存時刻t4を代表するセッション識別子IDs=4および実セッション識別子IDrs=4と紐付けられてオペレーションサーバ3に新規保存される。
【0036】
また、更新されていない他のネットワーク機器A,C,Dに関しては、直前の保存時刻t3を代表するセッション識別子IDs=3と紐付けられている設定ファイルが読み出され、セッション識別子IDsのみが、今回の保存時刻t4を代表するセッション識別子IDs=4に書き換えられて保存される。
【0037】
ステップS403では、最新(直前)の保存時刻(図5の例では、時刻t3)を代表するセッション識別子IDs=3と紐付けられた各設定ファイルの実セッション識別子IDrsと、復元時刻t2を代表するセッション識別子IDs=2と紐付けられた各設定ファイルの実セッション識別子IDrsとが比較され、この比較結果に基づいて切戻対象のネットワーク機器が特定される。すなわち、実セッション識別子IDrsが不一致のネットワーク機器が切戻対象とされる。
【0038】
図5を参照すれば、ネットワーク機器Aの時刻t3で保存された設定ファイルFaの実セッション識別子IDrsおよび復元時刻t2で保存された設定ファイルの実セッション識別子IDrsはいずれも「1」であり、各時刻t2,t3の設定ファイルは同一であることが判るので、ネットワーク機器Aは切戻対象とされない。
【0039】
同様に、ネットワーク機器B,Cについても、各設定ファイルFb,Fcの時刻t3における実セッション識別子IDrsおよび復元時刻t2における実セッション識別子IDrsはいずれも「2」であり、各時刻t2,t3の設定ファイルは同一であることが判るので、ネットワーク機器B,Cも切戻対象とされない。
【0040】
これに対して、ネットワーク機器Dに関しては、その設定ファイルFdの復元時刻t2における実セッション識別子IDrsが「1」であるのに対して、最新の保存時刻t3における実セッション識別子IDrsは「3」であり、各時刻t2,t3の設定ファイルが異なっていることが判るので、ネットワーク機器Dは切戻対象とされる。
【0041】
なお、図6に示した例であれば、ネットワーク機器A,Cは切戻対象とされず、ネットワーク機器B,Dが切戻対象とされる。
【0042】
図7のフローチャートへ戻り、ステップS404では、特定された切戻対象のネットワーク機器が一つ選択される。ステップS405では、このネットワーク機器に対して、後に詳述するネットワーク設定の切戻処理が実行される。ステップS406では、全ての切戻対象に対する切戻処理が完了したか否かが判定され、完了するまで前記ステップS404へ戻って上記した各手順が繰り返される。
【0043】
次いで、前記ステップS405で実行されるネットワーク設定の切戻方法について説明する。
【0044】
本実施形態では、ネットワーク機器がCisco社製のルータやスイッチのように、不揮発性記憶領域に記憶されている設定ファイルが起動時に揮発性記憶領域へコピーされて実行される機器であるか否かによって切り戻し手順が異なり、不揮発性記憶領域に記憶されている設定ファイルが起動時に揮発性記憶領域へコピーされて実行される機器では、以下に詳述するコマンドを用いた切り戻し手順が実行され、それ以外の機器では従来技術と同様の切り戻し手順が実行される。
【0045】
図9は、Cisco社製ルータの設定ファイルの一例を示した図であり、設定ファイルは、2つの「!」マークで挟まれた「項目」の集合であり、各「項目」には「項目値」が登録されている。ここでは、項目「スタティックルート」に登録されている3つの項目値「ip route 0.0.0.0 0.0.0.0 192.168.1.1」,「ip route 192.168.2.0 255.255.255.0 192.168.0.8」,「ip route 192.168.3.0 255.255.255.0 192.168.0.8」に着目して説明する。本発明では、以下の2つの切り戻し方法のいずれかを採用して切り戻しが実行される。
[第1の切戻方法]
【0046】
Cisco社製ルータは、設定ファイルの記憶領域として不揮発性の"startup-config"および揮発性の"running-config"を備え、ルータの起動時に"startup-config"の内容が"running-config"にコピーされ、それ以後、ルータは"running-config"に登録されている設定ファイルにしたがって動作する。したがって、復元時刻の設定ファイルを"startup-config"に書き込み、その後、ルータを再起動させれば、設定ファイルが"running-config"にコピーされるのでルータの復元が可能になる。
[第2の切戻方法]
【0047】
上記した第1の切戻方法ではルータの再起動が必要となるが、復元目標の設定ファイルを"startup-config"ではなく"running-config"へ直接コピーできればルータの再起動を不要にできる。しかしながら、Cisco社製ルータのように、"running-config"へのコピーコマンドがマージ(結合)であると、復元目標の設定ファイルの内容と切り戻し後の"running-config"の内容とに齟齬が生じる場合がある。
【0048】
図10は、ネットワーク機器の"running-config"に復元目標の設定ファイルをマージした際に生じる得る齟齬を説明した図であり、"running-config"に登録されている現在の設定ファイルから復元目標の設定ファイルへの切り戻しが、項目値の追加や変更のみであれば、現在の設定ファイルに復元目標の設定ファイルをマージするだけでも齟齬は生じない。しかしながら、項目値の削除を伴う場合は、マージでは既存の不要な項目値を削除できないので齟齬が生じてしまう。
【0049】
そこで、第2の切戻方法では、現在の設定ファイルと復元目標の設定ファイルとを予め比較して両者の差分を求め、マージのみで齟齬の無い切り戻しが可能であれば設定ファイルを"running-config"へ直接コピーする一方、マージでは齟齬が生じる場合には、オペレーションサーバ3において"running-config"を書き換えるコマンドを生成し、これをネットワーク機器へ送信して"running-config"を書き換えるようにしている。
【0050】
以下、図11のフローチャートを参照して、上記した第2の切戻方法の手順について詳細に説明する。
【0051】
ステップS61では、最新の設定ファイルと復元目標の設定ファイルとの差分が設定項目ごとに取得される。ステップS62では、前記差分に基づいてマージでの切り戻しが可能か否かが判定される。マージでの切り戻しが可能であればステップS63へ進み、前記復元目標の設定ファイルがルータの"running-config"にコピー(マージ)される。
【0052】
これに対して、マージでの切り戻しが不可能であればステップS64へ進み、項目の一つが選択される。ステップS65で、選択された項目に関して、最新の設定ファイルの各項目値と復元目標の設定ファイルの各項目値との差分が参照され、差分があればステップS66へ進み、この差分を切り戻すコマンドが生成される。
【0053】
図12は、コマンド生成の手順を示したフローチャートであり、ここでは、項目「スタティックルート」を切り戻す際のコマンドを例にして説明する。
【0054】
ステップS71では、前記差分が項目値ごとに分析される。ステップS72では、その分析結果に基づいて、復元目標の設定ファイルから現在の設定ファイルへの更新内容が、「削除」、「追加」、「変更」のいずれであるかが判定される。
【0055】
図13に示したように、現在の設定ファイルが、復元目標の設定ファイルから一部の項目値(ここでは、"ip route 192.168.3.0 255.255.255.0 192.168.0.8")を削除された内容であれば、「削除」と判定されるのでステップS73へ進み、この項目値を設定ファイルへ追加するコマンド"iproute 192.168.3.0 255.255.255.0 192.168.0.8"が生成される。
【0056】
また、図14に示したように、現在の設定ファイルが、復元目標の設定ファイルに一部の項目値(ここでは、"ip route 0.0.0.0 0.0.0.0 192.168.1.1")を追加した内容であれば、「追加」と判定されるのでステップS74へ進み、この項目値を設定ファイルから削除するコマンド"no iproute 0.0.0.0 0.0.0.0 192.168.1.1"が生成される。
【0057】
さらに、図15に示したように、現在の設定ファイルが、復元目標の設定ファイルの一部の項目値が変更された内容(ここでは、"ip route 192.168.5.0 255.255.255.0 192.168.0.8"が"ip route 192.168.3.0 255.255.255.0 192.168.0.8"に変更されている)であれば、「変更」と判定されるのでステップS75へ進み、変更後(現在)の項目値を設定ファイルから削除するコマンド"no iproute 192.168.3.0 255.255.255.0 192.168.0.8"が生成される。ステップS76では、変更前の項目値を設定ファイルへ追加するコマンド"iproute 192.168.5.0 255.255.255.0 192.168.0.8"が生成される。
【0058】
図11へ戻り、ステップS67では、全ての項目に関してコマンド生成が完了したか否かが判定され、完了するまでは、ステップS64へ戻って上記した各処理が繰り返される。ステップS68では、前記ステップS66で生成されたコマンドが、対応するネットワーク機器へ送信される。各ネットワーク機器は、受信したコマンドを実行して"running-config"を切り戻す。ステップS69では、"running-config"を"startup-config"へコピーする要求がネットワーク機器へ送信される。各ネットワーク機器は、この要求に応答して、"running-config"の内容を"startup-config"へコピーする。
【0059】
次いで、図16および図17のフローチャートを参照して、ネットワーク機器(ここでは、ルータまたはスイッチ)の切り戻し順序の決定方法について説明する。本実施形態では、オペレーションサーバ3がバックグラウンド処理として、経路調査のためのtracerouteを実行してICMPエコー要求メッセージを各ルータへ送信し、その応答であるICMP Time Exceededエラーメッセージに基づいて各ルータまでの距離(ホップ数)を判別し、ホップ数の多いルータから順にネットワーク設定を復元するようにしている。
【0060】
図17は、オペレーションサーバ3によるルータの切り戻し順序の決定方法の手順を示したフローチャートであり、ステップS81では、ネットワーク機器の一つが今回の注目機器として選択される。ステップS82では、今回の注目機器を対象にtracerouteが実行され、前記注目機器を宛先とするICMPエコー要求メッセージが、そのTTL(Time To Live)フィールドの値を更新させながら順次に送信される。
【0061】
このICMPエコー要求メッセージを受信した経路上の各ルータでは、そのTTLフィールドの値を「1」だけ減じ、その結果が「0」以外であれば、当該メッセージを自身の経路情報に基づいて次ホップ先へ転送する。また、TTLフィールドの値を「1」だけ減じた結果が「0」であれば、当該メッセージを破棄すると共に、送信元IPアドレスフィールドに自身のIPアドレスが登録されているICMP Time Exceededエラーメッセージをオペレーションサーバ3へ返信する。
【0062】
ステップS83では、今回の注目機器からの応答メッセージを受信できたか否かに基づいて、今回の注目機器を対象としたtracerouteが完了したか否かが判定される。tracerouteが完了するとステップS84へ進み、今回の注目機器までのホップ数が確認される。ステップS85では、今回の注目機器のIPアドレスと当該注目機器までのホップ数とのペアが記憶される。ステップS86では、全てのネットワークに関してtracerouteが完了したか否かが判定され、完了するまでは、前記ステップS81へ戻って注目機器を変更しながら上記した各処理が繰り返される。
【0063】
全てのネットワーク機器に関してtracerouteが完了するとステップS87へ進み、前記ステップS85においてネットワーク機器ごとに記憶されたデータがホップ数の降順にソートされて切り戻し順序が決定される。すなわち、オペレーションサーバ3からのホップ数が多いネットワーク機器から順に早い切戻順序が割り当てられる。
【0064】
図18は、前記オペレーションサーバ3の一実施形態の構成を示した機能ブロックであり、ここでは本発明の説明に不用な構成の図示が省略されている。
【0065】
設定ファイルデータベース301は、設定ファイルがその保存タイミングを代表する第1識別子(セッション識別子IDs)および新規保存タイミングを代表する第2識別子(実セッション識別子IDrs)と紐付けられて保存される記憶手段である。操作履歴監視部302は、各ネットワーク機器の操作履歴を監視し、前記ステップS401において、操作履歴のあるネットワーク機器を選別する。
【0066】
保存要求検知部305は、前記ステップS1において、クライアント1から送信される保存要求を検知する。設定ファイル取得部303は、前記保存要求に応答して、前回の保存タイミング以降に操作履歴のあるネットワーク機器から設定ファイルを取得する。
【0067】
更新有無判定部304は、前記ステップS204において、ネットワーク機器ごとに、取得した設定ファイルと、前回の保存タイミングを代表する第1識別子(セッション識別子IDs)と紐付けられている既登録の設定ファイルとを比較して更新の有無を判定する。新規保存部312は、前記ステップS205において、更新されている設定ファイルをネットワーク機器から取得し、今回を保存タイミングとする第1識別子(セッション識別子IDs)および今回を新規保存タイミングとする第2識別子(実セッション識別子IDrs)と紐付けて前記設定ファイルデータベース301に保存する。
【0068】
保存部311は、前記ステップS209において、設定ファイルが更新されていないネットワーク機器の既登録の設定ファイルをコピーして、今回の保存タイミングを代表する第1識別子および当該設定ファイルに紐付けられている第2識別子と紐付けて前記設定ファイルデータベース301に保存する。切戻要求検知部306は、前記ステップS3において、クライアント1から送信される切戻要求を検知する。切戻対象特定部307は、前記ステップS403において、復元時刻を含む切戻要求に応答して、切戻対象のネットワーク機器を特定する。設定ファイル切戻部308は、前記ステップS405において、切戻対象のネットワーク機器に、前記復元時刻を代表する第1識別子と紐付けられている既登録の設定ファイルを切り戻す。
【0069】
前記切戻対象特定部307は、前記ステップS403において、最新の保存タイミングを代表する第1識別子(セッション識別子IDs)と紐付けられている既登録の設定ファイルの第2識別子(実セッション識別子IDrs)を読み出す第1読出部307a、前記復元時刻を代表する第1識別子(セッション識別子IDs)と紐付けられている既登録の設定ファイルの第2識別子(実セッション識別子IDrs)を読み出す第2読出部307b、および読み出された第2識別子同士を比較する比較部307cを含み、前記比較結果に基づいて切戻対象のネットワーク機器を特定する。
【0070】
前記設定ファイル切戻部308は、前記ステップS61,S62において、最新の保存タイミングを代表する第1識別子と紐付けられている既登録の設定ファイルと、復元時刻を代表する第1識別子と紐付けられている既登録の設定ファイルとを比較して、変更項目および変更内容を分析する変更分析部308eを含む。
【0071】
前記設定ファイル切戻部308はさらに、変更内容が「削除」の項目に関して、当該削除されている項目を設定ファイルに追加するコマンドを前記ステップS73で生成する第1コマンド生成部308a、変更内容が「追加」の項目に関して、当該追加されている項目を設定ファイルから削除するコマンドを前記ステップS74で生成する第2コマンド生成部308b、変更内容が「変更」の項目に関して、当該変更後の項目を設定ファイルから削除するコマンド、および変更前の項目を設定ファイルに追加するコマンドを、それぞれ前記ステップS75,S76で生成する第3コマンド生成部308c、および前記各コマンドをネットワーク機器へ前記ステップS68で送信して実行させるコマンド送信部308dを含む。
【0072】
メッセージ送受信部309は、前記ステップS82において、各ネットワーク機器(ここでは、ルータまたはスイッチ)を対象に経路調査用のtracerouteを順次に実行し、ICMPエコー要求メッセージおよびICMP Time Exceededエラーメッセージを送受信する。ホップ数検知部310は、前記ステップS84〜86において、前記各ネットワーク機器から返信された応答メッセージに基づいて、各ネットワーク機器までのホップ数を検知する。切戻順序決定部313は、前記ステップS87において、前記各ネットワーク機器までのホップ数に基づいてネットワーク機器の切戻順序を決定する。前記切戻対象特定部307は、前記切戻順序に基づいて、自身からのホップ数が多いネットワーク機器から優先的にネットワーク設定を切り戻す。
【図面の簡単な説明】
【0073】
【図1】本発明に係るネットワーク設定復元方法が適用されるネットワークの典型的な想定環境を示した図である。
【図2】ネットワーク機器の設定ファイルがセッション識別子IDsおよび実セッション識別子IDrs=1と紐付けられて保存される様子を模式的に表現した図である。
【図3】オペレーションサーバ3の動作を示したフローチャートである。
【図4】設定ファイル保存処理の手順を示したフローチャートである。
【図5】ネットワーク機器の設定ファイルがセッション識別子IDsおよび実セッション識別子IDrs=1に基づいて復元される様子を模式的に表現した図(その1)である。
【図6】ネットワーク機器の設定ファイルがセッション識別子IDsおよび実セッション識別子IDrs=1に基づいて復元される様子を模式的に表現した図(その2)である。
【図7】設定ファイル切戻処理の手順を示したフローチャートである。
【図8】設定ファイル切戻処理の手順を示したシーケンスフローである。
【図9】Cisco社製ルータの設定ファイルの一例を示した図である。
【図10】設定ファイルをマージにより切り戻したときに齟齬が生じる様子を説明した図である。
【図11】第2の切戻方法の手順を示したフローチャートである。
【図12】コマンド生成の手順を示したフローチャートである。
【図13】コマンドの内容を説明した図(その1)である。
【図14】コマンドの内容を説明した図(その2)である。
【図15】コマンドの内容を説明した図(その3)である。
【図16】ルータの切り戻し順序の決定方法を説明した図である。
【図17】ルータの切り戻し順序を示したフローチャートである。
【図18】オペレーションサーバの機能ブロックである。
【符号の説明】
【0074】
1…ネットワーク,2…クライアント,3…オペレーションサーバ,301…設定ファイルデータベース,302…操作履歴監視部,303…設定ファイル取得部,304…更新有無判定部,305…保存要求検知部,306…切戻要求検知部,307…切戻対象特定部,308…設定ファイル切戻部,309…メッセージ送受信部,310…ホップ数検知部,311…保存部,312…新規保存部,313…切戻順序決定部
【特許請求の範囲】
【請求項1】
自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、保存要求に応答してオペレーションサーバに保存し、その後の切戻要求で指定された既登録の設定ファイルを各ネットワーク機器へ順次に切り戻してネットワーク設定を復元するネットワーク設定復元方法において、
前記オペレーションサーバが、
各ネットワーク機器までのホップ数を検知する手順と、
前記ホップ数が多いネットワーク機器から優先的にネットワーク設定が切り戻されるように切戻順序を決定する手順とを含むことを特徴とするネットワーク設定復元方法。
【請求項2】
前記各ネットワーク機器までのホップ数を検知する手順は、
オペレーションサーバが、
各ネットワーク機器に経路調査メッセージを順次に送信する手順と、
送信した経路調査メッセージごとに応答メッセージを受信する手順と、
受信した応答メッセージに基づいて各ネットワーク機器までのホップ数を判定する手順とを含むことを特徴とする請求項1に記載のネットワーク設定復元方法。
【請求項3】
オペレーションサーバからのホップ数が多いネットワーク機器から順に早い切戻順序が割り当てられることを特徴とする請求項1または2に記載のネットワーク設定復元方法。
【請求項4】
前記ネットワーク機器がルータまたはスイッチであることを特徴とする請求項1ないし3のいずれかに記載のネットワーク設定復元方法。
【請求項5】
自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、保存要求に応答してオペレーションサーバに保存し、その後の切戻要求で指定された既登録の設定ファイルを各ネットワーク機器へ順次に切り戻してネットワーク設定を復元するネットワーク設定復元システムにおいて、
前記オペレーションサーバが、
各ネットワーク機器までのホップ数を検知する手段と、
前記ホップ数が多いネットワーク機器から優先的にネットワーク設定が切り戻されるように切戻順序を決定する手段とを含むことを特徴とするネットワーク設定復元システム。
【請求項6】
前記各ネットワーク機器までのホップ数を検知する手段が、
各ネットワーク機器に経路調査メッセージを順次に送信する手段と、
送信した経路調査メッセージごとに応答メッセージを受信する手段と、
受信した応答メッセージに基づいて各ネットワーク機器までのホップ数を判定する手段とを含むことを特徴とする請求項5に記載のネットワーク設定復元システム。
【請求項7】
オペレーションサーバからのホップ数が多いネットワーク機器から順に早い切戻順序が割り当てられることを特徴とする請求項5または6に記載のネットワーク設定復元システム。
【請求項8】
前記ネットワーク機器がルータまたはスイッチであることを特徴とする請求項5ないし7のいずれかに記載のネットワーク設定復元システム。
【請求項1】
自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、保存要求に応答してオペレーションサーバに保存し、その後の切戻要求で指定された既登録の設定ファイルを各ネットワーク機器へ順次に切り戻してネットワーク設定を復元するネットワーク設定復元方法において、
前記オペレーションサーバが、
各ネットワーク機器までのホップ数を検知する手順と、
前記ホップ数が多いネットワーク機器から優先的にネットワーク設定が切り戻されるように切戻順序を決定する手順とを含むことを特徴とするネットワーク設定復元方法。
【請求項2】
前記各ネットワーク機器までのホップ数を検知する手順は、
オペレーションサーバが、
各ネットワーク機器に経路調査メッセージを順次に送信する手順と、
送信した経路調査メッセージごとに応答メッセージを受信する手順と、
受信した応答メッセージに基づいて各ネットワーク機器までのホップ数を判定する手順とを含むことを特徴とする請求項1に記載のネットワーク設定復元方法。
【請求項3】
オペレーションサーバからのホップ数が多いネットワーク機器から順に早い切戻順序が割り当てられることを特徴とする請求項1または2に記載のネットワーク設定復元方法。
【請求項4】
前記ネットワーク機器がルータまたはスイッチであることを特徴とする請求項1ないし3のいずれかに記載のネットワーク設定復元方法。
【請求項5】
自身の経路情報に基づいて動作し、ネットワークを構成するネットワーク機器の設定ファイルを、保存要求に応答してオペレーションサーバに保存し、その後の切戻要求で指定された既登録の設定ファイルを各ネットワーク機器へ順次に切り戻してネットワーク設定を復元するネットワーク設定復元システムにおいて、
前記オペレーションサーバが、
各ネットワーク機器までのホップ数を検知する手段と、
前記ホップ数が多いネットワーク機器から優先的にネットワーク設定が切り戻されるように切戻順序を決定する手段とを含むことを特徴とするネットワーク設定復元システム。
【請求項6】
前記各ネットワーク機器までのホップ数を検知する手段が、
各ネットワーク機器に経路調査メッセージを順次に送信する手段と、
送信した経路調査メッセージごとに応答メッセージを受信する手段と、
受信した応答メッセージに基づいて各ネットワーク機器までのホップ数を判定する手段とを含むことを特徴とする請求項5に記載のネットワーク設定復元システム。
【請求項7】
オペレーションサーバからのホップ数が多いネットワーク機器から順に早い切戻順序が割り当てられることを特徴とする請求項5または6に記載のネットワーク設定復元システム。
【請求項8】
前記ネットワーク機器がルータまたはスイッチであることを特徴とする請求項5ないし7のいずれかに記載のネットワーク設定復元システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【公開番号】特開2009−17146(P2009−17146A)
【公開日】平成21年1月22日(2009.1.22)
【国際特許分類】
【出願番号】特願2007−175671(P2007−175671)
【出願日】平成19年7月3日(2007.7.3)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】
【公開日】平成21年1月22日(2009.1.22)
【国際特許分類】
【出願日】平成19年7月3日(2007.7.3)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】
[ Back to top ]