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

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

出版日期:2019年06月

文件大小:54.50M

支持设备:

¥68.00

适用客户端:

言商书局

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 小结

python 网络编程_Python网络编程(原书第2版)相关推荐

  1. 比肩犀牛书的《JavaScript编程精》原书第3版(中文版)重磅来袭!文末福利

    JavaScript在网络时代诞生,从为静态网页添加各种炫目的特效,到现在几乎所有在线的交互网站和小程序,都大量使用了JavaScript.我们几乎每天都通过浏览器和各种应用与它打交道,它已成为我们日 ...

  2. 计算机python程序设计导论,程序设计导论:Python计算与应用开发实践(原书第2版)...

    程序设计导论:Python计算与应用开发实践(原书第2版) 语音 编辑 锁定 讨论 上传视频 <程序设计导论:Python计算与应用开发实践(原书第2版)>是2018年机械工业出版社出版的 ...

  3. 《计算机网络:自顶向下方法(原书第6版)》一2.7 TCP套接字编程

    本节书摘来华章计算机<计算机网络:自顶向下方法(原书第6版)>一书中的第2章 ,第2.7节,(美)James F.Kurose Keith W.Ross 著 陈 鸣 译 更多章节内容可以访 ...

  4. python网络提示_python 网络发现

    书籍:掌握Python的网络和安全 Mastering Python for Networking and Security - 2018.pdf 简介 掌握Python的网络和安全 掌握Python ...

  5. 《深入理解Hadoop(原书第2版)》——1.3大数据的编程模型

    本节书摘来自华章计算机<深入理解Hadoop(原书第2版)>一书中的第1章,第1.3节,作者 [美]萨米尔·瓦德卡(Sameer Wadkar),马杜·西德林埃(Madhu Siddali ...

  6. ROS机器人高效编程(原书第3版)勘误、问题及资料汇总

    ROS机器人高效编程(原书第3版)勘误.问题及资料汇总--持续更新 如果小伙伴发现书中错误,恳请批评指正,非常感谢.勘误在文末. 补充一行代码装ROS,适用于14.04LTS(indigo)和16.0 ...

  7. 《C#多线程编程实战(原书第2版)》——第3章 使用线程池 3.1 简介

    本节书摘来自华章出版社<C#多线程编程实战(原书第2版)>一书中的第3章,第3.1节,作者(美)易格恩·阿格佛温(Eugene Agafonov),黄博文 黄辉兰 译,更多章节内容可以访问 ...

  8. 苹果开发之Cocoa编程(原书第4版)

    <苹果开发之Cocoa编程(原书第4版)> 基本信息 原书名:Cocoa Programming for Mac OS X: Fourth Edition 作者: (美)希莱加斯(Hill ...

  9. 《C#多线程编程实战(原书第2版)》——3.2 在线程池中调用委托

    本节书摘来自华章出版社<C#多线程编程实战(原书第2版)>一书中的第3章,第3.2节,作者(美)易格恩·阿格佛温(Eugene Agafonov),黄博文 黄辉兰 译,更多章节内容可以访问 ...

最新文章

  1. java开发安装程序_创建java开发环境安装包
  2. 素数类型C语言题目总结
  3. HTML中的图像和链接
  4. windows下文件路径太深,删除解决方案
  5. 统计推断——假设检验——t 检验(总体的标准差未知)
  6. 下载pyboard的flash中的驱动程序_如何安装爱普生打印机驱动程序
  7. tkinter canvas绘图全攻略(图形项、配置参数和案例详解)
  8. 手把手教你接入快应用Push
  9. 汇编c语言环境搭建原理,什么是一个精简的C语言环境 怎么搭建?
  10. Nirvana为应用而生,开启公链市场新纪元
  11. 产品有复杂的卡扣倒扣,我们如何设计模具结构?
  12. 计算机语言中nl,这个nl_NL语言环境中的日期时间模式是什么?
  13. ajax换头像,ajax切换明星头像!
  14. 带你实现java根据表结构动态导入导出Excel
  15. Android Recovery升级原理
  16. django中bulk_create返回id的三种实现
  17. Linux --- vim 安装、支持python3的配置、插件自动补全YCM的安装配置及全过程错误总结...
  18. 2022年安徽建筑施工电工(建筑特种作业)模拟试题及答案
  19. C# 查询波峰、波谷
  20. 模平方 频谱 matlab db,交叉频谱和幅值平方相干性

热门文章

  1. 理解web项目中的VO,DTO,DO,PO
  2. 生成验证码、模拟登录、手机号屏蔽
  3. 【JavaWeb】火车票管理系统 (一)
  4. 基于Arduino的制作——智能桌面移动风扇灯
  5. 供应链建模思路与案例分享:亚马逊FBA计算器 - 泛欧德国/波兰/捷克配送中心 仓储成本最后一公里配送费
  6. 【行研报告】解码中国创新:过去现在与未来—附下载
  7. 电脑桌面云便签声音提醒怎么开启或关闭?
  8. .p12 证书过期时间查询
  9. 程序员行业是内卷之王吗?C认证能否带你破局?
  10. MATLAB boxplot 字体位置调整以及图片保存问题