Advanced TCP/IP training course description An intensive advanced TCP/IP course focusing on the details of the protocols according to the RFCs. This course is designed to go into the technical details of the protocols and is not for those that are new to TCP/IP. A particular focus is on TCP and performance. Those more interested in routing protocols should see our Definitive IP routing for engineers course. It is expected that delegates are totally familiar with configuration addressing. Hands on sessions consist of protocol analysis using Wireshark. What will you learn Analyse packets and protocols in detail. Troubleshoot networks using Wireshark. Find performance problems using Wireshark. Perform network forensics. Advanced TCP/IP training course details Who will benefit: Advanced technical staff. Prerequisites: TCP/IP Foundation for engineers Duration 5 days Advanced TCP/IP training course contents IP Fragmentation and MTU issues, Path MTU discovery, Geolocation, unusual IP addresses, forwarding broadcasts, DiffServ, DSCP, ECN, assured and expedited forwarding. TTL usage in traceroute, Protocol field. Sanitising IP addresses in trace files. Wireshark and checksum errors. IPv6 The header. Extension headers. Traffic class and flow labels. Tunnelling. IPv6 and fragmentation. ARP Requests, responses, gratuitous ARP, Proxy ARP, ARP poisoning. ICMP ping, Round Trip Times, ICMP redirect, ICMP router advertisement and solicitation, Time Exceeded, Destination unreachable. ICMPv6: Similarity to ICMPv4, Neighbor discovery and the replacement of ARP. MLD. First hop redundancy ICMP discovery, HSRP, VRRP, GLBP. IGMP Multicast overview, multicast architecture, multicast addresses, IGMP v1, IGMPv2, IGMPv3. UDP Use in broadcasts and multicasts. Port numbers. TCP Connections, RST, FIN, sequence numbering, packet loss recovery, Fast recovery, RTO timeout, SACK, TCP flow control, receive window, congestion window, van Jacobsen, nagle, delayed ACKs, PSH, URG, TCP options, MSS, Window scaling, TCP timestamps. Congestion notification. Hands on Troubleshooting with sequence numbers, Wireshark IO and TCP graphs to analyse performance. Window size issues. DHCP DHCP header. Relationship to BOOTP. Discover, offer, request, decline, ACK, release. Lease, renewal and rebind times. Relay agents. DHCPv6 DNS Names and addresses, Resource Records, queries, responses, problems. MDNS. HTTP Requests, methods, request modifiers, response codes. HTTPS. SSL, TLS. Proxies. Hands on Redirects, recreating pages from packets. FTP Commands, responses, passive/active mode. Email SMTP, POP3, IMAP, commands responses. Voice and Video RTP, RTCP, SIP. IP PBXs. Traffic flows. Hands on Voice playback. SNMP MIBs, GET, TRAP, polling. Performance Baselining, high latency, Wireshark and timings, packet loss, redirections, small packets, congestion, name resolution. Security Network forensics, scanning and discovery, suspect traffic. IPsec, SSH.
Python training course description This Python course focusses on teaching Python for use in network automation and network DevOps. We focus on getting delegates up and running with Python and network automation as quickly as possible rather than making them great programmers. In other words we concentrate on enabling delegates to use network automation libraries such as netmiko, NAPALM and Nornir, and APIs such as NETCONF and RESTCONF rather than enabling delegates to produce object oriented programs. Hands on sessions use Cisco and Juniper devices. What will you learn Run Python programs. Read Python programs. Write Python programs. Debug Python programs. Automate network tasks with Python programs. Configure network devices with Python. Collect data from network devices with Python. Python training course details Who will benefit: Network engineers. Prerequisites: TCP/IP Foundation Duration 5 days Python training course contents What is Python? Programming languages, Why Python? Python in interactive mode, Python scripts, ipython, Python version 2 versus version 3. A simple Python script. Comments. Hands on Installing Python, Hello world. A network example On box vs off box Python. telnet, ssh, NETCONF, HTTP, APIs, manufacturers and API support, analysis of a simple telnetlib program. Hands on Using Python to retrieve the configuration from a network device. Using wireshark to analyse the actions. Python basics I/O, operators, variables and assignment, types, indentation, loops and conditionals. Hands on Modifying the telnet program, changing configurations on a network devices. Functions, classes and methods What are functions, calling functions, builtin functions, useful builtin functions, file handling, classes, objects, creating instances. Hands on Storing configurations in files, configuring devices from files, using an inventory file to work on multiple devices. Libraries and modules Modules, files and packages, import, from-import, Python standard library, other packages, pip install, executing other programs. Managing python libraries. Hands on Using pip, installing and using ipaddress, subprocess to access netsnmp. For the more advanced, using the sockets library. Paramiko and netmiko SSH, enabling SSH on devices, keys. Paramiko versus netmiko, example scripts. pexpect. Hands on Configuring VLANs from Python. pySNMP Gathering facts using previous methods, SNMP review, pySNMP GET, pySNMP and SNMPv3. easySNMP library. Hands on Walking a MIB from Python. NETCONF What is NETCONF? Enabling NETCONF on devices, A first ncclient script, device handlers, get_config, edit_config, copy_config, delete_config, commit, validate, pyEZ, utils_config, utils.sw. Hands on Configuration using ncclient and PyEZ. This session is expanded for those interesting in JunOS automation. Manipulating configuration files Builtin functions, string handling. Unicode. Sequences, strings, lists, tuples. Dictionaries. TextFSM. Regular expressions. JSON, YAML, XML, YANG, Jinja2, templates. Hands on Jinja2 templating with Python to configure network devices. NAPALM Getters, configuration operations, supported devices, NAPALM transport, Config-replace, Config-merge, Compare config, Atomic changes, rollback. Example NAPLAM scripts. Hands on Using NAPALM to gather facts, Using NAPALM for configuration management REST and RESTCONF What is REST, HTTP methods, GET, POST, cURL, Postman, Python requests library. RESTCONF, a RESTCONF example. Hands on Modifying a configuration using RESTCONF. Scapy What is scapy, Scapy in interactive mode, Scapy as a module. Hands on Packet crafting from Python. Warning Errors and exceptions, Exception handling, try, except. Memory management. Garbage collection. Context management, With. Hands on Improving Python code. Nornir What is Nornir? A network automation framework, inventories, connection management and parallelization. Nornir architecture and other libraires. Hands on Setting up nornir, nornir fact gathering, nornir tasks. Optional Writing your own functions, Writing your own classes. pyntc. Hands on Writing reusable code.
CCNP (ENARSI) training course description The Implementing Cisco Enterprise Advanced Routing and Services (ENARSI) v1.0 gives you the knowledge you need to install, configure, operate, and troubleshoot an enterprise network. This course covers advanced routing and infrastructure technologies, expanding on the topics covered in the Implementing and Operating Cisco Enterprise Network Core Technologies (ENCOR) v1.0 course. This course helps prepare for the exam, Implementing Cisco Enterprise Advanced Routing and Services (300- 410 ENARSI), which leads to the new CCNP What will you learn Gain the knowledge you need to install, configure, operate, and troubleshoot an enterprise network. Qualify for professional-level job roles in advance routing and services Prepare for the Implementing Cisco Enterprise Advanced Routing and Services Exam (300-410 ENARSI). CCNP (ENARSI) training course details Who will benefit: Enterprise network engineers, System engineers, System administrators, Network administrators. Prerequisites: CCNP core Duration 5 days CCNP (ENARSI) training course content Course Objectives Configure classic Enhanced Interior Gateway Routing Protocol (EIGRP) and named EIGRP for IPv4 and IPv6 Optimize classic EIGRP and named EIGRP for IPv4 and IPv6 Troubleshoot classic EIGRP and named EIGRP for IPv4 and IPv6 Configure Open Shortest Path First (OSPF)v2 and OSPFv3 in IPv4 and IPv6 environments Optimize OSPFv2 and OSPFv3 behaviour Troubleshoot OSPFv2 for IPv4 and OSPFv3 for IPv4 and IPv6 Implement route redistribution using filtering mechanisms Troubleshoot redistribution Implement path control using Policy-Based Routing (PBR) and IP Service Level Agreement (SLA) Configure Multiprotocol-Border Gateway Protocol (MPBGP) in IPv4 and IPv6 environments Optimize MPBGP in IPv4 and IPv6 environments Troubleshoot MPBGP for IPv4 and IPv6 Describe the features of Multiprotocol Label Switching (MPLS) Describe the major architectural components of an MPLS VPN Identify the routing and packet forwarding functionalities for MPLS VPNs Explain how packets are forwarded in an MPLS VPN environment Implement Cisco Internetwork Operating System (IOS) Dynamic Multipoint VPNs (DMVPNs) Implement Dynamic Host Configuration Protocol (DHCP) Describe the tools available to secure the IPV6 first hop Troubleshoot Cisco router security features Troubleshoot infrastructure security and services Course Outline Implementing EIGRP Optimizing EIGRP Troubleshooting EIGRP Implementing OSPF Optimizing OSPF Troubleshooting OSPF Configuring Redistribution Troubleshooting Redistribution Implementing Path Control Implementing Internal Border Gateway Protocol (IBGP) Optimizing BGP Implementing MP-BGP Troubleshooting BGP Exploring MPLS Introducing MPLS L3 VPN Architecture Introducing MPLS L3 VPN Routing Configuring Virtual Routing and Forwarding (VRF)-Lite Implementing DMVPN Implementing DHCP Introducing IPv6 First Hop Security Securing Cisco Routers Troubleshooting Infrastructure Security and Services Troubleshooting with DNA Center Assurance. Lab outline Configure EIGRP Using Classic Mode and Named Mode for IPv4 and IPv6 Verify the EIGRP Topology Table Configure EIGRP Stub Routing, Summarization, and Default Routing Configure EIGRP Load Balancing and Authentication Troubleshoot EIGRP Issues Configure OSPFv3 for IPv4 and IPv6 Verify the LinkState Database Configure OSPF Stub Areas and Summarization Configure OSPF Authentication Troubleshoot OSPF Issues Implement Routing Protocol Redistribution Manipulate Redistribution Manipulate Redistribution Using Route Maps Troubleshoot Redistribution Issues Implement PBR Configure IBGP and External Border Gateway Protocol (EBGP) Implement BGP Path Selection Configure BGP Advanced Features Configure BGP Route Reflectors Configure MP-BGP for IPv4 and IPv6 Troubleshoot BGP Issues Configure Routing with VRF -Lite Implement Cisco IOS DMVPN Obtain IPv6 Addresses Dynamically Troubleshoot DHCPv4 and DHCPv6 Issues Troubleshoot IPv4 and IPv6 Access Control List (ACL) Issues Configure and Verify Unicast Reverse Path Forwarding (uRPF) Troubleshoot Network Management Protocol Issues: Lab 1 and 2
Perl training course description A hands on introduction to programming in Perl. What will you learn Write Perl programs. Use Perl modules. Debug Perl programs. Examine existing code and determine its function. Perl training course details Who will benefit: Anyone wishing to learn Perl. Prerequisites: None although experience in another high level language would be useful. Duration 5 days Perl training course contents Introduction to Perl What is Perl? When to use Perl, downloading Perl, installing Perl, documentation, perldoc, running Perl, the Perl environment. Perl under UNIX, Perl under Windows. "Hello world". Variables Scalars, data types, $_, strings and numbers, assignment, constants, strict, scope, STDIN. Operators Number operators, string operators, precedence and associativity, converting numbers and strings, shortcut operators. Flow control Blocks, if, else, elseif, unless, foreach, while, for do, until. Regular expressions What are regular expressions? Pattern matching, Perl as a filter, file editing. Strings Comparing strings, concatenating, substrings, chomp, chop, formatting, string manipulation. Subroutines Comparing strings, concatenating, substrings, chomp, chop, formatting, string manipulation. Arrays and hashes Working with arrays, element access, push(), pop(), shift(), unshift(), <STDIN> as an array, associative arrays, hashes of arrays, hash references, arrays of hashes, hashes of hashes. Files Simple file handling, open, close, <FILEHANDLE>, <>, file tests, directory access, directory handles, database access, packing and packing binary data. I/O STDIN, STDOUT and STDERR, Command line arguments,@ARGV. Perl debugging The built in debugger, running the debugger, debugger commands, graphical debuggers. Script syntax errors, single stepping, breakpoints, watches. Packages and modules CPAN, Finding modules, installing modules, using modules, scope. Report formatting Formats, defining a format, invoking a format, field holders. Process management System interaction, system(), exec(), signals. Security issues.
Advanced Python training course description This course caters to network engineers aiming to enhance both their Python proficiency and network automation skills. Delving deeper into key areas such as netmiko, Nornir, and ncclient, we also focus on automating network testing and validation. Participants gain greater confidence working with Python functions, classes, objects, and error handling. The course additionally introduces more libraries like Scrapli, TTP, pyATS, Genie, pybatfish, and Suzieq, which cover parsing strategies, automation testing, validation, network analysis, observability, and telemetry. The curriculum also encompasses concurrency techniques. What will you learn Write Python modules and functions. Evaluate techniques to parse unstructured data. Use NETCONF filters. Handle Python errors effectively (try, assertâ¦). Use postman. Automate testing and validation of the network. Use scrapli, Genie, batfish and Suzieq. Advanced Python training course details Who will benefit: Network engineers. Prerequisites: Python for network engineers Duration 5 days Advanced Python training course contents Review CLI, NETCONF, RESTCONF, structured versus unstructured data, gNMI and when to use which. PEP 8. Naming conventions. Packages, modules, Classes and methods. The scrapli library. Netmiko versus scrapli. Hands on: scrapli, Dictionaries versus Regular Expressions. Modules and Functions Writing your own modules, containers versus packages, virtual environments. Best practices, calling functions, writing your own functions. Parameters, arguments. Named arguments, dictionaries as arguments. Builtins. Docstrings. Main. __name__, __main__ . Program arguments. Hands on: Getting interfaces, showing interface status using Netmiko and functions. Using dictionaries as arguments. Writing your own modules. Parsing strategies Turning unstructured data into structured data. textfsm, PyATS Genie parser, NAPALM getters, Template Text Parser. Hands on: Genie parser, TTP. Accessing structured data with lists and dictionaries. Classes, objects and Python Python classes in Genie, PyEZ and others . Hands on: studying network automation classes, objects, methods and attributes. Configuration management - more nornir, ncclient, requests Nornir tasks. Nornir results, Nornir functions, Nornir plugins. Nornir processors. YANG, YANG models, pyang. NETCONF hello. Capabilities. Schemas. Filters. Subtrees. XPATH. Exploring available YANG data models. NETCONF and network wide transactions. Asserting NETCONF capabilities. Configuration types. Locking configurations, commits. NETCONF data stores. Netconf-console. RESTCONF differences from NETCONF. URI construction. Postman. More XML and JSON. Git and configuration versions. Hands on: Nornir and Jinja2. Exploring available models, NETCONF filters. Using postman. Python error handling and debugging Context handlers, try, assert, logging, pdb, pytest, unit testing, chatgpt. Hands on: Writing code with each of the error handling methods, investigating what happens on an error. Use chatgpt to debug your code. Python Automation Testing Testing and validation. pyATS, Genie. Testbed file. Genie parse, genie learn, genie diff. Genie conf, Genie ops, Genie SDK, Genie harness. Xpresso. Hands on: Using Genie for state comparisons of the network. Network analysis Batfish, pybatfish, configuration analysis, analysing routing, analysing ACLs. Pandas. Pandas dataframe. Filtering and selecting values of interest. Hands on: Use Batfish to analyse network snapshots, find network adjacencies, flow path analysis. Network observability Suzieq, using docker, using as a package. Sqpoller, suzieq-gui, suzieq-cli, sq-rest-server. Namespaces and seeing devices, network state and Asserts. Time based analysis, snapshots and changes. Hands on: Suzieq: Gathering data from the network, analysing data from the network. Network state assertion. Telemetry gRPC, gNMI. CAP, GET, SET. Subscriptions. Model Driven telemetry. Hands on: Analysing telemetry data with Python. Concurrency asyncio, threads, processes. Nornir concurrency. Scrapli and netmiko concurrency. Hands on: Multiple SSH connections to devices at same time. Scarpli asyncio.
Advanced Java training course description A tour of the more advanced features of Java following on from the Introduction to Java course. JDBC and JavaBeans are covered in separate courses. What will you learn Use Java to implement OOA/D. Use within Java programs - Internationalisation - Object serialisation - Reflection - RMI - Swing - JAR files Write Servlets and Java Server Pages Advanced Java training course details Who will benefit: Those wishing to program in Java. Prerequisites: Introduction to Java programming Duration 5 days Advanced Java training course contents What you should already know OO features in Java Static initialisers, object destruction, finalisation, constructor chaining, shadowing, Abstract classes and interfaces, inner classes, nested classes, member classes, local classes, anonymous classes. Internationalisation Locales, Unicode, local customs, localising messages. Object Serialisation Simple and custom serialisation, class versioning. Reflection Obtaining class and member information. RMI Restrictions, RMI architecture, Stubs, skeletons, rmic, the registry server, The RMI API. Swing An overview, examples, comparison vs. AWT, data transfer cut & paste. Servlets Servlet API, Java Web server, The servlet life cycle, chaining servlets, Hybrid servlets. JAR files and signed applet JAR files and signed applet
Linux virtualization and HA training course description The LPIC-3 certification is the culmination of LPI's multi -level professional certification program. LPIC-3 is designed for the enterprise-level Linux professional and represents the highest level of professional, distribution neutral Linux certification within the industry. LPIC-3 304 covers administering Linux enterprise-wide with an emphasis on virtualization and high availability. At SNT we have enhanced the contents of the course by covering containers. What will you learn Manage Virtual Machines. Manage containers. Manage HA clusters. Manage HA cluster storage. Linux virtualization and HA training course details Who will benefit: Linux professionals working with virtualization and/or High availability. Prerequisites: Linux network administration 2 (LPIC-2) Duration 5 days Linux virtualization and HA training course contents VIRTUALIZATION Virtualization concepts and theory Terminology, Pros and Cons of virtualization, variations of Virtual Machine monitors, migration of physical to VMs, migration of VMs between host systems, cloud computing. Xen Xen architecture, networking and storage, Xen configuration, Xen utilities, troubleshooting Xen installations, XAPI, XenStore, Xen Boot Parameters, the xm utility. KVM KVM architecture, networking and storage, KVM configuration, KVM utilities, troubleshooting KVM installations. Other virtualization solutions OpenVZ and LXC, other virtualization technologies, virtualization provisioning tools. Libvirt and Related Tools libvirt architecture, networking and storage, basic technical knowledge of libvirt and virsh, oVirt. Cloud Management Tools Basic feature knowledge of OpenStack and CloudStack, awareness of Eucalyptus and OpenNebula. Containers Containers versus VMs, Docker, Kubernetes. Load balanced clusters of LVS/IPVS, VRRP, configuration of keepalived, configuration of ldirectord, backend server network configuration. HAProxy, configuration of HAProxy. Failover clusters Pacemaker architecture and components (CIB, CRMd, PEngine, LRMd, DC, STONITHd), Pacemaker cluster configuration, Resource classes (OCF, LSB, Systemd, Upstart, Service, STONITH, Nagios), Resource rules and constraints (location, order, colocation), Advanced resource features (templates, groups, clone resources, multi-state resources), Pacemaker management using pcs, Pacemaker management using crmsh, configuration and management of corosync in conjunction with Pacemaker, other cluster engines (OpenAIS, Heartbeat, CMAN). HIGH AVAILABILITY CLUSTER STORAGE DRBD/cLVM DRBD resources, states and replication modes, configuration of DRBD resources, networking, disks and devices, configuration of DRBD automatic recovery and error handling, management of DRBD using drbdadm. drbdsetup and drbdmeta, Integration of DRBD with Pacemaker, cLVM, integration of cLVM with Pacemaker. Clustered File Systems Principles of cluster file systems. Create, maintain and troubleshoot GFS2 file systems in a cluster, create, maintain and troubleshoot OCFS2 file systems in a cluster, Integration of GFS2 and OCFS2 with Pacemaker, the O2CB cluster stack, other commonly used clustered file systems.
Windows PowerShell training course description This course is intended for IT Professionals who are already experienced in general Windows Server and Windows Client administration, and who want to learn more about using Windows PowerShell for administration. No prior experience with any version of Windows PowerShell, or any scripting language, is assumed. This course is also suitable for IT Professionals already experienced in server administration, including Exchange Server, SharePoint Server, SQL Server, System Center, and others. What will you learn Work with Windows PowerShell pipeline. Query system information by using WMI and CIM. Work with variables, arrays, and hash tables. Write advanced scripts in Windows PowerShell. Administer remote computers. Use advanced Windows PowerShell techniques. Windows PowerShell training course details Who will benefit: IT professionals. Prerequisites: Supporting Windows Server Duration 5 days Windows PowerShell training course contents Getting started with Windows PowerShell Overview and background of Windows PowerShell, Understanding command syntax, Finding commands. Hands on Configuring Windows PowerShell console & ISE application. Hands on Finding and running basic commands, Using the About files. Cmdlets for administration Active Directory administration cmdlets, Network configuration cmdlets, Other server administration cmdlets. Hands on Windows Administration. Creating and managing Active Directory objects, Configuring network settings on Windows Server, Creating a web site. Working with the Windows PowerShell pipeline Understanding the pipeline, Selecting, sorting, and measuring objects, Filtering objects out of the pipeline, enumerating objects in the pipeline, Sending pipeline data as output. Hands on Using the pipeline. Selecting, sorting, and displaying data. Hands on Filtering objects. Hands on Enumerating objects. Hands on Sending output to a file. Exporting user information to a file. Understanding how the pipeline works Passing the pipeline data, Advanced considerations for pipeline data. Hands on Working with pipeline parameter binding. Predicting pipeline behaviour. Using PSProviders and PSDrives Using PSProviders, Using PSDrives. Hands on Using PSProviders and PSDrives Creating files and folders on a remote computer, Creating a registry key for your future scripts, Create a new Active Directory group. Querying system information by using WMI and CIM Understanding WMI and CIM, Querying data by using WMI and CIM, Making changes with WMI/CIM. Hands on Working with WMI and CIM. Querying information by using WMI, Querying information by using CIM, Invoking methods. Working with variables, arrays, and hash tables Manipulating variables, arrays and hash tables. Hands on Working with variables, Using arrays, Using hash tables. Basic scripting Introduction to scripting, Scripting constructs, Importing data from files. Hands on Basic scripting. Setting a script, Processing an array with a ForEach loop, Processing items by using If statements, Creating a random password, Creating users based on a CSV file. Advanced scripting Accepting user input, Overview of script documentation, Troubleshooting and error handling, Functions and modules. Hands on Accepting data from users. Querying disk information from remote computers, Updating the script to use alternate credentials, Documenting a script. Hands on Implementing functions and modules. Creating a logging function, Adding error handling to a script, Converting a function to a module. Administering Remote Computers Using basic Windows PowerShell remoting, Using advanced Windows PowerShell remoting techniques, Using PSSessions. Hands on Using basic remoting. Enabling remoting on the local computer, Performing one-to-one remoting, Performing one-to-many remoting. Hands on Using PSSessions. Using implicit remoting, Managing multiple computers. Using background jobs and scheduled jobs Using background jobs, Using scheduled jobs. Hands on Using background jobs and scheduled jobs. Starting and managing jobs, Creating a scheduled job. Using advanced Windows PowerShell techniques Creating profile scripts, Using advanced techniques. Hands on Practicing advanced techniques. Creating a profile script, Verifying the validity of an IP address, Reporting disk information, Configuring NTFS permissions, Creating user accounts with passwords from a CSV file. Hands on Practicing script development (optional)
Network DevOps course description This course is not a soft skills course covering the concepts of DevOps but instead concentrates on the technical side of tools and languages for network DevOps. Particular technologies focussed on are ansible, git and Python enabling delegates to leave the course ready to starting automating their network. Hands on sessions follow all major sections. More detailed courses on individual aspects of this course are available. What will you learn Evaluate network automation tools. Automate tasks with ansible. Use git for version control. Use Python to manage network devices. Use Python libraries for network devices. Network DevOps course details Who will benefit: Administrators automating tasks. Prerequisites: TCP/IP Foundation Duration 5 days Network DevOps course contents What is DevOps Programming and automating networks, networks and clouds, AWS, OpenStack, SDN, DevOps for network operations. Initial configuration Configuring SSH, ZTP, POAP. Hands on Initial lab configuration. Getting started with ansible The language, the engine, the framework. Uses of ansible, orchestration. The architecture, Controlling machines, nodes, Agentless, SSH, modules. Configuration management, inventories, playbooks, modules, roles. Hands on Installing ansible, running ad hoc commands. Ansible playbooks ansible-playbook, YAML, plays, tasks, handlers, modules. Playbook variables. Register module, debug module. Hands on Running playbooks. Ansible Inventories /etc/ansible/hosts, hosts, groups, static inventories, dynamic inventories. Inventory variables, external variables. Limiting hosts. Hands on Static inventories, variables in inventory files. Ansible modules for networking Built in modules, custom modules, return values. Core modules for network operations. Cisco and/or Juniper modules. ansible_connection. Ansible 2.6 CLI. Hands on Using modules. Ansible templating and roles aConfiguration management, full configurations, partial configurations. The template module, the assemble module, connection: local, Jinja2 templates, variables, if, for, roles. Hands on Generating multiple configurations from a template. Network programming and modules Why use Python? Why use ansible? alternatives, ansible tower, Linux network devices. Programming with Python Python programming Functions. Classes, objects and instances, modules, libraries, packages. Python strings, Python file handling, pip list, pip instal. Hands on Python programming with pyping. More Python programming Functions. Classes, objects and instances, modules, libraries, packages. Python strings, Python file handling, pip list, pip install. Hands on Python programming with pyping. Git Distributed version control, repositories, Git and GitHub, Alternatives to GitHub, Installing git, git workflows, creating repositories, adding and editing files, branching and merging, merge conflicts. Hands on working with Git. Python and networking APIs, Sockets, Telnetlib, pysnmp, ncclient, ciscoconfparse. Paramiko SSH and Netmiko Integrating Python and network devices using SSH. Netmiko, Netmiko methods. Hands on Netmiko. NAPALM What is NAPALM, NAPALM operations, getters, Replace, merge, compare, commit, discard. Hands on Configuration with NAPALM. Integrating ansible and NAPALM. Python and REST REST APIs, enabling the REST API. Accessing the REST API with a browser, cURL, Python and REST, the request library. Hands on Using a REST API with network devices.
Network management technologies course description A comprehensive tour of the available network management technologies available for todays networks. The course starts with basic tools such as syslog along with Python network automation. SNMP is then covered with the *flow technologies and streaming telemetry. Configuration management with ansible, Python, NETCONF and RESTCONF is then studied. The final part of the course looks at SDN. Hands on sessions are used throughout to reinforce the theory rather than teach specific manufacturer equipment. Note that sections are available as individual courses. What will you learn Evaluate network management technologies. Evaluate network management technologies. Recognise the weaknesses of SNMP versus NETCONF and streaming telemetry. Explain the role of NETCONF and RESTCONF. Compare & contrast *flow and streaming telemetry. Explain the role of SDN in network management. Automate network configuration with ansible and Python. Network management technologies course details Who will benefit: Those wishing to manage networks. (Previous Python experience is NOT needed) Prerequisites: Intro to data comms Duration 5 days Network management technologies course content Basic network management Network management What is network management? Benefits, issues. FCAPS model. Fault management, Configuration management, accounting, performance, security. What to manage, what not to manage. Managing network devices, managing servers. Monitoring networks Traditional network tools Ping..., SSH, syslog, TFTP for configurations. nmap. Wireshark. CLI. Web based management. Splunk. Nessus, snort, Kali. Hands on syslog, network inventories. Network automation using the CLI Programming and automating networks, netOps. Python, Git. Python network modules, SSH, paramiko, netmiko. EVE-NG. Hands onPython network modules. Structured versus unstructured data Problems with automation and unstructured data. XML, JSON, YAML. The role of YANG. Hands on Parsing data. SNMP SNMP architecture, SNMP MIBs, SMI, the SNMP protocol, polling security. Configuring SNMP. SNMPv1, v2, v3, SNMP security. Which version should you use? MIBs and MIB structure. mib-2, extra parts of mib-2, Private enterprise MIBs. Summary: What SNMP is good/bad at. Hands on Configuring agents and a NMS. MIB browsing. Server management Microsoft, Linux, application polling. WMI vs SNMP. Hands on: Application polling. Performance management *flow Polling, push vs pull, netflow, sflow, IPFIX, *flow. Flows. Where to monitor traffic. Comparing *flow with SNMP. Architecture: Generators and collectors. When flows are exported. NetFlow reporting products. SolarWinds. Hands on Netflow configuration. Collectors. Streaming telemetry Model driven telemetry, periodic/on change. Structured data. Telemetry protocol stack. gRPC and gNMI. Protobuf. gNMI operations. Telemetry architecture. Telegraf, databases, Grafana. Hands on Telemetry example. Configuration management Configuration management tools Chef, puppet, ansible, saltstack. Ansible architecture, controlling machines, nodes, agentless, SSH, modules. Inventories, playbooks, modules, network modules, jinja2 templates. Hands on Network configuration with ansible. NETCONF What is NETCONF? Protocol stack, Data stores, traffic flows, validating configurations, rollback. YANG data models and how YANG is used by NETCONF. XML. Explorers and other tools. Hands on anx, Python and NETCONF. RESTCONF The REST API, HTTP, What is RESTCONF? Tools including Postman. Comparison with NETCONF. Hands on Configuration with RESTCONF. Python network automation: configuration SSH issues. Using structured data. Jinja2. ncclient, requests, NAPALM, Nornir. Automated testing. Hands on Python network device configuration with nornir. Software Defined Networks and orchestration Classic SDN What is SDN? benefits. SDN architecture. SDN applications, SDN switches, SDN controllers, Network Operating Systems. Control plane, data plane. Northbound interfaces. SDN components. Southbound interfaces. OpenFlow. ONF, OpenFlow ports, Flow tables. Network virtualization Virtual networks, virtual switches, NfV. Service chaining. NfV and SDN. SDN implementations Classic SDN, Hybrid SDN, SDN via APIs, SDN via overlays. Data centre SDN, VXLAN, Service Provider SDN, SD WAN, Enterprise SDN, WiFi. SDN and open source OpenDaylight, OpenVSwitch, Open Networking Forum, Open Network Operating System. Hands onOpenStack. SD-WAN What is SD-WAN? Architecture: Edge, gateway, orchestrator, controller. Overlay and underlay. Use of MPLS, 4G/5G. Benefits and features. Secure Access Service Edge (SASE).