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).

Requirement

  • Network Sketcher supports cross-platform. Works with Windows, Mac OS, and Linux.
  • Python ver 3.x
  • Software that can edit .pptx and .xlsx files
    • Microsoft Powerpoint and Excel are best
    • Google Slides and Spreadsheets import/export functionality is available. Excel functions display will show an error, but it works fine.
    • Libre Office and Softmaker office cannot be used.

Installation

git clone https://github.com/cisco-open/network-sketcher/
cd network-sketcher
python -m pip install -r requirements.txt
python network_sketcher.py

Installation Supplement

  • Alternative to “python -m pip install -r requirements.txt”
python -m pip install tkinterdnd2
python -m pip install tkinterdnd2-universal
python -m pip install openpyxl
python -m pip install python-pptx
python -m pip install ipaddress
python -m pip install numpy
python -m pip install pyyaml
python -m pip install ciscoconfparse
  • Mac OS requires the following additional installation.
brew install tcl-tk
  • Linux requires the following additional installation.
sudo apt-get install python3-tk

User Guide

Lang Link
English Link
日本語 Link

How to create 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

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

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