Python Network Programming for Network Engineers (Python 3)
Beginner LevelDevelopmentPython

Python Network Programming for Network Engineers (Python 3)

Program networks using Python version 3. Learn network programmability with this practical GNS3 and Cisco course

Created by David Bombal, Experts with David Bombal
13 hours
Video Content
171
Lectures
285,726
Students
4.7
Rating
4.7
(285,726 students enrolled)

What you'll learn

Learn network programmability with GNS3 and Python version 3
Learn how to automate the configuration of network devices with Python
Learn how to leverage NAPALM for network automation
Use Netmiko for SSH connections to routers and switches
Quick start guide using Telnet and SSH - get started in 20 minutes!
Learn how to scale your network scripts

Course Content

24 sections • 171 lectures • 12:50:09 total length

Introduction

3 lectures • 09:03

Introduction03:49
Answering your questions01:54
Udemy Tips and Tricks03:20

Lab Setup

9 lectures • 02:48:30

Important - please read00:54
GNS 2.2 GUI Install16:40
GNS3 2.2 VM Install20:55
GNS3 IOS images19:11
CML (VIRL 2.0) Install Part 131:26
+4 more lectures

Quick Start Guide to Network Automation

12 lectures • 01:28:44

Quick Start 1: GNS3 Lab Setup and IDEs10:22
Quick Start 2: Telnet Script creation11:20
Quick Start 3: Telnet Script Test06:04
Quick Start 4: Telnet to a switch and create VLANs08:15
Quick Start 5: Loops07:29
+7 more lectures

Netmiko: Use SSH for Network Automation

9 lectures • 50:52

Netmiko Part 1: Introduction02:34
Netmiko Part 2: Enable SSH on switches in network04:38
Netmiko Part 3: Your first Netmiko SSH Script08:00
Netmiko Part 4: Script for multiple switches03:55
Netmiko Part 5: Run script and configure multiple devices05:10
+4 more lectures

NAPALM

7 lectures • 26:51

NAPALM Introduction (P75_12)05:57
NAPALM Python 3 versus 2.703:30
Ubuntu versus Network Automation Container00:22
Install NAPALM (P68_13)02:22
NAPALM connect to switch 1 (P68_14)03:52
+2 more lectures

NAPALM and BGP

6 lectures • 20:29

Use NAPALM to retrieve BGP neighbor information: Part 1 (P75_1)02:09
Use NAPALM to retrieve BGP neighbor information: Part 2 (P75_2)05:11
Use NAPALM to retrieve BGP neighbor information: Part 3 (P75_3)01:13
NAPALM: Multiple BGP neighbors (P75_4)04:42
NAPALM and bigger BGP Network Part 1 (P75_5)04:23
+1 more lectures

Use NAPALM for device configuration audit and changes

5 lectures • 16:57

Use NAPALM to configure Access lists (P75_6)03:45
Check if ACL already exists and add if missing (P75_7)04:17
Use NAPALM for auditing device configs (P75_8)00:52
Use NAPALM to add multiple config files (P75_9)04:08
NAPALM: Multiple config files, multiple devices (P75_10)03:55

Iteration Examples: Netmiko scripts

8 lectures • 43:11

Netmiko Iteration: Script Overview05:51
Netmiko Iteration (Script 1): Basic Script01:32
Netmiko Iteration (Script 2): Open a file of commands05:50
Netmiko Iteration (Script 3): Configure multiple devices using a file of devices07:23
Netmiko Iteration (Script 4): Remove passwords from script04:13
+3 more lectures

Netmiko Scaling

5 lectures • 30:46

Part 1: Encrypted Password File07:30
Part 2: Netmiko Sequential Part 105:04
Part 3: Netmiko Sequential Part 206:52
Part 4: Netmiko Multithreading05:40
Part 5: Netmiko Thread Pools05:40

Python Theory

5 lectures • 13:14

Theory topics - very short (P62_14_15)02:04
Keep learning (P61_26)02:17
2.7 and 3 setup (P61_27)04:11
2.7 and 3 examples (P61_28)03:13
Basic Hello World Scripts (P61_29_30)01:29

Python Theory: Objects, Variables and Data Types

8 lectures • 24:11

Python Objects (P61_1)05:12
Python Objects Part 2 (P61_2)01:12
Python Variables (P61_3)03:30
Python Variables Part 2 (P61_4_5)02:35
Python Variables Part 3 (P61_6)04:15
+3 more lectures

Python Theory: Numbers

10 lectures • 26:28

Introduction (P61_19)00:58
Numeric Types (P61_11)01:50
Int and Float (P61_12)01:45
Operators (P61_14)04:35
Operators Part 2 (P61_15_16)06:27
+5 more lectures

Python Theory: Strings

19 lectures • 45:19

