You are on page 1of 2

TCP/IP foundation for engineers

Python for network engineers


A 5 day Hands on training course

Description Key outcomes

This Python course focusses on teaching Python for By the end of the course delegates will be able to:
use in network automation and network DevOps. We
focus on getting delegates up and running with Python  Run Python programs.
and network automation as quickly as possible rather  Read Python programs.
than making them great programmers. In other words
we concentrate on enabling delegates to use network  Write Python programs.
automation libraries such as netmiko, NAPALM and  Debug Python programs.
Nornir, and APIs such as NETCONF and RESTCONF
rather than enabling delegates to produce object  Automate network tasks with Python programs.
oriented programs. Hands on sessions use Cisco and  Configure network devices with Python.
Juniper devices.
 Collect data from network devices with Python.

Training Approach Details

This structured course uses Instructor Led Training to Who will benefit?
provide the best possible learning experience. Small Network engineers.
class sizes ensure students benefit from our engaging
Prerequisites
and interactive style of teaching with delegates
TCP/IP foundation for engineers.
encouraged to ask questions throughout the course.
Quizzes follow each major section allowing checking of Duration: 5 days
learning. Hands on sessions are used throughout to
allow delegates to consolidate their new skills.

Customer rating: New course.

Generic Training Small Class Sizes Hands On Training Our Courseware Customise Your Course

Generic training We limit our maximum The majority of our We write our own Please contact us if you
complements product class size to 8 delegates; courses use hands on courses; courseware would like a course to be
specific courses covering often we have less than sessions to reinforce does not just consist of customised to meet your
the complete picture of this. This ensures optimal the theory. slides and our slides are specific requirements.
all relevant devices interactivity between diagrams not bullet point Have the course your
including the protocols delegates and instructor. text. way.
“on the wire”.

“Friendly environment “Excellent course. The “Not many courses “Comprehensive “I was very impressed by
with expert teaching that small class size was a have practice added to materials that made the the combination of
teaches the why before great benefit...” it. Normally just the course easy to follow practical and theory.
the how.” M.B. IBM theoretical stuff is and will be used as a Very informative.
G.C. Fasthosts covered.” reference point.” Friendly approachable
J.W. Vodafone V.B. Rockwell Collins environment, lots of
hands on.”
S.R. Qinetiq

www.snt.co.uk Page 1/2 Speak with our team now +44 (0)1737 821590
Python for network engineers

Course Content

What is Python? NETCONF


Programming languages, Why Python? Python in What is NETCONF? Enabling NETCONF on devices, A
interactive mode, Python scripts, ipython, Python version first ncclient script, device handlers, get_config,
2 versus version 3. A simple Python script. Comments. edit_config, copy_config, delete_config, commit,
Hands on: Installing Python, Hello world. validate, pyEZ, utils_config, utils.sw. Hands on:
Configuration using ncclient and PyEZ. This session is
A network example expanded for those interesting in JunOS automation.
On box vs off box Python. telnet, ssh, NETCONF, HTTP,
APIs, manufacturers and API support, analysis of a Manipulating configuration files
simple telnetlib program. Hands on: Using Python to Builtin functions, string handling. Unicode. Sequences,
retrieve the configuration from a network device. Using strings, lists, tuples. Dictionaries. TextFSM. Regular
wireshark to analyse the actions. expressions. JSON, YAML, XML, YANG, Jinja2,
templates. Hands on: Jinja2 templating with Python to
Python basics configure network devices.
I/O, operators, variables and assignment, types,
indentation, loops and conditionals. Hands on: Modifying NAPALM
the telnet program, changing configurations on a network Getters, configuration operations, supported devices,
devices. NAPALM transport, Config-replace, Config-merge,
Compare config, Atomic changes, rollback. Example
Functions, classes and methods NAPLAM scripts. Hands on: Using NAPALM to gather
What are functions, calling functions, builtin functions, facts, Using NAPALM for configuration management.
useful builtin functions, file handling, classes, objects,
creating instances. Hands on: Storing configurations in REST and RESTCONF
files, configuring devices from files, using an inventory What is REST, HTTP methods, GET, POST, cURL,
file to work on multiple devices. Postman, Python requests library. RESTCONF, a
RESTCONF example. Hands on: Modifying a
Libraries and modules configuration using RESTCONF.
Modules, files and packages, import, from-import, Python
standard library, other packages, pip install, executing Scapy
other programs. Managing Python libraries. Hands on: What is scapy, Scapy in interactive mode, Scapy as a
Using pip, installing and using ipaddress, subprocess to module. Hands on: Packet crafting from Python.
access netsnmp. For the more advanced, using the
sockets library. Warning
Errors and exceptions, Exception handling, try, except.
Paramiko and netmiko Memory management. Garbage collection. Context
SSH, enabling SSH on devices, keys. Paramiko versus management, With. Hands on: Improving Python code.
netmiko, example scripts. pexpect. Hands on:
Configuring VLANs from Python. Nornir
What is Nornir? A network automation framework,
pySNMP inventories, connection management and parallelization.
Gathering facts using previous methods, SNMP review, Nornir architecture and other libraires. Hands on: Setting
pySNMP GET, pySNMP and SNMPv3. easySNMP up nornir, nornir fact gathering, nornir tasks.
library. Hands on: Walking a MIB from Python.
Optional
Writing your own functions, Writing your own classes.
pyntc. Hands on: Writing reusable code.

Step back Step forward

Git for network


engineers
TCP/IP foundation for
engineers Python for network
engineers
Ansible for network
engineers

www.snt.co.uk Page 2/2 Speak with our team now +44 (0)1737 821590

You might also like