ネットワークのお仕事をしていると、事実上業界標準であるCisco Systems社の
製品を扱う機会が必然的に多くなるのですが、このCisco社のL3・L2スイッチ
であるCatalystシリーズは、
コンフィグ情報だけでは、(機器障害時に)元の状態に戻せないことがある
という、いやらしい運用上の欠点があります。
正確にいうとコンフィグ情報があれば、TFTPでstartup-configを上書きして
reloadかければ元に戻ることも多いですし、万が一0から再設定する場合でも、
vlan定義やインタフェース定義等を順番に設定することで戻せはしますが、
重要な機器がハード障害を起こして通信が止まった場合などは、
そんな悠長な復旧方法はやってられません。
現実には「(CEの)誰でも・即時に・確実に」戻せる体制にすることが求められます。
それで実際にCatalystを即時完全復旧させるためには、事前に
・コンフィグ (設定情報)
・vlan.dat (VLANのデータベースファイル)
を取得しておき、機器交換後にこのデータをリストアする必要があります。
そのうちコンフィグ情報(startup-configやrunning-config)については、
設定変更後に外部保存しておくのが一般的ですが、vlan.datについては
TFTP等で吸い出さないと取得できません。
このエントリでは、盲点になっているvlan.datの取得方法について紹介します。
※ リカバリ方法については、こちらのエントリを参照
参考技術情報(Cisco社):
Cisco IOS ソフトウェアが稼働している Cisco Catalyst スイッチでの vlan.dat の管理
1. 全体的な手順・用意するもの
準備1. TFTPサーバ
・Catalystと通信が出来るTFTPサーバが必要です。
・通常は、作業用端末に3CDaemon(後述)等のTFTPサーバ環境を用意します。
準備2. Catalystを操作する環境
・telnetもしくはコンソールログインする環境が必要です。
・TFTPサーバを兼ねた作業用端末をLANケーブルでネットワークに接続し、
telnet操作することがよくあるパターンかと思われます。
★ 全体的な手順 (操作端末=TFTPサーバと仮定します)
(1) vlan.datを取りたいCatalystにtelnetログインし、enableする。
(2) vlan.datの格納位置を確認する。
(3) copy [格納位置]/vlan.dat tftp: でTFTPサーバにPUTする。
(4) TFTPサーバに届いたvlan.datを別の場所に保管する。
TFTPサーバ(3CDaemon)の設定及び、Catalystログイン後の操作手順の詳細を
続けて説明します。
2. TFTPサーバ(3CDaemon)の設定について
※ 2011.7.16 一部追記
下記の3CDaemonのページは、作成元の3COM社がHP社に
合併された関係で、なくなちゃったみたいです(合掌)。
TFTPサーバは、3CDaemonというフリーソフトがお手軽です。
下記サイトからダウンロードを行い、PCにインストールします。
・本サイト: 3CDaemon (Windows 32bit版)のページ
・2010/11/20時点の最新版への直リンク: 3CDaemon ver2.0 rev10 (08/09/2006)
インストール方法は、ダウンロードしたZIPファイルを展開して、
中のsetup.exeを叩いてインストーラーを起動するだけです。

3CDaemonの起動画面
3CDaemonはTFTPサーバ機能に加え、TFTPクライアント・syslogサーバ・
FTPサーバ機能も有します。
TFTPサーバ機能を起動・停止するには左ペインの「TFTP Server」(灰色ボタン)
を押して、上から2番目の「GO」または「STOP」ボタンを押します。
デフォルトでは3CDaemon起動時にTFTPサーバ機能も起動します(設定変更可)。

