• Professional Development
  • Medicine & Nursing
  • Arts & Crafts
  • Health & Wellbeing
  • Personal Development

Course Images

Python Network Programming for Network Engineers (Python 3)

Python Network Programming for Network Engineers (Python 3)

  • 30 Day Money Back Guarantee
  • Completion Certificate
  • 24/7 Technical Support

Highlights

  • On-Demand course

  • 12 hours 44 minutes

  • All levels

Description

This course is an excellent resource to learn network programming using Python. With the help of practical examples, you will learn how to automate networks with Telnet, Secure Shell (SSH), Paramiko, Netmiko, and Network Automation and Programmability Abstraction Layer with Multivendor support (NAPALM).

The days of configuring Cisco networks only with the command-line interface (CLI) are ending. Do you want to program networks using Python, but not sure where to start? Well, this course will show you how you can start programming Cisco networks using Python within 20 minutes. The course begins by explaining the steps for setting up the lab and takes you through the concepts of network automation. Once you are ready with the environment and the basics, you will dive into automating networks. You will learn how to automate networks using Telnet, Secure Shell (SSH), Paramiko, Netmiko, and Network Automation and Programmability Abstraction Layer with Multivendor support (NAPALM). In the rest of the course, you will learn the various concepts of Python needed to automate the configuration of network devices. By the end of this course, you will be able to program networks and network devices using Python 3 and Graphical Network Simulator-3 (GNS3). All code files are available here: https://github.com/packtpublishing/python-network-programming-for-network-engineers-python-3-

What You Will Learn

Use Telnet to create VLANs
Enable Secure Shell (SSH) on switches in a network
Distinguish between Ubuntu and network automation container
Use Network Automation and Programmability Abstraction Layer with Multivendor support (NAPALM) for device configuration audit and changes
Become familiar with Netmiko scripts
Get to grips with the concepts of Python

Audience

This course is for network engineers, network architects, and for those who are looking to apply Python programming to network automation. Basic understanding of networking knowledge (CCNA) and Graphical Network Simulator-3 (GNS3) is needed to get started with this course.

Approach

This is a self-paced course to understand how Graphical Network Simulator-3 (GNS3) and Python 3 are used for network automation. Step-by-step explanation, real-world examples, and practical activities will keep you interested and engaged through the learning process.

Key Features

Learn how to leverage Network Automation and Programmability Abstraction Layer with Multivendor support (NAPALM) for network automation * Get ready to program networks using Graphical Network Simulator-3 (GNS3) and Python 3 * Uncover tips and techniques to scale your network scripts

Github Repo

https://github.com/packtpublishing/python-network-programming-for-network-engineers-python-3-

About the Author
David Bombal

