基础设施中的网络为应用程序的部署、维护和服务奠定了基础。Python是网络工程师的理想语言,可用于探索先前由系统工程师和应用程序开发人员所使用的那些工具。在《精通Python网络编程(第2版 影印版 英文版)》的第二版中,您将踏上从传统的网络工程师过渡到下一代网络开发人员的Python之旅。《精通Python网络编程(第2版影印版 英文版)》首先回顾了Python的基础知识,讲述了如何使用Python与传统型和支持API的网络设备进行交互。然后,你会学习到利用高级Python软件包和框架来实现自动化、监控、管理以及安全增强等的网络工程任务。在后,你要使用Jenkins进行持续网络集成,另外还包括于验证网络的测试工具。结束《精通Python网络编程(第2版 影印版 英文版)》之时,你将能够通过Python完成所有的网络任务。
Preface
Chapter 1: Review of TCP/IP Protocol Suite and Python
An overview of the internet
Servers, hosts, and network components
The rise of data centers
Enterprise data centers
Cloud data centers
Edge data centers
The OSI model
Client-server model
Network protocol suites
The transmission control protocol
Functions and characteristics of TCP
TCP messages and data transfer
User datagram protocol
The internet protocol
The IP NAT and security
IP routing concepts
Python language overview
Python versions
Operating system
Running a Python program
Python built-in types
The None type
Numerics
Sequences
Mapping
Sets
Python operators
Python control flow tools
Python functions
Python classes
Python modules and packages
Summary
Chapter 2: Low-Level Network Device Interactions
The challenges of the CLI
Constructing a virtual lab
Cisco VIRL
VIRL tips
Cisco DevNet and dCloud
GNS3
Python Pexpect library
Pexpect installation
Pexpect overview
Our first Pexpect program
More Pexpect features
Pexpect and SSH
Putting things together for Pexpect
The Python Paramiko library
Installation of Paramiko
Paramiko overview
Our first Paramiko program
More Paramiko features
Paramiko for servers
Putting things together for Paramiko
Looking ahead
Downsides of Pexpect and Paramiko compared to other tools
Idempotent network device interaction
Bad automation speeds bad things up
Summary
Chapter 3: APIs and Intent-Driven Networking
Infrastructure as code
Intent-Driven Networking
Screen scraping versus API structured output
Data modeling for infrastructure as code
The Cisco API and ACI
Cisco NX-API
Lab software installation and device preparation
NX-API examples
The Cisco and YANG models
The Cisco ACI
The Python API for Juniper networks
Juniper and NETCONF
Device preparation
Juniper NETCONF examples
Juniper PyEZ for developers
Installation and preparation
PyEZ examples
The Arista Python API
Arista eAPI management
The eAPI preparation
eAPI examples
The Arista Pyeapi library
Pyeapi installation
Pyeapi examples
Chapter 4:The Python Automation FrameworkAnsible Basics
Chapter 5:The Python Automation FrameworkBevond Basics
Chapter 6:Network Security with Python
Chapter 7:Network Monitoring with PythonPart 1
Chapter 8:Network Monitoring with PythonPart 2
Chapter 9:Building Network Web Services with Python
Chapter 10:AWS Cloud Networking
Chapter 11:Working with Git
Chapter 12:Continuous Integration with Jenkins
Chapter13:Test-Driven Development for Networks
Other Books You May Enjoy
Index