Eu69tbbtq32hkm8q4fw4

Python Network Programming - Part 2: Multivendor Environment

Automate Network Tasks Fast and Easy Using The Information, Tools, Libraries and Python Scripts Included In This Course!

   Watch Promo

* Full Apps, Quizzes, Cheat Sheets and Final Project are included *

Before you read what I have to say, see what my students are saying about my courses:

"What an incredible value and learning experience!" by Sean A.

"Excellent material. Kudos to a great instructor with a vast level of creativity." by Anthony W.

"I can say this man is going on smoothly and perfectly, explaining in the most empirical/foundational way." by Kolapo A.


Are you a network professional who wants to start automating network tasks and manage network devices from various vendors?

Are you looking to become a better network engineer and start learning network programming?

Or maybe you're seeking a raise or even a career change?

Are you here after going through my "Python Network Programming - Part 1: Build 7 Python Apps" course, which became a bestseller on Udemy and other elearning platforms?

Join thousands of successful students who have decided to upgrade their networking skills and boost their careers using this Python Network Programming course series!


Thousands of satisfied students are enrolled in my Python Network Programming Courses across the Web

  • Last week over 300 students have joined my courses
  • The average rating is above 4.5 / 5 from hundreds of reviews
  • Update May 4, 2017: Added: Quizzes


"Highly Recommended!" by Noor


This course covers many networking vendors and network operating systems:

  • Cisco IOS
  • Cisco IOS XE
  • Cisco IOS XR
  • Juniper JunOS
  • Juniper (Netscreen) ScreenOS
  • Arista EOS
  • HP ProCurve OS
  • Avaya ERS OS

Save Time and Money by Writing Your Own Python Programs to Automate Daily Network Tasks. Grow Your Networking Career With Network Programming Skills!

Bonus, You Might Even Get a Raise or a Better Job with These New Skills!

This Python Network Programming course is aimed at network professionals having little or no experience in network automation and a great desire to use Python and a lot of very smart Python modules to program their network devices and tasks. This hands-on Python Network Programming training walks you through lots of scenarios, networking vendors and useful tools to help you become the network engineer of 2017.


What’s so special about this course?

Well, let me tell you what's this course all about:

  • Learning to use amazing Python libraries and tools to manage network devices easily and without writing too much code.
  • Connecting remotely to network devices and read/extract/display/store command output, using interactive Python scripts, on: Cisco IOS, Cisco IOS XE, Cisco IOS XR, Juniper JunOS, Juniper (Netscreen) ScreenOS, Arista EOS, HP ProCurve OS and Avaya ERS OS.
  • Configuring (one or more) network devices remotely, using interactive Python scripts, either by specifying the commands at the prompt OR asking the script to read them from one or more text files, on: Cisco IOS, Cisco IOS XE, Cisco IOS XR, Juniper JunOS, Juniper (Netscreen) ScreenOS, Arista EOS, HP ProCurve OS and Avaya ERS OS.
  • Executing configuration commands on multiple network devices from multiple vendors simultaneously.
  • Working with a device inventory in XML/JSON/CSV format and network metadata, while easily counting your registered network devices, getting device information by IP address, searching and listing device information, checking IP reachability and SSH availability and much more, using a simple but efficient tool in the Python interpreter or Linux shell.
  • Managing network device credentials in a centralized, encrypted file.
  • Managing access lists and converting access lists from one format to another using a very efficient tool (Example: Converting a Cisco IOS ACL to a Juniper JunOS ACL with a single command).
  • Automatically executing commands upon device login, right from the Linux shell.
  • Getting device interface information fast, right from the Linux shell and saving the information to local storage.
  • Working with Python and SNMP and easily performing SNMP GET, SET, SET multiple OIDs, WALK, GET-NEXT, GET-BULK operations on Cisco, Juniper, Arista and HP network devices, using only a few lines of code.
  • Parsing locally stored Cisco, Juniper, Arista and HP configuration files and extracting various pieces of information, using a very straightforward Python module.
  • Managing device configuration changes using a script that regularly saves the configuration files from your network devices to the local system, compares them with previous file versions, builds a report with all the differences and either stores the report locally or emails the report to the network administrator’s email address(es).
  • Performing various small network tests and operations using the Python interpreter.

Still not enough for you? Let me describe a few more features of this course:

  • More than 15 scripts for you to download and use right away, for free. The scripts are customized for each vendor in the course.
  • An amazing optimized Linux Ubuntu VM, with all the tools, modules and dependencies already installed and all the scripts ready to be executed on the devices in your network.
  • Command cheat sheets with all the essential commands and lines of code in each section.
  • Quizzes and a final network programming project for you to build and implement in your test lab/network. Also, the solution for the project is explained and tested.
  • 1080p, Full HD videos. Improved audio quality.
  • 185+ lectures and counting. 10+ hours of content.
  • Concise and focused lectures. Straightforward configuration of devices. Less software and operating system complications. Less code to write and troubleshoot. All the scripts I provide are fully interactive.
  • Bonus: a Python module created by me personally for handling Avaya ERS switches, which you can download, use and modify without any restrictions, for free.

Equipped with full working scripts, amazing virtual machines and command references, you will be able to work alongside me on each lecture and each application. I will provide an optimized Ubuntu virtual machine with all the Python modules already installed and also the full code for each application, so you can save time and start coding and testing on the spot.


Important prerequisites before you enroll:

  • You should already be familiar with networking concepts like: SSH, Telnet, ACLs (Access Control Lists), SNMP, VMs (Virtual Machines).
  • You should already be familiar with Python syntax: functions, if, for, while, string and file operations etc. If you have no experience whatsoever in Python, then I encourage you to also check out my "Python Network Programming - Part 1: Build 7 Python Apps" course, which teaches Python from scratch and then dives into using it on network devices, by building some great network apps.
  • For running the Ubuntu 15.10 Virtual Machine I provide, dedicating 2 GB of RAM will be more than enough. For running the Arista vEOS VM, you should allocate another 1 GB of RAM, throughout the Arista section of the course. For emulating Cisco IOS XE and IOS XR, you will need 2+ GB additional RAM memory.
  • You won't have to buy anything else. I am going to use only free software throughout the course: VirtualBox, Linux, free VMs etc.

Important information before you enroll:

  • In case you find the course useless for your career, don't forget you are covered by a 30 days money back guarantee, full refund, no questions asked!
  • Once enrolled, you have unlimited, lifetime access to the course!
  • You will have instant and free access to any updates I'll add to the course.
  • I will give you my full support regarding any issues or suggestions related to the course.
  • Check out the course curriculum for a quick insight.

"[...] It sounds from the introductory like it would be a great skills to have to learn all these tools and be able to automate network tasks not only on Cisco Devices but other vendors. If I feel this way till the end of the course, I would feel that I have a UNIVERSAL skills to be able to work and automate tasks with multiple vendors.,Thanks for the good work. I hope and I know I will." by Nasser Abdelghani

So, what are you waiting for? Do you want to be a better network engineer and also become a network programmer? Do you still want to catch the network programming and automation career train? Now is your chance!


Enroll in 'Python Network Programming - Part 2: Multivendor Environment' and see the benefits for your career, as thousands of other students did!


Your Instructor


Mihai Catalin Teodosiu
Mihai Catalin Teodosiu

Hi! My name is Mihai. I have a degree in Telecommunications and Information Technology from University Politehnica of Bucharest, Romania and also the CCNP, CCNA, CCDA, JNCIA and ISTQB CTFL certifications.

I worked as a Network Quality Assurance Engineer since 2010, testing the OS for Nortel/Avaya L3 switches.

  • 6+ years experience in the Networking and Testing/Quality Assurance industries.
  • Certified professional: Cisco, Juniper and International Software Testing Qualifications Board certifications.
  • Teaching courses on Udemy, the GNS3 Academy and other e-learning platforms.
  • 35.000+ students, 160+ countries, 4.5 / 5 average course rating.


See what my students are saying about the kind of courses I created:

"What an incredible value and learning experience!" by Sean A.

"Excellent material. Kudos to a great instructor with a vast level of creativity." by Anthony W.

"I can say this man is going on smoothly and perfectly, explaining in the most empirical/foundational way." by Kolapo A.


In early 2014 I decided to start learning a programming language that can make my daily work easier and also boost my networking career. This is when I discovered that Python, being a great language for beginners, can help me write some scripts that connect to network devices and perform various tasks I was doing manually, thus saving a lot of time. Also, working as a tester, I used Python to automate a lot of network tests, about 250, in a short period of time, again reducing my workload.

For all the above reasons and because there is a lot of Python material out there on the Internet that may seem discouraging for you as a beginner, I decided to build courses that take you from zero programming knowledge to advanced topics, all in a hands-on fashion.


In March 2015 I started working on my first course, "Python Network Programming - Part 1: Build 7 Python Apps", without really knowing what is online education all about and with no prior teaching experience, either online or offline. I just wanted to try it for some reason, despite a lot of mental obstacles, a full time job and zero experience in teaching people.

I worked a lot on this first course, with countless hours of researching, recording and editing, but there was something that kept me going further. In May 2015 my course was approved by Udemy and was an instant success, despite my low expectations. Gradually, the course became a bestseller on other e-learning platforms, as well. One example I'm very proud of is the GNS3 Academy.

In April 2016, I finished working on Part 2 of the Python Network Programming series, called "Multivendor Environment", after about three months of researching, testing, summarizing, simplifying, recording, editing and structuring the course content.

Finally, in September 2016, I released Part 3 of this amazing course series, called "Python Network Programming - Part 3: Scapy & Security Tools", which in my opinion is very interesting and exciting for anyone wanting to enter the world of network security in a 100% hands-on fashion.

I am really putting a lot of energy and effort into each of my courses and I am always trying (and succeeding) to pay special attention to the smallest details and provide a lot of value to my students.

I really think my courses will get better and better, both by learning from my mistakes and carefully listening to the feedback I get from my students.


So, check out my courses and stay tuned for more!


Class Curriculum



Frequently Asked Questions


When does the course start and finish?
The course starts now and never ends! It is a completely self-paced online course - you decide when you start and when you finish.
How long do I have access to the course?
How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own.
What if I am unhappy with the course?
We would never want you to be unhappy! If you are unsatisfied with your purchase, contact us in the first 30 days and we will give you a full refund.

"The course is definetely well organized and the instructor does a great job preparing the playground before diving into the details of network programming. Would recommend this course to anyone trying to ease their network administration tasks. Thanks!"

- Andrei Vasilescu, Student

"It sounds from the introductory like it would be a great skills to have to learn all these tools and be able to automate network tasks not only on Cisco Devices but other vendors. If I feel this way till the end of the course, I would feel that I have a UNIVERSAL skills to be able to work and automate tasks with multiple vendors.,Thanks for the good work. I hope and I know I will."

- Nasser Abdelghani, Student

"So far I am enjoying this learning experience. I loved the way instructor explains the thing. I am getting confidence that I will be able to write the scripts all by myself."

- Megha Gupta, Student

Get started now!