ネットワーク構成図作成ツール「Network Sketcher」を試してみる

2024/05/21 What's Up, ネットワーク, 技術系 投稿者:

ネットワークの管理・保守において、ネットワーク構成図は非常に重要です。
しかし、ネットワーク構成図は人によって描き方が結構違っていてセンスが求められます。
また、視覚的な構成図のほかに機器管理表も必要ですが、いくつもの図や表を管理していくのは負担になります。
なにか良い方法がないかなと思っていたところ、シスコ製のネットワーク構成図作成ツール「Network Sketcher」というものを見つけたので試してみることにしました。

Network Sketcherについて

Network Sketcherは、PowerPointで作成したラフスケッチから下記の構成情報を自動生成するツールで、Apache License 2.0で使用できます。

  • マスターファイル(マスターデータ)
    全ての大元になるファイルです。
    マスターファイルを基にデバイスファイル、ネットワーク構成図が生成できます。
    マスターファイルを直接編集することはありません。

  • デバイスファイル(管理テーブル)
    機器のポートリスト、IPリストなどを含むファイルです。
    マスターファイルから生成されますが、こちらの変更をマスターファイルに反映できます。
    基本的に直接編集するのはこのファイルです。

  • ネットワーク構成図(L1構成図・L2構成図・L3構成図)
    それぞれ次のようになっています。
    L1構成図:物理構成図
    L2構成図:論理構成図(物理構成+VLAN)
    L3構成図:論理構成図(IPアドレス)
    機器の追加・結線の変更などの場合、L1構成図を変更してマスターファイルに反映させられます。
    ※L2構成図とL3構成図を変更してマスターファイルへの反映は不可。

最初だけPowerPointでシンプルな図を作成した後は、生成されたデバイスファイルを更新することで、マスターファイル・ネットワーク構成図の方にも変更を反映することができます。
また、機器や結線の追加・削除の場合はネットワーク構成図(L1構成図)の方を更新することで、マスターファイル・デバイスファイルに変更を反映させられます。このため、ネットワーク構成情報の管理を集約させることができます。
この辺りの基本的な使用法やツールのコンセプトなど、ユーザガイド(日本語)が用意されているためそちらを参照してください。

環境構築

Network SketcherはPythonで書かれており、WindowsまたはMac OSまたはLinuxで使用することができます。
今回はWindows 10のPCにPythonをインストールして使用します。
Network Scketcherのバージョンは2.2.0です。
なお、最新版Python(執筆時点で3.12.3)ではデバイスファイルの作成がうまくいかなかったので、3.9.13をインストールします。
また、GitHubの要件に沿って下記のように追加パッケージをインストールします。
※pythonのパスが通っている前提です。

これでNetwork Sketcherを使用する準備が整いました。
ソースコードをダウンロードしたら、解凍したフォルダにある「network_sketcher.py」を実行します。
下記のようにNetwork Sketcherが起動すればOKです。

ネットワーク構成図の作成

では実際にNetwork Sketcherを使ってみます。
なお、細かい作業内容(デバイスファイルの設定など)は長くなってしまうので省きますが、ユーザガイドに沿って設定します。
たとえば、次のようなネットワーク構成があるとします。

ネットワーク例

このネットワークではルータでVLAN1とVLAN2に、VLAN IDでネットワークを分けています。
また、無線AP自体はVLAN1のIPアドレスを持っていますが、無線APはSSIDを複数持っていて、SSID1がVLAN1に、SSID2がVLAN2に接続されています。
これを基に次のようなラフスケッチを作成してNetwork Sketcherでマスターファイルとデバイスファイルを生成します。

ラフスケッチ(ネットワーク構成図.pptx)

ラフスケッチからマスターファイルとデバイスファイルを生成

この段階でネットワーク構成図を生成してみると次のようになります。

ここからデバイスファイルの更新・マスターファイルの更新などをしていくことで、次のような構成図を作ることができました。

更新後L2構成図

更新後L3構成図

※L1構成図は管理テーブル更新前後で変更なし

Network Sketcherを使ってみて