3CDaemonのTFTPサーバ機能の設定画面
TFTPサーバ機能の設定項目は、デフォルトのままでも使用できますが、
個人的に次の2個所を変更することをお勧めします。
・「Upload/Download directory:」欄には、後でCatalystからvlan.dat
ファイルがUploadされてくるフォルダになります。
デフォルトでは環境変数TEMPの場所になっているので、判りやすい
フォルダに変更することが望ましいです。
個人的にはC:¥ftpのようなドライブ直下の英数字フォルダがお勧めです。
・その下の「Per-packet timeout in seconds (2-15):」の欄は、
デフォルトで5秒が設定されています。
普通はデフォルト値でも問題ないと思いますが、TFTPサーバと操作端末が
異なる場合は、1発目の通信に時間がかかる可能性があるので、大きめの
値を入れておいた方がよいかもしれません。
3. Catalyst側からの転送操作
TFTPサーバ側の準備が終わったら、続いてCatalyst側の操作を行います。
(1) Catalystにtelnetログインする
telnetなりシリアルコンソールなりでログインします。
(2) enableして管理者権限へ移行する
enableパスワードは押さえておきましょう。
(3) コンフィグを保存していない場合は、
copy running-config startup-config で保存する。
初出時「vlan.datはコンフィグ保存時に作成/更新されます」と記載
したのですが、実際には設定モードで「vlan 20」のようなコマンドで
VLANを作成した直後にvlan.datは更新されるみたいです(汗)。
ただし、コンフィグとvlan.datはセットで保存する必要がありますので
コンフィグ保存も忘れないようにしましょう。
(4) vlan.datのファイルの場所を確認する
vlan.datが作成される場所は機種によって異なります。
Catalyst6000シリーズ = const_nvram:/vlan.dat
Catalyst4000シリーズ = cat4000_flash:/vlan.dat
Catalyst3000シリーズ = flash:/vlan.dat
Catalyst2000シリーズ = flash:/vlan.dat
ファイルの確認を行うには次のコマンドを実行します。
Catalyst6000シリーズ = dir const_nvram:
Catalyst4000シリーズ = dir cat4000_flash:
Catalyst3000シリーズ = dir flash:
Catalyst2000シリーズ = dir flash:
全機種共通でdir all-filesystemsコマンドで全ファイルを表示し、
その結果から確認することも出来ます。(その代わり不必要な結果も表示
されるので、結果からvlan.datの個所のみを抽出する必要があります)
Catalyst6506Eでのdir const_nvram:の実行例:
(5) vlan.datをTFTPで転送する
vlan.datが存在することが確認できたら、このファイルをTFTPサーバに
転送します。コマンドは次の通りです:
Catalyst6000シリーズ = copy const_nvram:/vlan.dat tftp:
Catalyst4000シリーズ = copy cat4000_flash:/vlan.dat tftp:
Catalyst3000シリーズ = copy flash:/vlan.dat tftp:
Catalyst2000シリーズ = copy flash:/vlan.dat tftp:
<補足>
全機種ともvlan.datはドライブ直下にあるので、
copy flash:vlan.dat tftp:
のようにスラッシュ無しでcopyコマンドを打っても実行できます。
上記のcopyコマンド実行すると、いずれの場合も次の内容を聞かれるので、
適切な値を入力し、Enterを押します。(※末尾の補足も参照)
Address or name of remote host []?
→ TFTPサーバのIPアドレスを入力します(必須)
Destination filename [vlan.dat]?
→ TFTPサーバに保存するファイル名を入力します。
vlan.datのままでよければ、そのままEnterを押します。
Catalyst6506EでのTFTP転送の実行例:
(6) 取り込んだvlan.datを確認・保管する
copyコマンドが正常終了したら 3CDaemonのUpload/Download directory:で
指定したフォルダにvlan.datファイルができていることを確認します。
そのファイルをrunning-configと一緒に保管します。
(機器ごとにフォルダを作っておくことをお勧めします)
なお、Uploadフォルダにvlan.datが残った状態で別の機器からvlan.datを
Uploadしようとすると、エラーになるのでご注意下さい。
vlan.datの重複登録エラー例:
vlan.datの転送作業は以上で終了となります。
実際にCatalystの運用を行う場合は、最低限
・最終コンフィグ
・vlan.dat
・今動いているバージョンのIOS
のデータファイルは、常に取り出せるようにしておきましょう。
スタートアップコンフィグやランニングコンフィグはvlan.datと同様に、
copy startup-config tftp:
copy running-config tftp:
で、TFTPサーバにコンフィグの生データを持ってくることが出来るので、
通常はvlan.datとセットで取得すると便利かと思われます。
このコンフィグ情報は(当然のことながら)テキストエディタで閲覧できます。
おまけ. copyコマンド(TFTP)の補足
copyコマンドでスイッチ内のファイルをTFTPサーバに転送する場合、
下記のようなURL表記でTFTPサーバと保存先ファイル名を先に指定することで、
対話的にTFTPサーバのIPアドレスや保存先ファイル名を入力しなくても
実行可能となります。
【文法】
copy [元ファイル] tftp://[TFTPサーバのIP]/[保存先ファイル名]
例: running-configをIPアドレスが192.168.1.1のTFTPサーバに
「cat3750-confg.log」というファイル名で転送する場合
製品を扱う機会が必然的に多くなるのですが、このCisco社のL3・L2スイッチ
であるCatalystシリーズは、
コンフィグ情報だけでは、(機器障害時に)元の状態に戻せないことがある
という、いやらしい運用上の欠点があります。
正確にいうとコンフィグ情報があれば、TFTPでstartup-configを上書きして
reloadかければ元に戻ることも多いですし、万が一0から再設定する場合でも、
vlan定義やインタフェース定義等を順番に設定することで戻せはしますが、
重要な機器がハード障害を起こして通信が止まった場合などは、
そんな悠長な復旧方法はやってられません。
現実には「(CEの)誰でも・即時に・確実に」戻せる体制にすることが求められます。
それで実際にCatalystを即時完全復旧させるためには、事前に
・コンフィグ (設定情報)
・vlan.dat (VLANのデータベースファイル)
を取得しておき、機器交換後にこのデータをリストアする必要があります。
そのうちコンフィグ情報(startup-configやrunning-config)については、
設定変更後に外部保存しておくのが一般的ですが、vlan.datについては
TFTP等で吸い出さないと取得できません。
このエントリでは、盲点になっているvlan.datの取得方法について紹介します。
※ リカバリ方法については、こちらのエントリを参照
参考技術情報(Cisco社):
Cisco IOS ソフトウェアが稼働している Cisco Catalyst スイッチでの vlan.dat の管理
1. 全体的な手順・用意するもの
準備1. TFTPサーバ
・Catalystと通信が出来るTFTPサーバが必要です。
・通常は、作業用端末に3CDaemon(後述)等のTFTPサーバ環境を用意します。
準備2. Catalystを操作する環境
・telnetもしくはコンソールログインする環境が必要です。
・TFTPサーバを兼ねた作業用端末をLANケーブルでネットワークに接続し、
telnet操作することがよくあるパターンかと思われます。
★ 全体的な手順 (操作端末=TFTPサーバと仮定します)
(1) vlan.datを取りたいCatalystにtelnetログインし、enableする。
(2) vlan.datの格納位置を確認する。
(3) copy [格納位置]/vlan.dat tftp: でTFTPサーバにPUTする。
(4) TFTPサーバに届いたvlan.datを別の場所に保管する。
TFTPサーバ(3CDaemon)の設定及び、Catalystログイン後の操作手順の詳細を
続けて説明します。
2. TFTPサーバ(3CDaemon)の設定について
※ 2011.7.16 一部追記
下記の3CDaemonのページは、作成元の3COM社がHP社に
合併された関係で、なくなちゃったみたいです(合掌)。
TFTPサーバは、3CDaemonというフリーソフトがお手軽です。
下記サイトからダウンロードを行い、PCにインストールします。
・本サイト: 3CDaemon (Windows 32bit版)のページ
・2010/11/20時点の最新版への直リンク: 3CDaemon ver2.0 rev10 (08/09/2006)
インストール方法は、ダウンロードしたZIPファイルを展開して、
中のsetup.exeを叩いてインストーラーを起動するだけです。

