Python: Obtain Network Device Configuration using NETCONF

Introduction Within this article we will look at how to interact with a networking device (Cisco CSR) using the NETCONF protocol. To do so, we will use the Python module – ncclient. What is NETCONF First of all, What is NETCONF? NETCONF (NETwork CONFiguration) is a protocol defined by the IETF to “install, manipulate, and … Read more


Introduction Following on from our previous article around NETCONF and YANG, we will look at the RESTCONF protocol. As per RFC 8040 (RESTCONF Protocol), the IETF describes RESTCONF as, “an HTTP-based protocol that provides a programmatic interface for accessing data defined in YANG, using the datastore concepts defined in the Network Configuration Protocol (NETCONF).” Protocol … Read more

An Introduction to NETCONF/YANG

TL;DR NETCONF/YANG provides a standardized way to programmatically update and modify the configuration of a network device. To break this down further. YANG is the modelling language that describes the configuration changes. Whereas  NETCONF is the protocol that applies the changes to the relevant datastore (i.e running, saved etc) upon the device. Introduction Let us start … Read more

How to Configure a Cisco CSR using NETCONF/YANG

Introduction Within this tutorial we will use NETCONF and YANG to configure an interface upon a Cisco CSR router using a combination of Python and the BASH CLI. Furthermore we will use 2 main tools – Pyang and Pyangbind. Before we start lets have a quick overview on what these tools do, Pyang is a YANG … Read more

A Guide to Network Function Virtualization (NFV)

Introduction NFV is a term that has been around for a few years now. As vendors and the open source communities look to drive the adoption of NFV, a wave of new acronyms and buzzwords are spreading through the industry. Within this article we will look into the various NFV components (such as standards, platforms, … Read more

How to Install OpenDaylight

OpenDaylight is an SDN controller provided by the Linux Foundation. In this article we will show you the steps required to perform a simple installation upon Ubuntu. Install Binaries box@odl:~$ sudo apt-get update box@odl:~$ sudo apt-get install software-properties-common box@odl:~$ sudo apt-get install maven git unzip Install Java 1.8 {loadposition content_lock} box@odl:~$ sudo add-apt-repository ppa:webupd8team/java box@odl:~$ … Read more

What is OpenFlow?

What is OpenFlow? OpenFlow is a protocol, released by the ONF that allows the remote modification of a network switch’s forwarding table. In other words, the control plane is decoupled from the forwarding plane, enabling network controllers to define the flow of traffic between switches far greater than standard routing or forwarding protocols. Figure 1. … Read more

Want to become a networking expert?

Here is our hand-picked selection of the best courses you can find online:
Cisco CCNA 200-301 Certification Gold Bootcamp
Complete Cyber Security Course – Network Security
Internet Security Deep Dive course
Python Pro Bootcamp
and our recommended certification practice exams:
AlphaPrep Practice Tests - Free Trial