実際にNetwork Sketcherを使ってみた感じ、当初思っていた「ネットワーク構成図の作成ツール」というよりは「ネットワーク構成図生成機能のついた機器管理表作成ツール」という感じを受けました。
ユーザガイドにあったコンセプト通りといえばそうですが、とくにPowerPointのラフスケッチからExcelで管理表のひな型が一発で作成できるのが大きいです。

デバイスファイル例

また、デバイスファイルなどを更新してマスターファイルに同期させるとき、自動で同期前のマスターファイルのバックアップを作成してくれるのが、地味ですがとても助かります。

ツールから生成した構成図については、人が見て見やすいかどうかは正直微妙なところがある気がしますが、形式がPowerPointなので図形の位置などを多少手動で調整すれば良さそうです。最悪、図を壊してしまっても、マスターファイルさえあればまた生成できます。
軽くいじっただけなのでまだ全く使いこなせていないと思いますが、個人的には結構面白いツールだなと思います。

まとめ

Network Skcetcherを試してみましたが、うまく使いこなすことができればなかなか便利そうです。
常にこれを使って構成図と管理表を作成するようにしていけば、形式も統一できて作成者による差異も小さくできるかもしれません。
ただ、最初のラフスケッチ次第なところがあると思うので、ラフスケッチの作成センスはどうしても必要そうです。
ほかにも面白そうなツールを発見したらまた試してみたいと思います。

カレンダー

     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
1234567
891011121314
15161718192021
22232425262728
2930     
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
   1234
567891011
12131415161718
19202122232425
26272829   
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
     12
3456789
10111213141516
17181920212223
24252627282930
31      
   1234
567891011
12131415161718
19202122232425
2627282930  
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
  12345
6789101112
13141516171819
20212223242526
2728     
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
     12
3456789
10111213141516
17181920212223
24252627282930
31      
   1234
567891011
12131415161718
19202122232425
2627282930  
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
1234567
891011121314
15161718192021
22232425262728
2930     
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
     12
3456789
10111213141516
17181920212223
24252627282930
31      
   1234
567891011
12131415161718
19202122232425
2627282930  
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
1234567
891011121314
15161718192021
22232425262728
       
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
     12
3456789
10111213141516
17181920212223
24252627282930
31      
1234567
891011121314
15161718192021
22232425262728
2930     
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
     12
3456789
10111213141516
17181920212223
242526272829 
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
1234567
891011121314
15161718192021
22232425262728
2930     
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
    123
45678910
11121314151617
18192021222324
25262728   
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
     12
3456789
10111213141516
17181920212223
24252627282930
31      
   1234
567891011
12131415161718
19202122232425
2627282930  
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
   1234
567891011
12131415161718
19202122232425
262728    
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
     12
3456789
10111213141516
17181920212223
24252627282930
31      
   1234
567891011
12131415161718
19202122232425
2627282930  
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728     
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
1234567
891011121314
15161718192021
22232425262728
29      
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
  12345
6789101112
13141516171819
20212223242526
27282930   
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
      1
2345678
9101112131415
16171819202122
232425262728 
       
   1234
567891011
12131415161718
19202122232425
262728293031 
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
     12
3456789
10111213141516
17181920212223
24252627282930
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
1234567
891011121314
15161718192021
22232425262728
2930     
       
    123
45678910
11121314151617
18192021222324
25262728293031
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
 123456
78910111213
14151617181920
21222324252627
282930    
       
     12
3456789
10111213141516
17181920212223
2425262728  
       
  12345
6789101112
13141516171819
20212223242526
2728293031  
       
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
    123
45678910
11121314151617
18192021222324
252627282930 
       
 123456
78910111213
14151617181920
21222324252627
28293031   
       
      1
2345678
9101112131415
16171819202122
23242526272829
30      
   1234
567891011
12131415161718
19202122232425
262728293031 
       
1234567
891011121314
15161718192021
22232425262728
293031    
       
U・Iターン転職しませんか?
群馬データセンター
群馬の法人ITサポートサービス Wide Net[ワイドネット]
Wide Netのクラウドバックアップ
クラウド型ファイル共有サービスRushDrive
ワイドオフィス
ネディアのSDGsへの取り組み