David Bombal (CCIE #11023 Emeritus) passed his Cisco Certified Internetwork Expert Routing and Switching exam in January 2003 and is one of a small percentage of Cisco engineers that pass their CCIE labs on their first attempt. David was qualified as a Cisco Certified Systems Instructor (CCSI #22787) many years ago! He has been conducting Cisco courses for over 15 years and has delivered instructor-led courses in various countries around the world covering a wide range of Cisco topics from CCNA to CCIE. He has also personally developed Cisco engineer utilities, such as the VPN Config Generator, software, training materials, eBooks, videos and other products, which are used throughout the world. David has designed, implemented, and managed networks ranging from single sites to those that span 50 countries.

Course Outline

1. Introduction

This section provides an introduction to the course.

1. Introduction

This video introduces you to the course.

2. Lab Setup

This section explains the lab setup.

1. Installing the Graphical Network Simulator (GNS3) 2.2 Graphical User Interface (GUI)

This video demonstrates how to install the GNS3 2.2 GUI.

2. Installing the Graphical Network Simulator-3 (GNS3) 2.2 Virtual Machine

This video explains how to install the GNS3 2.2 GUI.

3. Graphical Network Simulator-3 (GNS3) IOS Images

This video focuses on GNS3 IOS images.

4. Installing Continuous Machine Learning (CML) Virtual Internet Routing Lab (VIRL 2.0) - Part 1

This is the first part of the two-part video that shows how to install CML VIRL 2.0.

5. Installing Continuous Machine Learning (CML) Virtual Internet Routing Lab (VIRL 2.0) - Part 2

This is the second part of the two-part video that demonstrates how to install CML VIRL 2.0.

6. Installing Emulated Virtual Environment (EVE)-New Generation (NG)

This video explains how to install EVE-NG.

7. Emulated Virtual Environment (EVE)-New Generation (NG) Cisco Images

This video focuses on EVE-NG Cisco images.

8. DevNet: Free Continuous Machine Learning (CML)

This video explains DevNet: Free CML.

3. Quick Start Guide to Network Automation

This section provides a quick guide to network automation.

1. Quick Start 1: Setting up the Graphical Network Simulator-3 (GNS3) Lab and Integrated Development Environments (IDEs)

This video demonstrates how to set up the GNS3 lab and IDEs.

2. Quick Start 2: Creating a Telnet Script

This video explains how to create a Telnet script.

3. Quick Start 3: Testing a Telnet Script

This video shows how to test a Telnet script.

4. Quick Start 4: Telnet to a Switch and Create VLANs

This video explains Telnet to a switch and create VLANs

5. Quick Start 5: Loops

This video focuses on loops.

6. Quick Start 6: PEP8: Python Style Guide

This video explains the Python style guide.

7. Quick Start 7: Configuring Switch Virtual LANs (VLANs) Using Loops

This video demonstrates how to configure switch VLANs using loops.

8. Quick Start 8: Creating a Multiple Switch Network

This video explains how to create a multiple switch network.

9. Quick Start 9: Opening a File of Switch Internet Protocol (IP) Addresses

This video shows how to open a file of switch IP addresses.

10. Quick Start 10: Configuring Multiple Switches with a Loop

This video demonstrates how to configure multiple switches with a loop.

11. Quick Start 11: Loops within Loops

This video explains loops within loops.

12. Quick Start 12: Backup Network Device Configurations

This video focuses on backup network device configurations.

4. Netmiko: Using Secure Shell (SSH) for Network Automation

This section shows how to use SSH for network automation.

1. Netmiko Part 1: Introduction

This video provides an introduction to the course.

2. Netmiko Part 2: Enabling Secure Shell (SSH) on Switches in the Network

This video demonstrates how to enable SSH on switches in the network.

3. Netmiko Part 3: Your First Netmiko Secure Shell (SSH) Script

This video helps to write your first Netmiko SSH Script.

4. Netmiko Part 4: Scripting for Multiple Switches

This video explains how to script for multiple switches.

5. Netmiko Part 5: Running a Script and Configuring Multiple Devices

This video shows how to run a script and configure multiple devices.

6. Netmiko Part 6: File of Multiple Cisco Commands

This video presents a file of multiple Cisco commands.

7. Netmiko Part 7: Programming Multiple Switches with File of Commands

This video demonstrates how to program multiple switches with the file of commands.

8. Netmiko Part 8: Scripting to Program an Entire Network

This video explains how to script to program an entire network.

9. Netmiko Part 9: Running a Script to Program an Entire Network

This video shows how to run a script to program an entire network.

5. Network Automation and Programmability Abstraction Layer with Multivendor support (NAPALM)

This section introduces you to Network Automation and Programmability Abstraction Layer with Multivendor support (NAPALM).

1. Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) Introduction

This video introduces you to NAPALM.

2. Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) Python 3 versus Python 2.7

This video explains the difference between NAPALM Python 3 and Python 2.7.

3. Installing Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM)

This video demonstrates how to install NAPALM.

4. Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) Connect to Switch 1 (P68_14)

This video NAPALM explains how to connect to switch 1 .

5. JSON and More Commands

This video focuses on JSON and some more commands.

6. Media Access Control (MAC) Address Table and Address Resolution Protocol (ARP) Cache

This video focuses on MAC address table and an ARP cache.

6. Network Automation and Programmability Abstraction Layer with Multivendor (NAPALM) and Border Gateway Protocol (BGP)

This section introduces you to NAPALM and BGP.

