开发TCP/IP网络客户端和服务器应用
管理本地设备的IPv4/IPv6网络接口
使用HTTP和HTTPS协议编写用途多、效率高的Web客户端
编写可使用常见电子邮件协议的电子邮件客户端
通过Telnet和SSH连接执行远程系统管理任务
使用Web服务与流行的网站交互
监控并分析重要的常见网络安全漏洞
第1章 套接字、IPv4和简单的客户端/服务器编程1
1.1 简介1
1.2 打印设备名和IPv4地址2
1.2.1 准备工作2
1.2.2 实战演练2
1.2.3 原理分析3
1.3 获取远程设备的IP地址4
1.3.1 实战演练4
1.3.2 原理分析4
1.4 将IPv4地址转换成不同的格式5
1.4.1 实战演练5
1.4.2 原理分析6
1.5 通过指定的端口和协议找到服务名6
1.5.1 准备工作6
1.5.2 实战演练6
1.5.3 原理分析7
1.6 主机字节序和网络字节序之间相互转换7
1.6.1 实战演练7
1.6.2 原理分析8
1.7 设定并获取默认的套接字超时时间8
1.7.1 实战演练8
1.7.2 原理分析9
1.8 优雅地处理套接字错误9
1.8.1 实战演练9
1.8.2 原理分析10
1.9 修改套接字发送和接收的缓冲区大小12
1.9.1 实战演练12
1.9.2 原理分析13
1.10 把套接字改成阻塞或非阻塞模式13
1.10.1 实战演练13
1.10.2 原理分析14
1.11 重用套接字地址14
1.11.1 实战演练14
1.11.2 原理分析16
1.12 从网络时间服务器获取并打印当前时间16
1.12.1 准备工作16
1.12.2 实战演练16
1.12.3 原理分析17
1.13 编写一个SNTP客户端17
1.13.1 实战演练17
1.13.2 原理分析18
1.14 编写一个简单的回显客户端/服务器应用18
1.14.1 实战演练18
1.14.2 原理分析21
第2章 使用多路复用套接字I/O提升性能22
2.1 简介22
2.2 在套接字服务器程序中使用ForkingMixIn23
2.2.1 实战演练23
2.2.2 原理分析25
2.3 在套接字服务器程序中使用ThreadingMixIn25
2.3.1 准备工作26
2.3.2 实战演练26
2.3.3 原理分析27
2.4 使用select.select编写一个聊天室服务器28
2.4.1 实战演练28
2.4.2 原理分析34
2.5 使用select.epoll多路复用Web服务器34
2.5.1 实战演练34
2.5.2 原理分析37
2.6 使用并发库Diesel多路复用回显服务器37
2.6.1 准备工作37
2.6.2 实战演练37
2.6.3 原理分析39
第3章 IPv6、Unix域套接字和网络接口40
3.1 简介40
3.2 把本地端口转发到远程主机41
3.2.1 实战演练41
3.2.2 原理分析43
3.3 通过ICMP查验网络中的主机44
3.3.1 准备工作44
3.3.2 实战演练44
3.3.3 原理分析48
3.4 等待远程网络服务上线48
3.4.1 实战演练48
3.4.2 原理分析50
3.5 枚举设备中的接口51
3.5.1 准备工作51
3.5.2 实战演练51
3.5.3 原理分析52
3.6 找出设备中某个接口的IP地址52
3.6.1 准备工作52
3.6.2 实战演练53
3.6.3 原理分析53
3.7 探测设备中的接口是否开启53
3.7.1 准备工作54
3.7.2 实战演练54
3.7.3 原理分析55
3.8 检测网络中未开启的设备55
3.8.1 准备工作55
3.8.2 实战演练55
3.8.3 原理分析56
3.9 使用相连的套接字执行基本的进程间通信57
3.9.1 准备工作57
3.9.2 实战演练57
3.9.3 原理分析58
3.10 使用Unix域套接字执行进程间通信58
3.10.1 实战演练58
3.10.2 原理分析60
3.11 确认你使用的Python是否支持IPv6套接字61
3.11.1 准备工作61
3.11.2 实战演练61
3.11.3 原理分析63
3.12 从IPv6地址中提取IPv6前缀63
3.12.1 实战演练63
3.12.2 原理分析64
3.13 编写一个IPv6回显客户端/服务器64
3.13.1 实战演练64
3.13.2 原理分析67
第4章 HTTP协议网络编程68
4.1 简介68
4.2 从HTTP服务器下载数据68
4.2.1 实战演练69
4.2.2 原理分析70
4.3 在你的设备中伺服HTTP请求70
4.3.1 实战演练70
4.3.2 原理分析72
4.4 访问网站后提取cookie信息72
4.4.1 实战演练73
4.4.2 原理分析75
4.5 提交网页表单75
4.5.1 准备工作75
4.5.2 实战演练75
4.5.3 原理分析77
4.6 通过代理服务器发送Web请求77
4.6.1 准备工作77
4.6.2 实战演练77
4.6.3 原理分析78
4.7 使用HEAD请求检查网页是否存在78
4.7.1 实战演练78
4.7.2 原理分析79
4.8 把客户端伪装成Mozilla Firefox79
4.8.1 实战演练79
4.8.2 原理分析80
4.9 使用HTTP压缩节省Web请求消耗的带宽80
4.9.1 实战演练81
4.9.2 原理分析82
4.10 编写一个支持断点续传功能的HTTP容错客户端82
4.10.1 实战演练83
4.10.2 原理分析84
4.11 使用Python和OpenSSL编写一个简单的HTTPS服务器84
4.11.1 准备工作84
4.11.2 实战演练84
4.11.3 原理分析86
第5章 电子邮件协议、FTP和CGI编程87
5.1 简介87
5.2 列出FTP远程服务器中的文件87
5.2.1 准备工作87
5.2.2 实战演练88
5.2.3 原理分析89
5.3 把本地文件上传到远程FTP服务器中89
5.3.1 准备工作89
5.3.2 实战演练89
5.3.3 原理分析90
5.4 把当前工作目录中的内容压缩成ZIP文件后通过电子邮件发送91
5.4.1 准备工作91
5.4.2 实战演练91
5.4.3 原理分析93
5.4.4 参考资源94
5.5 通过POP3协议下载谷歌电子邮件94
5.5.1 准备工作94
5.5.2 实战演练94
5.5.3 原理分析95
5.6 通过IMAP协议查收远程服务器中的电子邮件95
5.6.1 准备工作95
5.6.2 实战演练96
5.6.3 原理分析97
5.7 通过Gmail的SMTP服务器发送带有附件的电子邮件97
5.7.1 准备工作97
5.7.2 实战演练97
5.7.3 原理分析99
5.8 使用CGI为基于Python的Web服务器编写一个留言板99
5.8.1 实战演练99
5.8.2 原理分析101
第6章 屏幕抓取和其他实用程序103
6.1 简介103
6.2 使用谷歌地图API搜索公司地址103
6.2.1 准备工作103
6.2.2 实战演练104
6.2.3 原理分析104
6.2.4 参考资源104
6.3 使用谷歌地图URL搜索地理坐标105
6.3.1 实战演练105
6.3.2 原理分析106
6.4 搜索维基百科中的文章106
6.4.1 准备工作107
6.4.2 实战演练107
6.4.3 原理分析109
6.5 使用谷歌搜索股价110
6.5.1 准备工作110
6.5.2 实战演练110
6.5.3 原理分析111
6.6 搜索GitHub中的源代码仓库111
6.6.1 准备工作112
6.6.2 实战演练112
6.6.3 原理分析113
6.7 读取BBC的新闻订阅源114
6.7.1 准备工作114
6.7.2 实战演练114
6.7.3 原理分析115
6.8 爬取网页中的链接116
6.8.1 实战演练116
6.8.2 原理分析118
第7章 跨设备编程119
7.1 简介119
7.2 使用telnet在远程主机中执行shell命令119
7.2.1 准备工作119
7.2.2 实战演练120
7.2.3 原理分析121
7.3 通过SFTP把文件复制到远程设备中121
7.3.1 准备工作122
7.3.2 实战演练122
7.3.3 原理分析123
7.4 打印远程设备的CPU信息123
7.4.1 准备工作123
7.4.2 实战演练124
7.4.3 原理分析125
7.5 在远程主机中安装Python包126
7.5.1 准备工作126
7.5.2 实战演练126
7.5.3 原理分析127
7.6 在远程主机中运行MySQL命令128
7.6.1 准备工作128
7.6.2 实战演练128
7.6.3 原理分析131
7.7 通过SSH把文件传输到远程设备中131
7.7.1 准备工作131
7.7.2 实战演练131
7.7.3 原理分析134
7.8 远程配置Apache运行网站134
7.8.1 准备工作134
7.8.2 实战演练134
7.8.3 原理分析136
第8章 使用Web服务:XML-RPC、SOAP和REST138
8.1 简介138
8.2 查询本地XML-RPC服务器139
8.2.1 准备工作139
8.2.2 实战演练139
8.2.3 原理分析141
8.3 编写一个多线程、多调用XML-RPC服务器141
8.3.1 实战演练141
8.3.2 原理分析143
8.4 运行一个支持HTTP基本认证的XML-RPC服务器143
8.4.1 实战演练143
8.4.2 原理分析146
8.5 使用REST从Flickr中收集一些照片信息146
8.5.1 实战演练146
8.5.2 原理分析149
8.6 找出亚马逊S3 Web服务支持的SOAP方法150
8.6.1 准备工作150
8.6.2 实战演练150
8.6.3 原理分析151
8.7 使用谷歌搜索定制信息151
8.7.1 准备工作151
8.7.2 实战演练151
8.7.3 原理分析152
8.8 通过商品搜索API在亚马逊中搜索图书153
8.8.1 准备工作153
8.8.2 实战演练153
8.8.3 原理分析155
第9章 网络监控和安全性156
9.1 简介156
9.2 嗅探网络数据包156
9.2.1 准备工作156
9.2.2 实战演练157
9.2.3 原理分析158
9.3 使用pcap转储器把数据包保存为pcap格式159
9.3.1 实战演练159
9.3.2 原理分析161
9.4 在HTTP数据包中添加额外的首部162
9.4.1 实战演练162
9.4.2 原理分析163
9.5 扫描远程主机的端口163
9.5.1 实战演练164
9.5.2 原理分析165
9.6 自定义数据包的IP地址165
9.6.1 实战演练165
9.6.2 原理分析167
9.7 读取保存的pcap文件以重放流量167
9.7.1 实战演练167
9.7.2 原理分析169
9.8 扫描数据包的广播169
9.8.1 实战演练169
9.8.2 原理分析170
《大清内务府》内容简介:一本书读懂真正影响帝王行为的那些人那些事 这里是宫廷服务机构,却又是帝王心腹机关。这里的人,远理朝政
《疯狂Java讲义》2000年至今,Java语言一直是应用最广的开发语言,并拥有最广泛的开发人群。如今,Java已经不再简单地是一门语言
《锂离子电池智能制造》内容简介:本书是“21700动力锂电池智能制造新模式项目”的结题成果,项目归口管理部门是工业和信息化部。本
《Python灰帽子》是由知名安全机构ImmunityInc的资深黑帽JustinSeitz主笔撰写的一本关于编程语言Python如何被广泛应用于黑客与逆
《21世纪高等院校电气信息类系列教材•人工神经网络原理及仿真实例》以神经网络结构为主线,以学习算法为副线,详细介绍了神经网络
《通信协议技术》是OHM通信实用技术系列之一。《通信协议技术》中基于以下三方面介绍通信协议技术:(1)通信协议中怎样利用图像
《大脑功能模式(型)理论》内容简介:在主客观事物情境模式不断刺激下,基因遗传决定的大脑生理结构和特性,建构各不相同的生理结
《Nikon D5200单反摄影从入门到精通》内容简介:《Nikon D5200单反摄影从入门到精通》以尼康D5200用户由浅入深的学习过程为线索,详
本书是一本广受好评的Cassandra图书。与传统的关系型数据库不同,Cassandra是一种开源的分布式存储系统。书中介绍了它无中心架构
《书当快意》内容简介:从《西游记》札记中的“多心”之辨到《水浒传》中的“品人录”,从漫谈《红楼》到体悟苏轼,二十九篇读书随
Office 2003中文版教程 内容简介 本书的目的是使读者学会使用Office 2003中文版软件,提高学习与工作效率。 本书详细讲解了0ffice 200...
主板维修技能实训 本书特色 《主板维修技能实训(附光盘)》由专业维修工程师王红军根据多年实践经验精心编写,重点讲解了电脑主板的结构、原理及故障维修诊断方法,主要...
《武则天5: 从三岁到八十二岁》内容简介:武则天82年的人生,前31年,她卷入权斗漩涡,为活命从宫女杀到了皇后的宝座;后51年,她
《神一样的产品经理》内容简介:《神一样的产品经理:基于移动与互联网产品实践》系统阐述了移动与互联网产品从无到有、从有到优的
数据库系统原理教程国家精品课程教材 内容简介 由王珊、陈红编著的《数据库系统原理教程(国家精品课程教材)》系统、完整地讲述了当前数据库技术的基本原理和应用实践。...
《世界顶级时尚品牌&平面设计》的核心是分析23个印刷、颜色选择、展出请柬、网站、香水、化妆品案例,同时探讨时尚设计者和平面设
《Web安全深度剖析》总结了当前流行的高危漏洞的形成原因、攻击手段及解决方案,并通过大量的示例代码复现漏洞原型,制作模拟环境
《宋元笔记述要》内容简介:本书为关于宋元笔记的提要类著作,举凡五代一种,宋代一百四十种,元代十五种,宋元笔记之要者基本被囊
学术理论研究著作集萃.理工学科:基于本体数据库的多标签预测模型及生物医药数据挖掘研究 内容简介 《基于本体数据库的多标签预测模型及生物医药数据挖掘研究》共9章。...
《自己动手写Docker》内容简介:《自己动手写Docker》在详细分析Docker所依赖的技术栈的基础上,一步一步地通过代码实例,让读者可