《TCP/IP协议原理与应用(第5版)》PDF电子书免费下载

作者:  [美] 詹姆斯·派尔斯(James Pyles)、杰弗里·卡雷尔(Jeffrey L. Carrell)、埃德·泰特尔(Ed Tittel ),

出版社: 清华大学出版社

出版年: 2018.08.01

ISBN: 9787302488415

~~滚到底部有网盘下载链接~~

内容简介

目录

第1章TCP/IP导引 1
1.1什么是TCP/IP 1
1.2TCP/IP的起源和历史 2
1.2.1TCP/IP的设计目标 2
1.2.2TCP/IP大事年表 2
1.2.3谁“拥有”Internet 3
1.2.4管理TCP/IP的标准化组织 4
1.2.5IPv4与IPv6 4
1.3TCP/IP标准和RFC 5
1.4OSI网络参考模型概览 6
1.4.1网络分层 6
1.4.2ISO/OSI网络参考模型 7
1.4.3协议层如何工作 8
1.5TCP/IP网络模型 12
1.5.1TCP/IP网络访问层 12
1.5.2TCP/IP网络访问层协议 13
1.5.3TCP/IP互联网层的功能 14
1.5.4TCP/IP互联网层协议 14
1.5.5TCP/IP传输层的功能 15
1.5.6TCP/IP传输层协议 15
1.5.7TCP/IP应用层 16
1.6TCP/IP协议、服务、套接字与端口 17
1.6.1TCP/IP协议号 17
1.6.2TCP/IP端口号 18
1.6.3TCP/IP套接字 19
1.7TCP/IP中的数据封装 19
1.8关于协议分析 20
1.8.1协议分析的有用规则 20
1.8.2协议分析器的要素 20
1.8.3将协议分析器安装在网络上 24
本章小结 25
习题 26
动手项目 28
动手项目1-1:安装Wireshark 29
动手项目1-2:捕获基本数据包,查看基本数据包和统计信息 30
动手项目1-3:选择一个过滤器并捕获数据包 35
动手项目1-4:创建一个显示过滤器 35
动手项目1-5:查看一个完整的数据包解码 36
案例项目 36
案例项目1-1:解决小型网络中的网络连接问题 36
案例项目1-2:讨论升级到IPv6的理由 37
案例项目1-3:确定正在使用的是哪种IP协议 37
案例项目1-4:解释协议错误或广播数据流的后果 37
案例项目1-5:学习Internet的历史 37
第2章IP寻址及其他 38
2.1IP寻址基础 38
2.2IPv4寻址 40
2.2.1IPv4地址类 40
2.2.2网络、广播、多播及其他特殊IP地址 41
2.2.3广播数据包结构 42
2.2.4IPv4网络与子网掩码 44
2.2.5IPv4子网与超网 45
2.2.6IPv4的无类域间路由 47
2.2.7公用和专用IPv4地址 48
2.2.8管理对IPv4地址的访问 49
2.3获得公用IP地址 50
2.4IPv4寻址模式 50
2.4.1网络空间 51
2.4.2主机空间 52
2.5正在耗尽的IPv4地址空间 53
2.6IPv6概述 55
2.7IPv6寻址 56
2.7.1地址格式与表示法 56
2.7.2网络与主机部分 57
2.7.3作用域标识符 57
2.7.4接口标识符 57
2.7.5URL中的原始IPv6地址 59
2.7.6地址类型 59
2.7.7地址分配 63
2.8IPv6寻址与子网划分的因素 64
2.9从IPv4转换到IPv6 65
本章小结 67
习题 68
动手项目 70
动手项目2-1:熟悉IPv6反向代理 70
动手项目2-2:计算域的IPv6反向代理 70
动手项目2-3:根据所需的IPv4子网数量,计算子网掩码 71
动手项目2-4:使用在线教程学习子网划分 71
动手项目2-5:使用子网计算器,确定某个IP地址的主机地址范围、
广播地址以及其他相关值 72
动手项目2-6:查看与IPv6寻址有关的RFC文档 73
动手项目2-7:找出Windows计算机的IPv6地址 73
动手项目2-8:找出Mac计算机的IPv6地址 74
动手项目2-9:找出Linux计算机的IPv6地址 74
动手项目2-10:访问和使用Windows计算机的ARP表 75
动手项目2-11:访问和使用Linux计算机的ARP表 76
案例项目 77
案例项目2-1:设计一个公司网络 77
案例项目2-2:为单个站点实现一个网络 77
案例项目2-3:设计一个IPv6地址空间 77
第3章基本的IP数据包结构:首部与有效载荷 78
3.1IP数据包与数据包结构 78
3.2IPv4首部字段及其功能 78
3.2.1版本字段 79
3.2.2首部长度字段 79
3.2.3TOS字段的功能:差分服务和拥塞控制 79
3.2.4总长度字段 83
3.2.5标识符字段 83
3.2.6标志字段 84
3.2.7分段偏移量字段 84
3.2.8生存时间字段 84
3.2.9协议字段 85
3.2.10首部校验和字段 85
3.2.11源地址字段 86
3.2.12目的地址字段 86
3.2.13可选字段 86
3.2.14填充字段 86
3.3IPv6首部字段及其功能 87
3.3.1版本字段 87
3.3.2流量类型字段 87
3.3.3数据流标签字段 88
3.3.4有效载荷长度字段 88
3.3.5下一个首部字段的作用 88
3.3.6Internet组管理协议 89
3.3.7跳限制字段 89
3.3.8源地址字段 89
3.3.9目的地址字段 89
3.4IPv6扩展首部 89
3.4.1扩展首部的顺序 90
3.4.2逐跳选项扩展首部 91
3.4.3目的地选项扩展首部 91
3.4.4路由扩展首部 92
3.4.5分段扩展首部 92
3.4.6认证扩展首部 93
3.4.7封装安全有效载荷扩展首部和尾部 94
3.4.8超大包 95
3.4.9服务质量 95
3.4.10路由器警告与逐跳选项 96
3.5IPv6MTU与数据包处理 97
3.6IPv6的上层协议校验和 98
3.7IPv6首部结构与IPv4首部结构 100
3.7.1IPv4与IPv6首部比较 100
3.7.2从IPv4转换到IPv6的小结 101
本章小结 102
习题 104
动手项目 107
动手项目3-1:使用Wireshark软件查看IPv4数据包首部 107
动手项目3-2:使用Wireshark软件查看IPv6数据包首部 108
动手项目3-3:在Wireshark软件中查看IPv6上层协议 110
案例项目 111
案例项目3-1:Wireshark与消息分析器 111
案例项目3-2:解释校验和错误 111
案例项目3-3:查看IPv6的下一个首部字段 112
第4章TCP/IP中的数据链路层与网络层协议 113
4.1数据链路协议 114
4.2点到点协议 115
4.3帧的类型与大小 117
4.3.1以太网帧类型 117
4.3.2EthernetⅡ帧结构 117
4.4IP环境中的硬件地址 120
4.4.1地址解析协议与网络发现协议 120
4.4.2ARP协议的特性与处理 121
4.4.3NDP协议的特征与处理 128
4.5理解IP协议 129
4.5.1发送IP数据报 130
4.5.2路由解析过程 131
4.5.3IPv4与IPv6有何不同 133
4.6IP数据包的生存周期 134
4.7分段与重组 135
4.8服务交付选项 137
4.9优先级 137
4.10服务类型 137
4.11理解IP路由 139
4.11.1在路由表中如何存放记录 140
4.11.2路由协议和被路由协议 141
4.11.3为路由协议分组 141
4.12路由特性 145
4.12.1路由汇聚 145
4.12.2IPv4路由机制 145
4.13IPv6路由的考虑因素 149
4.13.1IPv6路由机制 149
4.13.2IPv6中的多播侦听器发现 154
4.14路由协议 159
4.14.1IPv4路由协议 159
4.14.2IPv6路由协议 166
4.15管理内部网的路由 172
4.16广域网上的路由 173
4.16.1几个小型办公室 173
4.16.2辐射型结构 173
4.16.3多协议 173
4.16.4移动用户 174
4.16.5移动IP 174
4.16.6本地区移动性 174
4.17往返于Internet的路由 175
4.18保护路由器和路由行为的安全 175
本章小结 176
习题 179
动手项目 182
动手项目4-1:管理本地ARP缓冲区 182
动手项目4-2:读取本地IPv4路由表 183
动手项目4-3:读取本地IPv6路由表和邻居缓冲区 183
动手项目4-4:用Wireshark软件查看IPv4和IPv6路由协议 183
案例项目 187
案例项目4-1:查看跟踪文件 187
案例项目4-2:基于跳限制值来确定IPv6数据报传输的距离 187
案例项目4-3:TCP/IP网络的QoS 187
第5章Internet控制消息协议 188
5.1ICMP基础 188
5.2ICMPv4 190
5.2.1RFC792概览 190
5.2.2ICMPv4的首部 190
5.2.3ICMPv4消息的类型 194
5.2.4可变的ICMP结构和功能 198
5.3ICMPv6 206
5.3.1ICMPv6概述 206
5.3.2ICMPv6消息的类型 206
5.3.3ICMPv6首部 208
5.4ICMPv6错误消息 208
5.4.1目的地不可达消息 208
5.4.2数据包太大消息 209
5.4.3超时消息 210
5.4.4参数问题消息 210
5.5ICMPv6信息消息 211
5.5.1Echo请求与Echo应答消息 211
5.5.2路由器公告与路由器请求消息 212
5.5.3邻居请求与邻居公告消息 213
5.5.4重定向消息 214
5.5.5路由器重编号消息 215
5.5.6ICMPv4与ICMPv6消息的简单比较 216
5.6路径MTU发现 216
5.7ICMP测试和故障诊断顺序 218
5.7.1使用ping进行可连接性测试 218
5.7.2使用Traceroute进行路径发现 219
5.7.3使用Pathping进行路径发现 220
5.7.4使用ICMP的路径MTU发现 220
5.7.5ICMP的路由序列 223
5.7.6ICMPv4的安全问题 226
5.7.7ICMPv6的安全问题 228
5.8解码ICMP数据包 228
5.8.1ICMPv4 228
5.8.2ICMPv6 230
本章小结 231
习题 232
动手项目 234
动手项目5-1:在网络上使用ICMPv4Echo请求消息ping另一个设备 234
动手项目5-2:为你的数据流构建一个过滤器 234
动手项目5-3:捕获ICMPv6Echo请求与Echo应答数据包 235
动手项目5-4:捕获ICMPv6邻居请求与邻居公告消息 236
案例项目 238
案例项目5-1:确定默认网关设置 238
案例项目5-2:ICMPv6安全性问题 238
案例项目5-3:测试路径MTU发现 238
案例项目5-4:研究一下JonPostel 238
第6章IPv6中的邻居发现 239
6.1理解邻居发现 239
6.2IPv6邻居发现协议与IPv4协议的比较 240
6.3邻居发现消息的格式 241
6.3.1路由器请求消息 241
6.3.2路由器公告消息 242
6.3.3邻居请求消息 245
6.3.4邻居公告消息 246
6.3.5重定向消息 248
6.4邻居发现选项的格式 250
6.4.1源链路层地址与目标链路层地址选项 250
6.4.2前缀信息选项 252
6.4.3重定向首部选项 254
6.4.4MTU选项 255
6.4.5公告时间间隔选项 256
6.4.6宿主智能体信息选项 256
6.4.7路由信息选项 257
6.5概念主机模型 257
6.5.1在主机上存储邻居数据 258
6.5.2概念发送算法 258
6.6邻居发现过程 260
6.6.1地址解析 260
6.6.2邻居不可达检测 261
6.6.3重复地址检测 262
6.6.4路由器发现 263
6.6.5重定向 265
本章小结 267
习题 268
动手项目 271
动手项目6-1:查看ICMPv6邻居发现消息 271
动手项目6-2:创建一个过滤器,查看特定主机的邻居公告消息 272
动手项目6-3:创建一个过滤器,查看邻居公告消息,该消息是对
邻居请求重复地址检测消息的应答消息 273
动手项目6-4:创建一个过滤器,查看设置了M和O标志的路由器
公告消息 274
动手项目6-5:创建一个过滤器,查看具有前缀信息的路由器公告消息 275
案例项目 276
案例项目6-1:理解邻居请求和邻居公告消息 276
案例项目6-2:排除网络问题 276
案例项目6-3:描述初始的IPv6主机通信 277
第7章IP地址自动配置 278
7.1理解自动寻址 279
7.2动态主机配置协议介绍 279
7.2.1DHCP的工作原理 280
7.2.2租用的作用 281
7.2.3DHCP软件部件 281
7.2.4DHCP租用类型 282
7.2.5DHCP租用的更多信息 283
7.3IPv4自动配置 283
7.3.1自动专用IP寻址(APIPA) 284
7.3.2DHCP 284
7.4IPv6自动配置 299
7.4.1IPv6自动配置的类型 299
7.4.2IPv6自动配置的地址的功能状态 303
7.4.3结点网卡标识符 304
7.4.4DHCPv6 307
7.4.5IPv6自动配置过程 316
7.5MicrosoftWindows2012R2的DHCP范围 319
7.6创建一个简单的DHCP服务器 319
本章小结 325
习题 326
动手项目 328
动手项目7-1:查看DHCP启动序列 329
动手项目7-2:查看DHCP更新、重新绑定和重新初始化序列 329
动手项目7-3:查看DHCPv6启动序列 330
动手项目7-4:查看和管理DHCP与DHCPv6租借信息 330
案例项目 331
案例项目7-1:DHCP设计与实现 331
案例项目7-2:静态与动态IPv4地址问题 332
案例项目7-3:解决DHCP地址问题 332
案例项目7-4:DHCPv6设计与实现 332
第8章IP网络中的名称解析 333
8.1理解名称解析的基础 333
8.2网络名称解析协议 334
8.2.1LLMNR 334
8.2.2DNS 335
8.2.3DNS数据库结构 337
8.2.4DNS名称空间 338
8.2.5DNS数据库记录 339
8.2.6委托DNS授权 340
8.2.7DNS服务器的类型 340
8.3域名服务器的工作原理 342
8.3.1递归查询 342
8.3.2迭代或非递归查询 343
8.4DNS缓存的重要性 344
8.5DNS配置文件和资源记录格式 345
8.5.1授权开始记录 345
8.5.2地址和别名记录 346
8.5.3将地址映射为名称 348
8.6IPv6网络中的名称解析 349
8.6.1IPv6中的DNS 350
8.6.2源地址与目的地址选择 352
8.6.3源地址选择算法 353
8.6.4目的地址选择算法 356
8.6.5使用地址选择 357
8.7Windows操作系统对名称解析的支持 359
8.7.1DNS解析器 359
8.7.2DNS服务器服务 360
8.7.3DNS动态更新 362
8.7.4源地址与目的地址选择 363
8.7.5LLMNR支持 364
8.7.6使用ipv6-literal.net名称 366
8.7.7对等体名称解析协议 366
8.8解决名称解析问题与失败的故障 368
8.8.1故障的常见原因 369
8.8.2解决DNS问题的工具 370
8.8.3netstat 370
8.8.4nslookup 371
本章小结 374
习题 375
动手项目 377
动手项目8-1:作用于DNS解析器缓存 377
动手项目8-2:设置Windows计算机来使用DNS动态更新 379
动手项目8-3:把IPv6地址转换为一个ipv6-literal.net名称 380
动手项目8-4:捕获并查看你的DNS数据流 380
动手项目8-5:找出Linux计算机的DNS解析器 381
动手项目8-6:使用dig工具来进行DNS查询任务 382
案例项目 385
案例项目8-1:收集IPv6地址数据以配置名称服务器 385
案例项目8-2:请解释一下只用于缓存的服务器的使用 385
案例项目8-3:理解在网络基础设施中所需要的最少DNS服务器数量 385
第9章TCP/IP传输层协议 386
9.1理解UDP与TCP 386
9.1.1IPv4与IPv6上的UDP 387
9.1.2IPv4与IPv6上的TCP 389
9.2UDP 390
9.2.1UDP首部字段和功能 391
9.2.2UDP端口号与进程 394
9.2.3UDP与IPv6 395
9.3TCP 396
9.3.1TCP与IPv4 396
9.3.2TCP与IPv6 411
9.4UDP、TCP与IPv6扩展首部 412
9.5在TCP和UDP之间做出选择 413
本章小结 414
习题 415
动手项目 417
动手项目9-1:查看UDP首部结构 417
动手项目9-2:查看IPv4与IPv6的TCP首部 418
动手项目9-3:查看TCP握手进程 419
案例项目 420
案例项目9-1:使用Wireshark软件清查网络 420
案例项目9-2:发现动态端口号 420
案例项目9-3:TCP窗口大小问题 420
案例项目9-4:理解重复ACK 421
第10章从IPv4转换到IPv6 422
10.1IPv4与IPv6如何相互作用 422
10.1.1双重栈技术 423
10.1.2通过IPv4云的隧道技术 423
10.1.3采用IPv6的进展 424
10.1.4转换到IPv6的实际问题 424
10.1.5互操作性 424
10.1.6网络元素 425
10.1.7软件 425
10.1.8从Windows的角度看IPv6转换 426
10.1.9可用性 427
10.1.10下一步的工作 427
10.2IPv4/IPv6混合网络与网络结点 428
10.2.1基本的混合网络模型 428
10.2.2嵌套的混合网络模型 429
10.2.3真实的混合网络模型 429
10.3IPv6转换地址 430
10.4IPv4/IPv6转换机制 431
10.5双重IP层体系结构 432
10.6双重栈体系结构 433
10.6.1双重体系结构与隧道技术 434
10.6.2IPv6-over-IPv4隧道技术 434
10.6.3DNS基础设施 435
10.7IPv4与IPv6混合的隧道配置 436
10.7.1路由器到路由器的隧道配置 436
10.7.2主机到路由器与路由器到主机的隧道配置 437
10.7.3主机到主机的隧道配置 438
10.7.4隧道技术的类型 438
10.8ISATAP隧道技术 439
10.8.1ISATAP概述 439
10.8.2ISATAP的组件 440
10.8.3ISATAP结点的路由器发现 441
10.8.4ISATAP寻址与路由 441
10.8.5ISATAP的通信 443
10.8.6配置一台ISATAP路由器 444
10.96to4隧道技术 446
10.9.16to4概述 446
10.9.26to4的组件 447
10.9.36to4寻址与路由 448
10.9.46to4通信 448
10.9.5ISATAP与6to4一起使用 449
10.10Teredo隧道技术 450
10.10.1Teredo概述 450
10.10.2Teredo的组件 450
10.10.3Teredo寻址与路由 451
10.10.4Teredo的处理过程 452
本章小结 454
习题 456
动手项目 458
动手项目10-1:查看ISATAP网络中的数据流 458
动手项目10-2:查看6to4捕获文件 460
动手项目10-3:查看一个Teredo捕获文件和路由器请求数据包 461
案例项目 462
案例项目10-1:准备一个网络,进行IPv4-to-IPv6转换技术部署 462
案例项目10-2:配置要使用Teredo的Windows7客户端 462
案例项目10-3:绘制ISATAP封装首部 462
第11章部署IPv6 463
11.1理解IPv6部署 463
11.2规划IPv6部署 464
11.2.1成功准则 465
11.2.2体系结构的决策 465
11.2.3迁移与转换技术 472
11.2.4要完成的任务 476
11.3部署和使用IPv6 481
11.3.1构建一个IPv6测试/示范网络 481
11.3.2开始迁移应用程序 482
11.3.3把只支持IPv4的主机升级到支持IPv4/IPv6 483
11.3.4使用6to4创建一个隧道式的IPv6环境 485
11.3.5使用ISATAP创建一个隧道式的IPv6环境 487
11.4探讨一些网络管理任务 489
本章小结 490
习题 491
动手项目 493
动手项目11-1:探索路由服务器 493
动手项目11-2:探索IPv6配置 497
案例项目 497
案例项目11-1:创建一个测试实验网络 497
案例项目11-2:创建一个迁移规划 497
第12章构建安全的TCP/IP环境 498
12.1理解网络安全性基础 499
12.2IP安全的原则 500
12.3常见的TCP/IP攻击、探测与入侵 501
12.3.1主要术语 501
12.3.2TCP/IP的主要弱点 502
12.3.3灵活性与安全性 503
12.4与IP有关的常见攻击类型 503
12.5哪些IP服务最易受攻击 504
12.6IP攻击的各个阶段 506
12.6.1侦探与发现 506
12.6.2攻击阶段 508
12.6.3掩盖阶段 508
12.7详论常见攻击与入侵点 508
12.7.1病毒、间谍软件与类似安全威胁 508
12.7.2拒绝服务攻击 509
12.7.3分布式拒绝服务攻击 509
12.7.4缓冲区溢出或过载 510
12.7.5欺骗 510
12.7.6TCP会话劫持 510
12.7.7网络嗅探 511
12.8维护IP安全性 512
12.8.1应用安全补丁与修复 512
12.8.2知道要堵住哪些端口 513
12.8.3使用IPSec 514
12.8.4保护网络外设 515
12.8.5实现防火墙 517
12.8.6在IP安全中IDS与IPS的作用 519
12.9蜜罐与蜜网 520
12.10实行安全意识培训 520
本章小结 520
习题 521
动手项目 523
动手项目12-1:在Wireshark中查看本地扫描 523
动手项目12-2:在Wireshark中查看端口扫描 524
动手项目12-3:在Wireshark中堵住端口 524
动手项目12-4:在Wireshark中查看数据流来自的端口号 525
动手项目12-5:在Wireshark中查看基于IPv4的特定类型端口扫描 525
动手项目12-6:在Wireshark中查看基于IPv6的特定类型端口扫描 526
案例项目 527
案例项目12-1:防火墙过滤器 527
案例项目12-2:防火墙研究、规划与实现 527
附录学生与教师在线资源 528
术语表 530

下载价格:免费
立即下载
登入/注册
知识就是力量
没有账号? 忘记密码?