GNS3でネットワーク技術のトレーニングメニューを作ってみた際に苦戦したこと(vlan database)
これは エーピーコミュニケーションズ Advent Calendar 2019 の22日目の記事です。
先日、 GNS3で所属プロジェクト向けにネットワーク技術のトレーニングメニューを作ってみた(導入編)の日本語版と英語版をMediumに書き、またまた一安心して時間が空いてしまいました。 その間に、所属しているプロジェクト用の次のトレーニングメニューを検証/リリースしていました。 今回はその際に苦戦した事を書こうと思います。AWS SAA英語受験したり、コンテナ技術に興味がありますが、実はネットワークがメインなのです。
ここで話すこと
- 環境
- 課題内容
- vlanが作成できない
- vlan databaseとは
- vlan database configuration modeの設定方法
- 今後の目標
ここで話さないこと
- 案件の実際の構成や機器
- GNS3のインストール方法などについて
- GNS3以外の仮想環境について
- なぜトレーニングメニューを考えたのか(前回記事にて言及済みの為)
- なぜGNS3なのか(同上)
- 現状と課題(同上)
- 準備期間(同上)
- 行った準備(同上)
- 課題作成時のポイント(同上)
環境
- GNS3 Cisco 3600 image
課題内容(大問名のみ。個別の問題、詳細は割愛)
<レベル1.0>
- 1.Ciscoルータ - ホスト名の設定
- 2.各RouterのインターフェースのIPアドレス設定、インターフェースの有効化 / 無効化、実対応への適用
- 3.ping疎通確認(サイズ/回数/フラグメントなどのオプション設定)
- 4.インターフェースのdescription設定 / インターフェイスの状態確認
- 5.各種showコマンド集(ソフトウェア)
- 6.各種showコマンド集(ハードウェア)
- 7.Loopbackアドレス作成およびping疎通確認
レベル1.0イメージ
<レベル1.5>
- 1.acl設定(IP/Port単位/pingの遮断可否など)
- 2.FHRP(First Hop Resolution Protocol)設定(VRRP/HSRP)
- 3.eBGP設定(タイマー設定など)
- 4.iBGP設定(OSPF/再配送/オプション設定などに)
- 5.BGPポリシー分析および設定
レベル1.5イメージ
<レベル2.0>
- 0.環境構築
- 1.LAG設定
- 2.BGP設定
- 3.VRFの設定
- 4.経路情報確認
- 5.各種テーブル/データベース確認
- 6.経路制御(ルーティング追加[集約アドレス/Prefix-list]/各種ポリシー適用)
レベル2.0イメージ vlanが作成できない
「あれ、vlanが作成できない」 レベル2.0の検証作業を行なっていた時のことです。 ここから、本件のトラブルシューティングおよび調査が始まりました。
TEST01(config)#vlan 10 ^ % Invalid input detected at '^' marker.
ヘルプで調べてもvlan configurationモードに入れそうにないです。
POI01(config)#vlan ? accounting VLAN accounting configuration
上記のレベル2.0、0.環境構築を行おうとした所でいきなり詰まりました。 一旦後回しにして次の検証に行こうとしましたが、1.LAG設定でvlan、trunk port設定を入れたかったので調べてみる事にしました。
vlan databaseとは
Ciscoのサイトなどを調べた結果、古いバージョンのイメージでは私が実行した「config-vlan モード」ではなく、「vlan database configurationモード」でvlanが作成できる事がわかりました。 これまで様々なconfigurationモードをCisco機器で操作してきましたが、vlan databaseは意識した事がありませんでした。 私が設定しようとしたvlan 10は、標準範囲VLAN(1~1001)およびVLAN1002~1005はvlan databaseに「vlan.dat ファイル」として格納されます。 それでは、vlan database configurationモードで設定していきます。
vlan database configurationモードでの設定方法
設定例:
configure terminal vlan vlan-id(標準VLAN1~1001で設定) name vlan-name(任意の番号や名前) (apply) exit
上記のapplyコマンドで設定/変更の適用ができますが、exitでvlan databaseモードを抜けるだけで適用されます。
ここからヘルプコマンドなどで確認しながら設定していきます。
TEST01#vlan database TEST01(vlan)#vlan ? <1-1005> ISL VLAN index
標準VLANの指定可能
TEST01(vlan)#vlan 10 VLAN 10 added: Name: VLAN0010
VLAN 10を名前無指定(VLAN0010)で追加
TEST01(vlan)#vlan 10 ? are Maximum number of All Route Explorer hops for this VLAN backupcrf Backup CRF mode of the VLAN bridge Bridging characteristics of the VLAN media Media type of the VLAN mtu VLAN Maximum Transmission Unit name Ascii name of the VLAN parent ID number of the Parent VLAN of FDDI or Token Ring type VLANs ring Ring number of FDDI or Token Ring type VLANs said IEEE 802.10 SAID state Operational state of the VLAN ste Maximum number of Spanning Tree Explorer hops for this VLAN stp Spanning tree characteristics of the VLAN tb-vlan1 ID number of the first translational VLAN for this VLAN (or zero if none) tb-vlan2 ID number of the second translational VLAN for this VLAN (or zero if none) <cr>
vlanのオプション、nameなどを確認
TEST01(vlan)#vlan 20 name test VLAN 20 added: TEST01(vlan)#exit APPLY completed. Exiting.... TEST01#
vlan 20をtestと名付けて追加
TEST01#show vlan % Ambiguous command: "show vlan"
vlanを確認するコマンドが通らない(バージョンに寄るもの)
TEST01#show vlan? vlan-switch vlans
show vlan-switchコマンドが代わりに使える模様
TEST01#show vlan-switch VLAN Name Status Ports ---- -------------------------------- --------- ------------------------------- 1 default active Fa3/0, Fa3/2, Fa3/3, Fa3/4 Fa3/5, Fa3/6, Fa3/7, Fa3/8 Fa3/9, Fa3/10, Fa3/11, Fa3/12 Fa3/13, Fa3/14, Fa3/15 10 VLAN0010 active 20 test active 1002 fddi-default active 1003 token-ring-default active 1004 fddinet-default active 1005 trnet-default active VLAN Type SAID MTU Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2 ---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------ 1 enet 100001 1500 - - - - - 1002 1003 10 enet 100010 1500 - - - - - 0 0 20 enet 100020 1500 - - - - - 0 0 1002 fddi 101002 1500 - - - - - 1 1003 1003 tr 101003 1500 1005 0 - - srb 1 1002 1004 fdnet 101004 1500 - - 1 ibm - 0 0 1005 trnet 101005 1500 - - 1 ibm - 0 0 TEST01#
他のバージョンのshow vlanで確認できるID、名前、インターフェイスなどの項目が確認できました。
以上、簡単な検証ですが忘れ易く意外なハマりどころなので、備忘録としてブログに残させて頂きます。 以下の今後の目標は以前書いたものとほぼ重複しておりますが、若干更新しました。
今後の目標
マルチベンダー環境での検証
今回は手軽にスタートできる事を優先し、Cisco機器のみの環境設定としましたが、 他のベンダー機器を入れたり、メインにした構成も作ろうと企んでいます。
仮想環境での操作を前提としたシミュレーションメニューの作成
運用チームのシミュレーションではインターフェイスやBGPのshutdownなどの操作が実機ではできないので省略していますが、 仮想環境では問題無く試せるので、そうしたメニューの開発もサクサクできればと思います。
Contributor、Maintainerの育成
私がこうして去年の施策をヒントに定常的なメニュー作成を企画、実行しているわけですが、 これも属人的なものではなく、業務改善活動の一部としていきたいと思っています。
問題を作成する人、検証/査閲を行う人を育成し、業務フローに落とし込めていければと考えています。既にレベル1.5をクリアされた運用メンバーもいるので、先が楽しみです。 今後の業務自動化も視野に入れた、業務改善活動をもう一歩進めていきたいと考えています。 私自身もレベル2.0までの問題作成/検証作業でかなり現場の構成とそれを支える技術の理解が進みました。 今後はサーバーの構築や移行も行なっていきたいので、次のブログはその辺の内容になるかと思います。
では、また。
Bye now!!
Yoshiki Fujiwara