Cisco IOS-XE Operations Program. Shows operational data using restconf and yang

Overview
https://app.travis-ci.com/cober2019/react-ios-xe-ops.svg?branch=main https://img.shields.io/badge/npm-16.14.12-blue https://img.shields.io/badge/Node-stable-blue

XE-Ops

View operational and config data from devices running Cisco IOS-XE software.

NoteS

The build folder is the latest build. All other files are for developement and are updated frequently. They've not been tested for prod build yet.

Tested Models

-ASR 1000 Series
-ISR 4000 Series
-CSR 1000v
-CAT 3000 Series

Available Views:

Interfaces:

-Layer Two and Layer Three
-Arps
-QoS

Neighbors:

-DP Neighbors
-OSPF Neighbors
-BGP Neighbors

Routing:

-OSPF
-BGP
-Routing Table (Flapping Route Checker)

IP SLAs:

-Check current IP SLA statuses

Environment:

-CPU/Memory statuse
-Sensor statuses
-SFP statuses
-POE port statuses

DMVPN:

-Tunnel statuses
-Peer statuses
-Public IP resolution
-DMVPN topology visualization

LayerTwo:

-Vlans
-Trunks
-Spanning-tree

Rest Viewer:

-View all device data in JSON format

Snapshots:


https://github.com/cober2019/react-ios-xe-ops/blob/main/images/xeopsprodinterfaces.PNG

https://github.com/cober2019/react-ios-xe-ops/blob/main/images/xeopsprod-env.PNG

https://github.com/cober2019/react-ios-xe-ops/blob/main/images/xeoprestprod.PNG

https://github.com/cober2019/react-ios-xe-ops/blob/main/images/xeopslaprod.PNG

https://github.com/cober2019/react-ios-xe-ops/blob/main/images/xeopsloading.PNG

Notes:
-Switches are slower to poll than routers
-Some YANG models may not be compatible with your device. If so, data is collected via Netmiko
-Views are conditionally rendered which means so some views wont display.
-Sometimes CPU data for CSRs will error. If so, it will be represented with 'Err'
-Page data will be cached for 5 minutes per device. This means if you switch pages or log into another device, the page will load what was polled last for that device/page. Beats a loading page!
-Login timeout set to 30 seconds
-Collecting RIB tables can take some time. Be patient

Requirements:

Check to see if your device is compatible to use this program. Use the following instructions - https://developer.cisco.com/docs/ios-xe/#!enabling-restconf-on-ios-xe

Install:Linux

The following dependencies are required. If you don't have the following dependencies installed, execute: "sudo bash install_dependencies.sh"
Once Dependecies Are Installed:

Note: If you're using windows 10, you can use built-in Ubuntu

1. Clone this repo to you server and navigate to the /react-ios-xe-ops (root) directory.
2. Execute command "sudo bash init_app_routes" which will take care of everything below. When running the script, SSL certs will be created for app to api security. TLSv1.3 for transport.

If you want to manualy install then continue with these steps:

2. Located package.json and execute code "npm install package.json"
3. Once packages are installed, execute code "node server.js&"
4. Navigate to 127.0.0.1:3000
5. Create a virtual environment by executing "python3.8 -m venv ios-xe-ops-env" and activate the env using "source ios-xe-ops-env/bin/activate"
6. Install python modules using pip "pip install -r requirements.txt"
7. Start the API using "Python3 api_routes.py"
8. Go back to the web app and login to your device
This is an implementation of PEP 557, Data Classes.

This is an implementation of PEP 557, Data Classes. It is a backport for Python 3.6. Because dataclasses will be included in Python 3.7, any discussio

Eric V. Smith 561 Dec 06, 2022
Functional interface for concurrent futures, including asynchronous I/O.

Futured provides a consistent interface for concurrent functional programming in Python. It wraps any callable to return a concurrent.futures.Future,

A. Coady 11 Nov 27, 2022
Простенький ботик для троллинга с интерфейсом #Yakima_Visus

Bot-Trolling-Vk Простенький ботик для троллинга с интерфейсом #Yakima_Visus Установка pip install vk_api pip install requests если там еще чото будет

Yakima Visus 4 Oct 11, 2022
Trusted sessions for falcon using itsdangerous.

Falcon signed sessions This project allows you to easily add trusted cookies to falcon, it works by storing a signed cookie in the client's browser us

Ward 1 Feb 08, 2022
Just a little benchmark for scrapper PC's

PopMark Just a little benchmark for scrapper PC's This benchmark is for old computer that dont support other benchmark because of support. Like lack o

Garry 1 Nov 24, 2021
Minutaria is a basic educational Python timer used to learn python and software testing libraries.

minutaria minutaria is a basic educational Python timer. The project is educational, it aims to teach myself programming, python programming, python's

1 Jul 16, 2021
A simple script for generating screenshots with Vapoursynth

Vapoursynth-Screenshots A simple script for generating screenshots with Vapoursynth. About I'm lazy, and hate changing variables for each batch of scr

7 Dec 31, 2022
A simple python project which control paint brush in microsoft paint app

Paint Buddy In Python A simple python project which control paint brush in micro

Ordinary Pythoneer 1 Dec 27, 2021
Neogex is a human readable parser standard, being implemented in Python

Neogex (New Expressions) Parsing Standard Much like Regex, Neogex allows for string parsing and validation based on a set of requirements. Unlike Rege

Seamus Donnellan 1 Dec 17, 2021
A basic tool to generate Hydrogen drum machine kits.

Generate Hydrogen Kit A basic tool to generate drumkit.xml files for Hydrogen drum machine. Saves a bit of time when making kits. Supply it with a nam

Luna Langton 2 Nov 28, 2021
This code extracts line width of phonons from specular energy density (SED) calculated with LAMMPS.

This code extracts line width of phonons from specular energy density (SED) calculated with LAMMPS.

Masato Ohnishi 3 Jun 15, 2022
A patch and keygen tools for typora.

A patch and keygen tools for typora.

Mason Shi 1.4k Apr 12, 2022
pyinsim is a InSim module for the Python programming language.

PYINSIM pyinsim is a InSim module for the Python programming language. It creates socket connection with LFS and provides many classes, functions and

2 May 12, 2022
Tiny demo site for exploring SameSite=Lax

samesite-lax-demo Background on my blog: Exploring the SameSite cookie attribute for preventing CSRF This repo holds some tools for exploring the impl

Simon Willison 6 Nov 10, 2021
Simple cash register system made with guizero

Eje-Casher なにこれ guizeroで作った簡易レジシステムです。実際にコミケで使う予定です。 これを誰かがそのまま使うかどうかというよりは、guiz

Akira Ouchi 4 Nov 07, 2022
Make your functions return something meaningful, typed, and safe!

Make your functions return something meaningful, typed, and safe! Features Brings functional programming to Python land Provides a bunch of primitives

dry-python 2.5k Jan 03, 2023
Pacman - A suite of tools for manipulating debian packages

Overview Repository is a suite of tools for manipulating debian packages. At a h

Pardis Pashakhanloo 1 Feb 24, 2022
A notebook explaining the principle of adversarial attacks and their defences

TL;DR: A notebook explaining the principle of adversarial attacks and their defences Abstract: Deep neural networks models have been wildly successful

1 Jan 22, 2022
Python programs, usually short, of considerable difficulty, to perfect particular skills.

Peter Norvig MIT License 2015-2020 pytudes "An étude (a French word meaning study) is an instrumental musical composition, usually short, of considera

Peter Norvig 19.9k Dec 27, 2022
Wordler - A program to support you to solve the wordle puzzles

solve wordle (https://www.powerlanguage.co.uk/wordle) A program to support you t

Viktor Martinović 2 Jan 17, 2022