Skip to content

Network Skecher makes network design and configuration management faster, more accurate, and easier. Simply create your first rough sketch and it will automatically generate L1L2L3 network diagrams and management tables.

License

Notifications You must be signed in to change notification settings

cisco-open/network-sketcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Network Sketcher

Network Skecher makes network design and configuration management faster, more accurate, and easier. Simply create your first rough sketch and it will automatically generate L1L2L3 network diagrams and management tables. Network components are integrated into one master file, so when you update the management table (device file), all related network diagrams and management tables are automatically updated as well. image

DEMO

demo_video_NS2.0_free2.mp4

New Features

Limitations

  • IPv4 only. IPv6 is not supported.
  • Importing CML yaml files is only supported in L1 and L3(IP addresses of physical interfaces of ios, asa, iosxr, and csr1k).
  • VPN diagrams are only supported for Layer 1 and not reflected in Layer 2 and Layer 3 diagrams.

Requirement

  • Network Sketcher supports cross-platform. Works with Windows, Mac OS, and Linux.
  • Python ver 3.x
  • openpyxl ver 3.1.3 or higher

Pre-Installation

  • Required
pip install tkinterdnd2
pip install tkinterdnd2-universal
pip install openpyxl
pip install python-pptx
pip install ipaddress
pip install numpy
pip install pyyaml
pip install ciscoconfparse

or

pip install -r requirements.txt
  • Mac OS requires the following additional installation.
brew install tcl-tk
  • Linux requires the following additional installation.
sudo apt-get install python3-tk

Usage

git clone https://github.com/cisco-open/network-sketcher/
cd network-sketcher
python network_sketcher.py

SAMPLE

Input ppt file (rough sketch)

image

Sample-rough-sketch.pptx

Output

Device table(Excel)

image

DEVICE.Sample.figure5.xlsx

L1 figure(PPT)

image

L1_DIAGRAM.AllAreasTag_Sample.figure5.pptx

L2 figure(PPT)

image

L2_DIAGRAM.PerArea_Sample.figure5.pptx

L3 figure(PPT)

image

L3_DIAGRAM.PerArea_Sample.figure5.pptx

Master file(Excel)

MASTER.Sample.figure5.xlsx

User Guide

Lang Link
English Link
日本語 Link

Note

  • How to make the exe file for Windows using pyinstaller
pyinstaller.exe [file path]/network_sketcher.py --onefile --collect-data tkinterdnd2 --noconsole --additional-hooks-dir  [file path] --clean

Author

  • Yusuke Ogawa
  • CCIE# 17583
  • Security Architect @ Cisco

License

SPDX-License-Identifier: Apache-2.0

Copyright 2023 Cisco Systems, Inc. and its affiliates

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

Network Skecher makes network design and configuration management faster, more accurate, and easier. Simply create your first rough sketch and it will automatically generate L1L2L3 network diagrams and management tables.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages