Python for Network Automation

This course is driven by demonstration and reinforced by hands-on labs for learning Python for Network Automation. Maximize your networking skill set by learning to script solutions to tedious, complex and oftentimes overwhelming networking tasks. 

    No classes are currenty scheduled for this course.

    Call (919) 283-1653 to get a class scheduled online or in your area!

Reviewing Python Essentials

  • 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

Python and Data translation

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

Python and RESTful APIs

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

Automating SMTP and Extended SMTP (Email)

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

Completing Webforms with Python

  • 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’

Python and Telnet

  • RFC 854 - Telnet Protocol
  • Standard Library Solution

Python and SSH

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

Automating Switches and Routers with Python

  • 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

Automating Networks with Python NAPALM

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

Python and Network Captures

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

Optimizations and Security

  • 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

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, and most importantly, learn to interact with switches and routers across the most popular network vendors using multiple Python libraries.

This course was written for networking professionals looking to expand their capabilities by automating their workload with Python. This includes: Network Engineers, Network Architects, System Admins, DevOps Engineers, Cisco Certified Professionals (CCNA, CCNP, CCIE), and developers interested in network programmability with Python.

Ready to Advance Your Career?

CONTACT US NOW!