3CDaemonの起動画面
3CDaemonはTFTPサーバ機能に加え、TFTPクライアント・syslogサーバ・
FTPサーバ機能も有します。
TFTPサーバ機能を起動・停止するには左ペインの「TFTP Server」(灰色ボタン)
を押して、上から2番目の「GO」または「STOP」ボタンを押します。
デフォルトでは3CDaemon起動時にTFTPサーバ機能も起動します(設定変更可)。

3CDaemonのTFTPサーバ機能の設定画面
TFTPサーバ機能の設定項目は、デフォルトのままでも使用できますが、
個人的に次の2個所を変更することをお勧めします。
・「Upload/Download directory:」欄には、後でCatalystからvlan.dat
ファイルがUploadされてくるフォルダになります。
デフォルトでは環境変数TEMPの場所になっているので、判りやすい
フォルダに変更することが望ましいです。
個人的にはC:¥ftpのようなドライブ直下の英数字フォルダがお勧めです。
・その下の「Per-packet timeout in seconds (2-15):」の欄は、
デフォルトで5秒が設定されています。
普通はデフォルト値でも問題ないと思いますが、TFTPサーバと操作端末が
異なる場合は、1発目の通信に時間がかかる可能性があるので、大きめの
値を入れておいた方がよいかもしれません。
3. Catalyst側からの転送操作
TFTPサーバ側の準備が終わったら、続いてCatalyst側の操作を行います。
(1) Catalystにtelnetログインする
telnetなりシリアルコンソールなりでログインします。
(2) enableして管理者権限へ移行する
enableパスワードは押さえておきましょう。
(3) コンフィグを保存していない場合は、
copy running-config startup-config で保存する。
初出時「vlan.datはコンフィグ保存時に作成/更新されます」と記載
したのですが、実際には設定モードで「vlan 20」のようなコマンドで
VLANを作成した直後にvlan.datは更新されるみたいです(汗)。
ただし、コンフィグとvlan.datはセットで保存する必要がありますので
コンフィグ保存も忘れないようにしましょう。
(4) vlan.datのファイルの場所を確認する
vlan.datが作成される場所は機種によって異なります。
Catalyst6000シリーズ = const_nvram:/vlan.dat
Catalyst4000シリーズ = cat4000_flash:/vlan.dat
Catalyst3000シリーズ = flash:/vlan.dat
Catalyst2000シリーズ = flash:/vlan.dat
ファイルの確認を行うには次のコマンドを実行します。
Catalyst6000シリーズ = dir const_nvram:
Catalyst4000シリーズ = dir cat4000_flash:
Catalyst3000シリーズ = dir flash:
Catalyst2000シリーズ = dir flash:
全機種共通でdir all-filesystemsコマンドで全ファイルを表示し、
その結果から確認することも出来ます。(その代わり不必要な結果も表示
されるので、結果からvlan.datの個所のみを抽出する必要があります)
Catalyst6506Eでのdir const_nvram:の実行例:
CAT6506#dir const_nvram: Directory of const_nvram:/ 1 -rw- 1336 <no date> vlan.dat 129004 bytes total (127668 bytes free) |
---|
(5) vlan.datをTFTPで転送する
vlan.datが存在することが確認できたら、このファイルをTFTPサーバに
転送します。コマンドは次の通りです:
Catalyst6000シリーズ = copy const_nvram:/vlan.dat tftp:
Catalyst4000シリーズ = copy cat4000_flash:/vlan.dat tftp:
Catalyst3000シリーズ = copy flash:/vlan.dat tftp:
Catalyst2000シリーズ = copy flash:/vlan.dat tftp:
<補足>
全機種ともvlan.datはドライブ直下にあるので、
copy flash:vlan.dat tftp:
のようにスラッシュ無しでcopyコマンドを打っても実行できます。
上記のcopyコマンド実行すると、いずれの場合も次の内容を聞かれるので、
適切な値を入力し、Enterを押します。(※末尾の補足も参照)
Address or name of remote host []?
→ TFTPサーバのIPアドレスを入力します(必須)
Destination filename [vlan.dat]?
→ TFTPサーバに保存するファイル名を入力します。
vlan.datのままでよければ、そのままEnterを押します。
Catalyst6506EでのTFTP転送の実行例:
CAT6506#copy const_nvram:/vlan.dat tftp: Address or name of remote host []? 192.168.1.50 Destination filename [vlan.dat]? !! 1336 bytes copied in 0.372 secs (3591 bytes/sec) CAT6506# |
---|
(6) 取り込んだvlan.datを確認・保管する
copyコマンドが正常終了したら 3CDaemonのUpload/Download directory:で
指定したフォルダにvlan.datファイルができていることを確認します。
そのファイルをrunning-configと一緒に保管します。
(機器ごとにフォルダを作っておくことをお勧めします)
なお、Uploadフォルダにvlan.datが残った状態で別の機器からvlan.datを
Uploadしようとすると、エラーになるのでご注意下さい。
vlan.datの重複登録エラー例:
CAT2960#copy flash:/vlan.dat tftp: Address or name of remote host []? 192.168.1.50 Destination filename [vlan.dat]? TFTP: error code 2 received - Not allowed to overwrite existing files. %Error opening tftp://192.168.1.50/vlan.dat (Permission denied) CAT2960# |
---|
vlan.datの転送作業は以上で終了となります。
実際にCatalystの運用を行う場合は、最低限
・最終コンフィグ
・vlan.dat
・今動いているバージョンのIOS
のデータファイルは、常に取り出せるようにしておきましょう。
スタートアップコンフィグやランニングコンフィグはvlan.datと同様に、
copy startup-config tftp:
copy running-config tftp:
で、TFTPサーバにコンフィグの生データを持ってくることが出来るので、
通常はvlan.datとセットで取得すると便利かと思われます。
このコンフィグ情報は(当然のことながら)テキストエディタで閲覧できます。
おまけ. copyコマンド(TFTP)の補足
copyコマンドでスイッチ内のファイルをTFTPサーバに転送する場合、
下記のようなURL表記でTFTPサーバと保存先ファイル名を先に指定することで、
対話的にTFTPサーバのIPアドレスや保存先ファイル名を入力しなくても
実行可能となります。
【文法】
copy [元ファイル] tftp://[TFTPサーバのIP]/[保存先ファイル名]
例: running-configをIPアドレスが192.168.1.1のTFTPサーバに
「cat3750-confg.log」というファイル名で転送する場合
CAT3750#copy running-config tftp://192.168.1.1/cat3750-confg.log Address or name of remote host [192.168.1.1]? ←そのままEnter Destination filename [cat3750-confg.log]? ←そのままEnter !! 10244 bytes copied in 8.925 secs (1148 bytes/sec) CAT3750# |
---|
![]() | Pocket詳解 Cisco IOSコマンド辞典松崎 敬秀和システムこのアイテムの詳細を見る |
![]() | 改訂新版 Cisco Catalyst LANスイッチ教科書シスコシステムズ株式会社 LANスイッチワーキンググループインプレスこのアイテムの詳細を見る |
※コメント投稿者のブログIDはブログ作成者のみに通知されます