1. Using Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) to Retrieve Border Gateway Protocol (BGP) Neighbor Information - Part 1

This is the first part of the three-part video that demonstrates how to use NAPALM to retrieve BGP neighbor information.

2. Use Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) to retrieve Border Gateway Protocol (BGP) Neighbor Information - Part 2

This is the second part of the three-part video that explains how to use NAPALM to retrieve BGP neighbor information.

3. Use Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) to Retrieve Border Gateway Protocol (BGP) Neighbor Information - Part 3

This is the third part of the three-part video that shows how to use NAPALM to retrieve BGP neighbor information.

4. Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM): Multiple Border Gateway Protocol (BGP) Neighbors

This video focuses on multiple BGP neighbors.

5. Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) and Bigger Border Gateway Protocol (BGP) Network - Part 1

This is the first part of the two-part video that focuses on NAPALM and bigger BGP network.

6. Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) and Bigger Border Gateway Protocol (BGP) Network - Part 2

This is the second part of the two-part video that explains NAPALM and bigger BGP network.

7. Using Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) for Device Configuration Audit and Changes

This section explains how to use NAPALM for device configuration audit and changes.

1. Using Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) to Configure Access Lists

This video demonstrates how to use NAPALM to configure access lists.

2. Checking if Access Control List (ACL) Already Exists and Adding if Missing

This video explains how to check if ACL already exists and add it if missing.

3. Using Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) for Auditing Device Configurations

This video shows how to use NAPALM for auditing device configurations.

4. Using Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM) to Add Multiple Configuration Files

This video demonstrates how to use NAPALM to add multiple configuration files.

5. Network Automation and Programmability Abstraction Layer with Multivendor Support (NAPALM): Multiple Configuration Files and Multiple Devices

This video focuses on multiple configuration files and multiple devices.

8. Iteration Examples: Netmiko Scripts

This section introduces you to Netmiko scripts.

1. Netmiko Iteration: Script Overview

This video presents an overview of Netmiko scripts.

2. Netmiko Iteration (Script 1): Basic Script

This video focuses on a basic script.

3. Netmiko Iteration (Script 2): Opening a File of Commands

This video demonstrates how to open a file of commands.

4. Netmiko Iteration (Script 3): Configuring Multiple Devices Using a File of Devices

This video explains how to configure multiple devices using a file of devices.

5. Netmiko Iteration (Script 4): Removing Passwords from the Script

This video shows how to remove passwords from the script.

6. Netmiko Iteration (Script 5): Handling Exceptions (Error)

This video demonstrates how to handle exceptions.

7. Netmiko Iteration (Script 6): Determining Device Types and Running a Specific Device Type

This video explains how to determine device types and run a specific device type.

8. Netmiko Iteration (Script 7): Iterating Device Typescript

This video shows how to iterate device typescript.

9. Netmiko Scaling

This section focuses on Netmiko scaling.

1. Part 1: Encrypted Password File

This video focuses on encrypted password files.

2. Part 2: Netmiko Sequential - Part 1

This is the first part of the four-part video that focuses on Netmiko sequential.

3. Part 3: Netmiko Sequential Part 2

This is the second part of the four-part video that explains Netmiko sequential.

4. Part 4: Netmiko Multithreading

This is the fourth part of the four-part video that focuses on Netmiko multithreading.

5. Part 5: Netmiko Thread Pools

This is the fifth part of the four-part video that explains Netmiko thread pools.

10. Python Theory

This video introduces you to Python theory.

1. Theory Topics - Very Short

This video explains Python theory

2. Keep Learning

This video explains more about Python Language.

3. Setting up Python 2.7 and 3

This video demonstrates how to set up Python 2.7 and Python 3.

4. Python 2.7 and 3 Examples

This video explains Python 2.7 and Python 3 with examples.

5. Basic Hello World Scripts

This video focuses on basic Hello World scripts.

11. Python Theory: Objects, Variables, and Data Types

This section introduces you to objects, variables, and data types.

1. Python Objects - Part 1

This is the first part of the two-part video that explains Python objects.

2. Python Objects - Part 2

This is the second part of the two-part video that focuses on Python objects.

3. Python Variables - Part 1

