MG-SOFT NETCONF/YANG Python Scripting System

The future of network management and network configuration is here!


MG-SOFT NETCONF/YANG Python Scripting System is a powerful and easy-to-use NETCONF client scripting framework that enables retrieving and manipulating the configuration of any NETCONF server device from Python scripts. Scripts can be used for automated testing of NETCONF devices, as well as for monitoring and configuring NETCONF devices in an automated fashion.

The software lets you take any standard or vendor specific YANG module and use the bundled YANG2Py Generator tool to generate the corresponding Python classes from it that allow you to compose scripts for testing or manipulating the respective configuration model in a rapid and convenient manner (e.g., using typical IDE editor features, like code-completion, go-to-definition, find-usages, etc.).

Example of a MG-SOFT NETCONF/YANG Python Scripting System script (in Eclipse IDE)
(Click for full size view)

Example of a MG-SOFT NETCONF/YANG Python Scripting System script (Eclipse IDE)

The MG-SOFT NETCONF/YANG Python scripting framework consist of three main components:

  • NETCONF Script API (high-performance NETCONF protocol stack implementation that supports performing all NETCONF operations over SSH and TLS),

  • YANG Python layer (YANG2Py API), containing functions for validating and serializing NETCONF content and generic YANG object-oriented model that can be extended with specific Python code generated from YANG modules,

  • YANG2Py Generator (a GUI tool that lets you generate Python classes from YANG modules for rapid and straightforward writing of scripts manipulating data defined in YANG).

The bundled scripts enable testing some of the standard operations and capabilities of NETCONF devices (get, get-config, edit-config, get-schema, notifications,... ) and serve as examples for creating user-written scripts. Using this framework, users can rapidly produce scripts that contain other standard and proprietary NETCONF RPC operations in order to test or configure any NETCONF enabled device in the network based on its YANG-defined configuration model.

MG-SOFT NETCONF/YANG Python Scripting System is compliant with the current IETF's RFC documents: RFC 4741, RFC 4742, RFC 5277, RFC 5539, RFC 6020, RFC 6022, RFC 6241, RFC 6242, RFC 7589, RFC 7895, RFC 8342, RFC 8525 and RFC 8526.

Please refer to the Main Features page for more information about the scripting system.

A customer testimonial
"Thank you for the prompt and detailed help.

Picture of Config-Edit to Set Attribute & Delete is excellent.
Successfully deleted VRF with both MG-SOFT & netconf-console.
For sharing, config is copied in below with red highlight.

<edit-config>
<target>
<running/>
</target>
<config>
    <native xmlns="urn:ios">
    <vrf>
      <definition nc:operation="delete" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0">
        <name>vrf-test1</name>
        <address-family>
          <ipv4/>
          <ipv6/>
        </address-family>
      </definition>
    </vrf>
    </native>
</config>
</edit-config>

Thanks again!"


Howie Wang , Software Engineer
Cisco Systems, U.S.A.