python 网络编程_Python网络编程(原书第2版)

20190717092513713.jpg

Python网络编程(原书第2版)

作者:(美)埃里克·周(Eric Chou) 著

出版日期:2019年06月

文件大小:54.50M

支持设备:

¥68.00

适用客户端:

ys-logo.png言商书局

iPad/iPhone客户端:下载 Android客户端:下载PC客户端:下载更多详情:查看

?对图书下载、阅读卡购买有疑问:立即进入帮助中心>>

图书简介

目录

本书从使用者的角度出发,学习难度逐渐增加。首先简单回顾了TCP/IP和Python基础知识,然后探讨了如何使用Python管理网络设备,尤其是如何与传统的路由器和交换机进行通信。之后介绍了如何使用Python自动化框架Ansible来实现批量系统配置、批量程序部署、批量运行命令等功能,如何采用Python工具实现基础的网络安全管理,如何使用Python进行网络监控、搭建Web服务,还介绍了其他的网络运维管理相关技术,如Git代码仓库的使用、Jenkins持续集成和网络的测试驱动开发等。本书包含的内容涉及许多基础工具的使用,每个知识点都有示例代码,读者可以一边学习,一边实践。本书是一本实用型的基础技术实践工具书,技术性较强,如果你想快速了解计算机网络管理、网络安全、自动化运维、Python Web搭建、网络测试相关的知识,本书很适合你。本书涵盖的知识点主要是网络运维相关技术,在学习完所有的章节之后,读者能对网络的管理有初步的了解。每个章节的后面部分都是有一定难度的扩展资源,循序渐进,帮助读者提升网络运维能力。

译者序

前言

关于作者

关于审稿人

第1章 回顾TCP/IP协议簇和Python

1.1 互联网概述

1.1.1 服务器、主机和网络组件

1.1.2 数据中心的兴起

1.2 OSI模型

1.3 客户端-服务器模型

1.4 网络协议簇

1.4.1 传输控制协议

1.4.2 用户数据报协议

1.4.3 互联网协议

1.5 Python语言概述

1.5.1 Python版本

1.5.2 操作系统

1.5.3 运行一个Python程序

1.5.4 Python内置类型

1.5.5 Python操作符

1.5.6 Python控制流工具

1.5.7 Python函数

1.5.8 Python类

1.5.9 Python模块和包

1.6 小结

第2章 低级网络设备交互

2.1 CLI面临的挑战

2.2 搭建虚拟实验

2.2.1 Cisco VIRL

2.2.2 Cisco DevNet和Cisco dCloud

2.2.3 GNS3

2.3 Python Pexpect库

2.3.1 Pexpect安装

2.3.2 Pexpect概述

2.3.3 第一个Pexpect程序

2.3.4 Pexpect的更多功能

2.3.5 Pexpect和SSH

2.3.6 将Pexpect的所有内容都放到脚本中

2.4 Python Paramiko库

2.4.1 Paramiko安装

2.4.2 Paramiko概述

2.4.3 第一个Paramiko程序

2.4.4 Paramiko的更多功能

2.4.5 Paramiko可重用性

2.5 展望

2.6 小结

第3章 API和意图驱动网络

3.1 基础设施作为代码

3.1.1 意图驱动网络

3.1.2 屏幕抓取与API结构化输出

3.1.3 基础设施的数据建模作为代码

3.2 Cisco API和Cisco ACI

3.2.1 Cisco NX-API

3.2.2 Cisco和YANG模型

3.2.3 Cisco ACI

3.3 Juniper网络的Python API

3.3.1 Juniper和NETCONF

3.3.2 开发者的Juniper PyEZ

3.4 Arista Python API

3.4.1 Arista eAPI管理

3.4.2 Arista Pyeapi库

3.5 厂商中立的库

3.6 小结

第4章 Python自动化框架——Ansible基础知识

4.1 一个更具声明性的框架

4.2 Ansible示例

4.2.1 控制节点安装

4.2.2 运行不同版本的Ansible源代码

4.2.3 实验建立

4.2.4 第一个Ansible playbook示例

4.3 Ansible的优点

4.3.1 无代理

4.3.2 幂等性

4.3.3 简单且可扩展

4.3.4 网络供应商支持

4.4 Ansible架构

4.4.1 YAML

4.4.2 清单

4.4.3 变量

4.4.4 使用Jinja2的模板

4.5 Ansible网络模块

4.5.1 本地连接和facts

4.5.2 provider参数

4.6 Ansible Cisco示例

4.7 Ansible Juniper示例

4.8 Ansible Arista示例

4.9 小结