This is the first part of the four-part video that explains Python variables.

4. Python Variables - Part 2

This is the second part of the four-part video that focuses on Python variables.

5. Python Variables - Part 3

This is the third part of the four-part video that highlights the concept of Python variables.

6. Python Variables - Part 4

This is the fourth part of the four-part video that introduces you to Python variables.

7. Data Types

This video explains data types.

8. Testing Data Types

This video demonstrates how to test data types.

12. Python Theory: Numbers

This section explains the number data type in Python.

1. Introduction

This video provides an introduction to numbers.

2. Numeric Types

This video explains numeric types.

3. Integer (Int) and Float Data Types

This video introduces you to int and float data types.

4. Operators - Part 1

This is the first part of the three-part video that provides an introduction to operators.

5. Operators - Part 2

This is the second part of the three-part video that explains operators.

6. Operators - Part 3

This is the third part of the three-part video that focuses on operators.

7. Binary, Hexadecimal, and Octal

This video introduces you to the binary, hexadecimal, and octal number systems.

8. Binary, Decimal, and Octal Number Examples

This video explains the binary, decimal, and octal number systems with examples.

9. Integer (int) Calculation

This video focuses on int calculation.

10. Floats

This video explains floats.

13. Python Theory: Strings

This section introduces you to strings.

1. Strings

This video explains strings.

2. Strings

This video focuses on strings.

3. Converting to a String Using the str() Function

This video demonstrates how to convert to a string using the str() function.

4. Escape Special Character Meaning with \

This video explains escape special character meaning with the help of \.

5. Strings

This video explains the concept of strings.

6. String Concatenation with the Addition (+) Operator

This video explains string concatenation with the addition (+) operator.

7. Multiplication (*) Operator

This video introduces you to the multiplication (*) operator.

8. String Offsets - Extract Characters with []

This video explains string offsets, focusing on how to extract characters with [].

9. string slice _ slicing

This video explains slice string

10. string slice _ slicing 2

This video is a continuation to string slice.

11. string slice _ slicing 3

This video further explains string slicing.

12. lower upper

This video explains lower and upper method to set the case to lower and upper case

13. startswith endswith Methods

This video explains the startswith and endswith methods in strings.

14. Strip lstrip() and rstrip() Methods

This video explains the lstrip() and rstrip() methods.

15. isdigit() Method

This video focuses on the isdigit() method.

16. count() Method

This video introduces you to the count() method.

17. Old Style Text Using %

The video explains the old style text using %.

18. Strings: New Way to Do Text Using {}

This video explains a new way using {}.

19. dir() Method (P73_9)

This video focuses on the dir() method.

14. Getting Version Information from a Switch

This section explains how to get version information from a switch.

1. Getting Show Version from Switch

This video demonstrates how to use the show version command on a switch.

2. Telnet and String Offset

This video explains Telnet and string offset.

3. Showing Version Using the len() Method

This video demonstrates how to show version using the len() method.

4. Split Functions - Part 1

This is the first part of the two-part video that introduces you to split functions.

5. Split Functions - Part 2

This is the first part of the two-part video that focuses on split functions.

6. list() and join() Methods

This video explains the list() and join() methods.

7. List and len - use Interface example

This video explains List and length - using Interface example.

8. Index Introduction

This video introduces you to index.

9. Real Switch Get Version Using Index and Slice

This video explains Real switch get version using index and slice.

10. Python 3 Telnet to Switch

This video focuses on Python 3 Telnet to switch.

11. count() Method

This video explains the count() method.

12. Using the find() Method to Get Information from a Real Switch

This video demonstrates how to use the find() method to get information from a real switch.

13. Python 3 Telnet versus Python 2 - Finding the Version of the Software

This video explains how to find the version of the software.

14. Find not Found

This video explains find not found.

15. String Methods - upper() Method

This video introduces you to the upper() method.

16. String Methods - startswith() and endswith() Methods

This video focuses on the startswith() and endswith() methods.

17. String Methods - strip() Method

This video explains the strip() method.

18. String Methods - split() Method

This video introduces you to the split() method.

