Chou | Mastering Python Networking | E-Book | sack.de
E-Book

E-Book, Englisch, 594 Seiten

Chou Mastering Python Networking

Utilize Python packages and frameworks for network automation, monitoring, cloud, and management
4. Auflage 2023
ISBN: 978-1-80324-232-3
Verlag: De Gruyter
Format: EPUB
Kopierschutz: 0 - No protection

Utilize Python packages and frameworks for network automation, monitoring, cloud, and management

E-Book, Englisch, 594 Seiten

ISBN: 978-1-80324-232-3
Verlag: De Gruyter
Format: EPUB
Kopierschutz: 0 - No protection



Networks in your infrastructure set the foundation for deploying, maintaining, and servicing applications. Python is the ideal language for network engineers to explore tools that were previously available to systems engineers and application developers. Mastering Python Networking, Fourth edition, guides you on a Python-driven journey from traditional network engineering to modern network development.
This new edition incorporates the latest Python features and DevOps frameworks. In addition to new chapters on introducing Docker containers and Python 3 Async IO for network engineers, each chapter is updated with the latest libraries and working examples to ensure compatibility and clarity of the concepts.
Starting with a basic overview of Python, the book teaches you how it can interact with both legacy and API-enabled network devices. You will learn to leverage high-level Python packages and frameworks to perform network automation tasks, monitoring, management, and enhanced network security, followed by AWS and Azure cloud networking. You will use Git for code management, GitLab for continuous integration, and Python-based testing tools to verify your network.
By the end of this book, you'll be a confident network developer capable of automating modern infrastructure using Python, DevOps practices, and cloud technologies.

Chou Mastering Python Networking jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material


Table of Contents - Review of TCP/IP Protocol Suite and Python
- Low-Level Network Device Interactions
- APIs and Intent-Driven Networking
- The Python Automation Framework – Ansible
- Docker Containers for Network Engineers
- Network Security with Python
- Network Monitoring with Python - Part 1
- Network Monitoring with Python - Part 2
- Building Network Web Services with Python
- Introduction to AsyncIO
- AWS Cloud Networking
- Azure Cloud Networking
- Network Data Analysis with Elastic Stack
- Working with Git
- Continuous Integration with GitLab
- Test-Driven Development for Networks


Contents


  1. Preface
    1. Who this book is for
    2. What this book covers
    3. To get the most out of this book
    4. Get in touch
    5. Share your thoughts
    6. Download a free PDF copy of this book
  2. Review of TCP/IP Protocol Suite and Python
    1. An overview of the Internet
      1. Servers, hosts, and network components
      2. The rise of data centers
        1. Enterprise data centers
        2. Cloud data centers
        3. Edge data centers
    2. The OSI model
    3. The client-server model
    4. Network protocol suites
      1. The transmission control protocol
        1. Functions and characteristics of TCP
        2. TCP messages and data transfer
      2. The user datagram protocol
      3. The Internet protocol
        1. IP network address translation (NAT) and network security
        2. IP routing concepts
    5. Python language overview
      1. Python versions
      2. Operating system
      3. Running a Python program
      4. Python built-in types
        1. The None type
        2. Numerics
        3. Sequences
        4. Mapping
        5. Sets
      5. Python operators
      6. Python control flow tools
      7. Python functions
      8. Python classes
      9. Python modules and packages
    6. Summary
  3. Low-Level Network Device Interactions
    1. The challenges of the CLI
    2. Constructing a Virtual lab
      1. Physical devices
      2. Virtual devices
      3. Cisco modeling labs
        1. CML tips
      4. Cisco DevNet
      5. GNS3 and others
    3. Python virtual environment
    4. Python pexpect library
      1. Pexpect installation
      2. Pexpect overview
      3. Our first Pexpect program
      4. More Pexpect Features
      5. Pexpect and SSH
      6. Pexpect complete example
    5. The Python Paramiko library
      1. Installation of Paramiko
      2. Paramiko overview
      3. First Paramiko program
      4. More Paramiko features
        1. Paramiko for servers
      5. More Paramiko examples
    6. The Netmiko library
    7. The Nornir framework
      1. Downsides of Pexpect and Paramiko compared to other tools
        1. Idempotent network device interaction
        2. Bad automation speeds up bad things
    8. Summary
  4. APIs and Intent-Driven Networking
    1. Infrastructure-as-Code (IaC)
      1. Intent-driven networking
      2. Screen scraping versus API structured output
      3. Data modeling for IaC
      4. YANG and NETCONF
    2. Cisco API examples
      1. Cisco NX-API
        1. Lab preparation
        2. NX-API examples
      2. The Cisco YANG Model
      3. The Cisco ACI examples
    3. Cisco Meraki controller
    4. The Python API for Juniper Networks
      1. Juniper and NETCONF
        1. Device preparation
        2. Juniper NETCONF examples
      2. Juniper PyEZ for developers
        1. Installation and preparation
        2. PyEZ examples
    5. The Arista Python API
      1. Arista eAPI management
        1. eAPI preparation
        2. eAPI examples
      2. The Arista Pyeapi library
        1. Pyeapi installation
        2. Pyeapi examples
    6. VyOS example
    7. Other libraries
    8. Summary
  5. The Python Automation Framework – Ansible
    1. Ansible – A More Declarative Framework
      1. Ansible Versions
    2. Our First Ansible Network Example
      1. The Control Node Installation
      2. Lab Topology
        1. The Variable Files
        2. Our First Playbook
    3. The Advantages of Ansible
      1. Agentless
      2. Idempotence
      3. Simple and Extensible
    4. Ansible Content Collections
    5. More Ansible Network Examples
      1. Inventory Nesting
      2. Ansible Conditionals
      3. Configuration Change
      4. Ansible Network Facts
      5. Ansible Loops
        1. Standard Loops
        2. Looping over Dictionaries
      6. Templates
        1. The Jinja Template Variables
        2. Jinja Template Loops
        3. Jinja Template Conditional
    6. Summary
  6. Docker Containers for Network Engineers
    1. Docker Overview
      1. Advantages of Docker
    2. Building Python applications in Docker
      1. Installing Docker
      2. Useful Docker commands
      3. Building hello world
      4. Building our application
      5. Sharing Docker images
      6. Container orchestration with Docker-compose
    3. Container networking
      1. Container host network
      2. Custom bridge network
      3. Other container network options
    4. Containers in the network engineering field
      1. Containerlab
    5. Docker and Kubernetes
    6. Summary
  7. Network Security with Python
    1. The Lab Setup
    2. Python Scapy
      1. Installing Scapy
      2. Interactive examples
      3. Packet captures with Scapy
      4. The TCP port scan
      5. The ping collection
      6. Common attacks...


Chou Eric:
Eric Chou is a seasoned technologist with over 20 years of experience. He has worked on some of the largest networks in the industry while working at Amazon, Azure, and other Fortune 500 companies. Eric is passionate about network automation, Python, DevOps, and helping companies build better security postures. In addition to being the author of Mastering Python Networking (Packt), he is the author or co-author of other top-selling books and highly-rated online classes. Eric is the primary inventor or co-inventor for three U.S. patents in IP telephony and networking. He shares his deep interest in technology through his books, classes, blog, and contributes to some of the popular Python open source projects.



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.