第5章 Python自动化框架——进阶知识

5.1 Ansible条件语句

5.1.1 when子句

5.1.2 Ansible网络facts

5.1.3 网络模块的条件化

5.2 Ansible循环

5.2.1 标准循环

5.2.2 循环字典

5.3 模板

5.3.1 Jinja2模板

5.3.2 Jinja2循环

5.3.3 Jinja2的条件化

5.4 组变量和主机变量

5.4.1 组变量

5.4.2 主机变量

5.5 Ansible Vault

5.6 Ansible的include和角色

5.6.1 Ansible的include语句

5.6.2 Ansible的角色

5.7 编写自定义Ansible模块

5.7.1 第一个自定义模块

5.7.2 第二个自定义模块

5.8 小结

第6章 Python下的网络安全

6.1 搭建实验环境

6.2 Python Scapy

6.2.1 安装Scapy

6.2.2 交互示例

6.2.3 嗅探

6.2.4 TCP端口扫描

6.2.5 ping集合

6.2.6 常见攻击

6.2.7 Scapy资源

6.3 访问列表

6.3.1 使用Ansible实现访问列表

6.3.2 MAC访问列表

6.4 Syslog搜索

6.5 其他工具

6.5.1 专用VLAN

6.5.2 使用Python的UFW

6.5.3 延伸阅读

6.6 小结

第7章 Python下的网络监控——第一部分

7.1 实验准备

7.2 SNMP

7.2.1 准备

7.2.2 PySNMP

7.3 用于数据可视化的Python

7.3.1 Matplotlib

7.3.2 Pygal

7.4 用于Cacti的Python

7.4.1 安装

7.4.2 作为输入源的Python脚本

7.5 小结

第8章 Python下的网络监控——第二部分

8.1 Graphviz

8.1.1 实验准备

8.1.2 安装

8.1.3 Graphviz示例

8.1.4 Python Graphviz示例

8.1.5 LLDP邻居绘图

8.2 基于流程的监控

8.2.1 Python下的NetFlow解析

8.2.2 ntop流量监视

8.2.3 sFlow

8.3 Elasticsearch(ELK堆栈)

8.3.1 设置托管ELK服务

8.3.2 Logstash格式

8.3.3 Logstash格式的Python助手脚本

8.4 小结

第9章 使用Python构建网络Web服务

9.1 Python Web相关框架比较

9.2 Flask和实验设置

9.3 Flask的相关介绍

9.3.1 HTTPie客户端

9.3.2 URL路由

9.3.3 URL变量

9.3.4 URL的生成

9.3.5 jsonify返回值

9.4 网络资源API

9.4.1 Flask-SQLAlchemy

9.4.2 网络内容API

9.4.3 API设备

9.4.4 API的设备ID

9.5 网络动态操作

9.6 安全

9.7 其他资源

9.8 小结

第10章 AWS云网络

10.1 AWS准备工作

10.2 AWS网络概述

10.3 虚拟私有云

10.3.1 路由表和路由目标

10.3.2 使用CloudFormation实现自动化

10.3.3 安全组和网络ACL

10.3.4 弹性IP

10.3.5 NAT网关

10.4 直连和VPN

10.4.1 VPN网关

10.4.2 直连

10.5 网络扩展服务

10.5.1 弹性负载平衡

10.5.2 Route53 DNS服务

10.5.3 CloudFront CDN服务

10.6 其他AWS网络服务

10.7 小结

第11章 Git的使用

11.1 Git简介

11.1.1 Git的好处

11.1.2 Git术语

11.1.3 Git和GitHub

11.2 设置Git

11.3 Git用法示例

11.4 在Python中使用Git

11.4.1 GitPython

11.4.2 PyGitHub

11.5 自动配置备份

11.6 与Git协作

11.7 小结

第12章 使用Jenkins持续集成

12.1 传统的变更管理流程

12.2 持续集成简介

12.3 安装Jenkins

12.4 Jenkins示例

12.4.1 Python脚本的第一个作业

12.4.2 Jenkins插件

12.4.3 网络持续集成示例

12.5 使用Python-Jenkins

12.6 网络的持续集成

12.7 小结

第13章 网络的测试驱动开发

13.1 测试驱动开发概述

13.2 拓扑作为代码

13.3 更多关于Python测试的信息

13.4 编写网络测试

13.4.1 测试可达性

13.4.2 测试网络延迟

13.4.3 测试安全性

13.4.4 测试事务

13.4.5 测试网络配置

13.4.6 测试Ansible

13.5 在Jenkins中使用pytest

13.6 小结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值