19. String Methods - join() Method

This video focuses on the join() method.

20. String Methods - Is It in a String?

This video explains the various string methods.

21. String Concatenation

This video explains string concatenation.

22. Capitalize, Upper, Lower, and Swap

This video introduces you to the capitalize, upper, lower, and swap functions.

15. Python Theory: Comparisons

This section focuses on comparisons.

1. Boolean Comparisons

This video explains Boolean comparisons.

2. Boolean Truth Table

This video focuses on the Boolean truth table.

3. Boolean Truth Table Demo

This video provides a demonstration of the Boolean truth table.

4. False Conditions

This video explains false conditions.

16. Python Theory: Lists

This section introduces you to lists.

1. Lists versus Tuples

This video illustrates the difference between lists and tuples.

2. Lists

This video explains lists.

3. Creating a List Using Split

This video demonstrates how to create a list using split.

4. Lists in Lists

This video explains lists in lists.

5. Lists versus Tuples - Documentation

This video provides the documentation based on the difference between lists and tuples.

6. list(), merge(), and extend() Methods

This video introduces you to the list(), merge(), and extend() methods.

7. List Methods

This video explains list methods.

8. lists insert and delete

This video explains how to insert and delete lists.

9. list pop index and in

This video explains List pop index

10. Reverse Sort

This video introduces you to reverse sort.

11. len copy list

This video explains how to capture the length of a list

17. Python Theory: Tuples

This section introduces you to tuples.

1. Tuples

This video explains tuples.

2. Tuples and Sequences

This video focuses on tuples and sequences.

18. Python Theory: Code Structures

This section introduces you to code structures.

1. Comments in Code

This video explains how to add comments in code.

2. Line Continuation

This video focuses on line continuation.

19. Python Theory: If/Else/Else-if Logic

This section introduces you to if/else/else-if logic.

1. If Logic

This video focuses on if logic.

2. Physical Router Demonstration

This video provides a demonstration of the physical router.

3. Else-if Logic

This video focuses on else-if logic.

20. Python Theory: While Loops

This section introduces you to while loops.

1. While Loop

This video explains while loops.

2. Infinite While Loop with Break

This video focuses on infinite while loop with break.

3. Infinite While Loop with Continue

This video explains infinite while loop with continue.

4. While Loop with a List

This video introduces you to while loop with a list.

5. While Loop with Else

This video focuses on while loop with else.

21. Python Theory: For Loop

This section introduces you to for loops.

1. For Loop

This video explains the concept of for loops.

2. For Loop with Dictionary

This video focuses on for loop with a dictionary.

3. For Loop with If and Lists

This Video explains for loop with if and lists.

22. Python Theory: Ranges

This section introduces you to ranges.

1. Ranges - Part 1

This is the first part of the two-part video that explains ranges.

2. Ranges - Part 2

This is the second part of the two-part video that focuses on ranges.

23. Python Theory: Dictionaries

This section introduces you to dictionaries in Python.

1. Dictionary Theory

This video highlights the concept of a dictionary.

2. Dictionary Demonstration

This video provides a demonstration of a dictionary.

3. Combining Dictionaries

This video demonstrates how to combine dictionaries.

4. Dictionaries: Clear and Check

This video focuses on clear and check.

5. Dictionaries: Adding values

This video explains how to add values.

24. Python Theory: Functions

This section introduces you to functions in Python.

1. Functions Introduction - Part 1

This is the first part of the three-part video that provides an introduction to functions.

2. Functions Introduction - Part 2

This is the second part of the three-part video that focuses on functions.

3. Functions - Part 3

This is the third part of the three-part video that introduces you to functions.

4. Functions - Netmiko and Router

This video explains Netmiko and router.

5. Functions - Netmiko and Router (continued)

This video explains more about Netmiko and router.

6. Function 6 - Named Keyword Arguments (Netmiko)

This video introduces you to named keyword arguments.

Course Content

  1. Python Network Programming for Network Engineers (Python 3)

About The Provider

Packt
Packt
Birmingham
Founded in 2004 in Birmingham, UK, Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and i...
Read more about Packt

Tags

Reviews