strings (P62_4)03:33
strings (GT 06-8-17 7_8)03:23
convert to a string using str() (P62_10)00:38
escape special character meaning with \ (P62_12)03:02
strings (P62_9)01:58
+14 more lectures

Get version information from a switch

22 lectures • 56:33

Get show version from switch (P65_14)04:18
Telnet and string offset (P65_16)04:36
Show version using len (P65_17)02:02
Split 1 (P65_18_21)01:56
Split 2 (P73_18)01:18
+17 more lectures

Python Theory: Comparisons

4 lectures • 11:42

Boolean comparisons04:45
Boolean Truth Table02:00
Boolean Truth Table Demo03:37
false conditions01:20

Python Theory: Lists

11 lectures • 34:27

Lists versus tuples03:05
lists02:44
create a list using split03:08
lists in lists04:48
lists versus tuples - documentation00:47
+6 more lectures

Python Theory: Tuples

2 lectures • 06:50

tuples04:52
Tuples and Sequences v201:58

Python Theory: Code Structures

2 lectures • 04:59

Comments in Code (P72_2)03:17
Line Continuation (P72_3)01:42

Python Theory: if / else / elseif logic

3 lectures • 19:30

if logic07:08
physical router demonstration07:58
esleif04:24

Python Theory: While Loops

5 lectures • 15:56

while loop04:21
infinite while loop with break03:21
infinite while loop with continue03:17
while loop with a list02:43
while loop with else02:14

Python Theory: For Loops

3 lectures • 07:47

for loops03:17
for loop with dictionary02:56
for loop with if and lists01:34

Python Theory: Ranges

2 lectures • 07:36

Ranges 104:54
Ranges 202:42

Python Theory: Dictionaries

5 lectures • 15:54

Dictionary Theory (P70_17)03:04
Dictionary Demo (P70_18)03:28
Combine Dictionaries (P70_19)01:31
Dictionaries: Clear and check (P70_20)03:24
Dictionaries: Add values (P70_21)04:27

Python Theory: Functions

6 lectures • 24:19

Functions Intro06:09
Functions Intro Part 203:32
Functions Part 302:50
Functions - Netmiko and Router03:44
Functions - Netmiko and Router03:56
+1 more lectures

Description

Learn Network Programmability and Network Automation using GNS3 and Python version 3.

This course is based on Python 3.

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 within 20 minutes.

This course was created for network engineers. There are too many other Python courses out there that try to make network engineers software developers. Instead of teaching network automation, they teach you Python theory. This course is different. 

This course is practical. I won't talk about programming in abstract terms and make you wait before you can start automating networks. I will show you how you can quickly and easily start network programming by using GNS3, Cisco IOS and Python.

You will see demonstrations of the configuration of both Cisco routers and switches in GNS3. For example, how to configure multiple VLANs on a multiple switches, or how to configure OSPF on a router and more.

This course shows you practical examples of using Python to programmatically configure Cisco network devices rather then just talking about it.

The days of configuring Cisco networks only with the command line interface (CLI) are drawing to a close. You need to add network programmability using Python and APIs to your skill set.

Learn how to automate networks using:

- Telnet

- SSH

- Paramiko

Netmiko

NAPALM

Tools such as NAPALM and Netmiko make it easy to configure and interact with network devices using an API such as NETCONF or using SSH. Don't reinvent the wheel. Use the tools available to you to quickly and easily automate your networks.

Some comments about the course:

"Knowing the material from just the first video would have saved me hours of work and rework in the past." 

"It's the easiest, most fun, and most valuable course I've completed yet on Python Programming for Networking. Love it! Thanks again David!!!" 

"Excellent course on Network Programming using Python with lot's of practical network configuration examples."

"Great way of explanation.Nice video and inspiring words! Thank you so much David. You are genius."

"I've been doing network automation for a while, even so, I've learned new things through this course. The instructor start from a basic example, adding improvements in each step. It's a skill that's worth it."

"A must for all network engineers who want to learn python!!! I had very "very" basic programming skills, and couldn't just get the bridge between network and programming (mainly Python - since that's where the hype is now), this course was amazing, I have never been glued to a training course since I can remember. The couple of things I loved the most about this course: 1- David's clear voice. 2- Real world application, not only will David interduce different real-world practical modules that you can import and use, but he shows you how to apply them on ios devices."

"Excellent course on Network Programming using Python with lot's of practical network configuration examples. High quality content."

Who this course is for:

  • Network Engineers
  • Network Architects
  • If you are interested in network automation
  • If you are interested in network programmability
  • Anyone wanting to learn how to apply Python programming to network automation

This course includes:

  • 13 hours on-demand video
  • 2 articles
  • 65 downloadable resources
  • Access on mobile and TV
  • Full lifetime access
  • Certificate of completion

Instructors

David Bombal

Experts with David Bombal

Students also download

Explore related courses to expand your learning journey.