Banner

Python for Network Automation

Live Classroom
Duration: 5 days
Live Virtual Classroom
Duration: 5 days
Pattern figure

Overview

This course helps participants sharpen their networking skill set by learning to script solutions to tedious and complex tasks. During the course, participants will learn how to use Python to interact with APIs, opening Telnet and SSH sessions, work with files and popular data structures, automate filling out web forms and how to interact with switches and routers across the most popular network vendors.

The course is a combination of lectures, demonstrations and hands-on labs. Participants are invited to share their own relevant Python and Ansible scripts with the instructor to ensure class subjects are as relevant as possible.

What You'll Learn

  • Automate front end interfaces
  • Interact with APIs
  • Open Telnet and SSH sessions
  • Read and write data out of popular file types (including Excel)
  • Transform data between popular data structures like JSON and YAML
  • Interact with switches and routers across most popular network vendors using multiple Python libraries

Curriculum

  • Version Controlling Code
  • Up and running with Python (installing on various platforms)
  • Lists
  • Dictionaries
  • File Input and Output
  • Functions
  • Methods
  • Review of the Standard Library
  • Using pip and pypi.org

  • JSON
    • Reading from files
    • Reading from API
  • YAML
    • Reading from files
  • CSV
    • Reading from files
  • Excel
    • Using pyexcel library
    • Using pandas library

  • RESTful APIs decoded
  • Reading attachments
  • API keying
  • Passing credentials securely
  • Standard Library Solution
  • 3rd party library solutions

  • SMTP
  • Extended SMTP
  • Automating Email solutions
  • Setting headers and creating a body
  • Attachments
  • Google Gmail considerations
  • Microsoft considerations

  • Web Scraping
  • Automating front-ends with code
  • Selenium for Automation
  • Completing webforms
  • Filling in data with data from open files
  • How to select ‘buttons’
  • How to make ‘clicks’

  • RFC 854 – Telnet Protocol
  • Standard Library Solution

  • Standard Library Solution
  • Paramiko
    • SSH Agents
    • Key exchange and authorization
    • Securing dealing with passwords
    • Configuration
    • SFTP
  • Passing commands and capturing responses
  • Parsing remote logs

  • Netmiko
  • Push / Pull Configuration
  • Retrieve information about devices
  • Manage the devices configuration
  • Connecting and Running a Command on a Networking Device
  • Enable & Global Config Mode
  • Configure a Networking Device from a File
  • Configuration Backup using Netmiko
  • VLAN & VXLAN management
  • BGP & OSPF Management
  • Solutions for HSRP, VRRP, and GLBP

  • Installation
  • Tutorials
  • Validating deployments
  • Supported Devices
  • Command Line Tool
  • NetworkDriver
  • YANG
  • napalm-logs
  • Integrations

  • Wireshark
  • TCPDump
  • Decoding network captures with Python
  • *.pcap files
  • *.pcap-ng files
  • Parsing network captures
  • Regular Expression Library

  • Multiprocessing and Multithreading
  • Examples of running in parallel
  • Cost and Benefit Considerations
  • Secure hashes and digests
  • MD5, SHA, and OpenSSL Options
  • Encrypting content
  • Considerations for credentials
  • Securely passing input

  • Multiprocessing and Multithreading
  • Examples of running in parallel
  • Cost and Benefit Considerations
  • Secure hashes and digests
  • MD5, SHA, and OpenSSL Options
  • Encrypting content
  • Considerations for credentials
  • Securely passing input
waves
Ripple wave

Who should attend

The course is highly recommended for:

  • Network engineers
  • Network architects
  • System administrators
  • DevOps engineers
  • Cisco certified professionals (CCNA, CCNP, CCIE)
  • Developers interested in network programmability with Python

Prerequisites

Participants need to have keyboard proficiency and some basic understanding of network concepts. Participants would find it benefit from having prior exposure to Python or any other scripting experience.

Interested in this Course?

    Ready to recode your DNA for GenAI?
    Discover how Cognixia can help.

    Get in Touch
    Pattern figure
    Ripple wave