第1章 计算机网络体系结构的概念 1
1.1 网络协议 1
1.2 协议分层与计算机网络体系结构 2
1.3 接口和服务 3
1.4 协议数据单元 3
1.5 服务原语 4
第2章 ISO/OSI体系结构 6
2.1 ISO/OSI的协议层次 6
2.2 物理层 7
2.3 数据链路层 8
2.4 网络层 8
2.5 传输层 9
2.6 会话层、表示层和应用层 10
2.7 ISO/OSI模型中数据传输过程 10
第3章 TCP/IP协议简介 12
3.1 TCP/IP协议的发展 12
3.2 TCP/IP体系结构 13
3.2.1 网络接口层 13
3.2.2 互联网络层(IP层) 13
3.2.3 传输控制层 14
3.2.4 应用层 14
3.3 TCP/IP的特点 15
第4章 IPv6产生的背景 16
4.1 IPv4的局限性 16
4.1.1 网络地址短缺 16
4.1.2 网络号码匮乏 16
4.1.3 路由表急剧膨胀 16
4.1.4 缺乏网络安全机制 17
4.1.5 服务质量问题 17
4.1.6 暂时缓解IPv4危机的措施 17
4.2 IPv6的产生 18
4.3 IPv6的主要特点 18
4.3.1 无限的地址空间 18
4.3.2 数据报头部的简化和可扩展性 18
4.3.3 完善的服务种类和QoS能力 19
4.3.4 良好的安全性 19
4.3.5 支持“即插即用” 19
4.3.6 支持良好的可移动性 20
4.3.7 高效的路由寻址 20
第5章 IPv6的编址方案 21
5.1 IPv4编址方案回顾 21
5.2 IPv6的地址方案 23
5.2.1 IPv6地址表示形式 23
5.2.2 IPv6地址前缀的表示 24
5.2.3 IPv6地址的总体划分 25
5.3 IPv6地址类型 26
5.3.1 单目地址(Unicast) 26
5.3.2 任播地址(Anycast) 30
5.3.3 组播地址(Multicast) 31
第6章 IPv6的报文格式 34
6.1 IPv4的报文格式回顾 34
6.2 IPv6数据报文格式 36
6.2.1 IPv6基本报头 36
6.2.2 IPv6的扩展报头 38
6.2.3 扩展报头的选项 40
6.2.4 Hop-by-Hop选项扩展报头 41
6.2.5 源路径选项扩展报头 42
6.2.6 分片扩展报头 44
6.2.7 目的选项扩展报头 47
6.2.8 认证报头和封装安全载荷报头 48
第7章 IPv6的控制报文协议ICMP 51
7.1 IPv4的ICMP简介 51
7.2 ICMPv6报文 52
7.2.1 ICMPv6报文格式 53
7.2.2 ICMPv6报文信源地址的确定 54
7.2.3 ICMPv6报文处理规则 55
7.3 ICMPv6差错报文 56
7.3.1 目的不可到达报文 56
7.3.2 数据报文过长 57
7.3.3 超时报文 57
7.3.4 参数错误报文 58
7.4 ICMPv6信息报文 59
7.4.1 网络诊断信息 59
7.4.2 组播组管理信息 60
7.4.3 邻居发现报文 60
7. 4.4 路由请求和路由广告报文 62
7.4.5 重定向报文 63
7.5 ICMPv6报文的安全性 65
第8章 邻居发现与即插即用功能 66
8.1 邻居发现功能的实现 66
8.2 地址自动配置 67
8.2.1 无状态自动配置 67
8.2.2 有状态自动配置 68
第9章 IPv6路由技术 73
9.1 路由器简介 73
9.1.1 路由器 73
9.1.2 路由器的组成 74
9.2 IPv4路由技术概述 74
9.3 IPv6路由 76
9.3.1 IPv6网络路由模型 76
9.3.2 IPv6路由的新特点 77
9.3.3 IPv6路由算法 77
9.3.4 IPv6路由协议 83
9.4 IPv6地址和路由之间的关系 87
9.5 IPv6组播路由 88
第10章 IPv6的安全性 89
10.1 计算机网络的安全问题 89
10.2 IPsec提供的网络安全保障 90
10.3 IPsec的结构 91
10.4 安全关联 92
10.5 安全策略 93
10.6 IPsec的认证机制 93
10.6.1 AH的结构 93
10.6.2 认证过程 94
10.6.3 认证算法 95
10.7 IPsec的加密机制 96
10.7.1 ESP的结构 96
10.7.2 数据加密的实现 97
10.7.3 认证与加密 98
10.8 密钥管理 99
10.8.1 因特网简单密钥管理协议SKIP 99
10.8.2 因特网安全互联与密钥管理协议 100
10.9 IPsec的应用 100
10.9.1 防火墙与安全通道 100
10.9.2 安全主机 102
第11章 IPv6到物理网络的映射 103
11.1 IPv6在以太网上运行 103
11.2 在FDDI上运行IPv6 104
11.3 在令牌环上运行IPv6 105
11.4 通过PPP传送IPv6报文 107
11.5 通过ATM运行IPv6 108
第12章 IPv6在不同操作系统上的实现 111
12.1 IPv6在Windows上的实现 111
12.1.1 在Windows 2000上实现IPv6协议 112
12.1.2 在Windows XP上实现IPv6协议 119
12.1.3 IPv6在Windows XP(Service Pack 1)和Windows2003 Server Famil上的实现 120
12.1.4 在Windows下IPv6协议的配置 121
12.1.5 Windows下IPv6常用工具 124
12.2 IPv6在Linux上的实现 127
12.2.1 Linux上IPv6协议栈的安装 128
12.2.2 Linux系统下IPv6协议的配置 129
12.2.3 Linux下IPv6的常用工具 130
第13章 IPv6的域名系统及其实现 135
13.1 域名系统DNS概述 135
13.2 DNS的服务系统 136
13.3 IPv6的DNS扩展 139
13.4 IPv6域名服务的实现 142
13.5 IPv6下动态域名系统的实现 146
13.5.1 动态DNS的基本原理 147
13.5.2 动态DNS的配置 147
第14章 IPv6下的通用服务系统 150
14.1 IPv6下的WWW服务 150
14.1.1 WWW服务器概述 150
14.1.2 WWW服务器的安装 151
14.1.3 WWW 服务器的配置 154
14.1.4 与IPv6密切相关的参数设置 160
14.2 IPv6下的Telnet服务 160
14.2.1 Telnet服务概述 160
14.2.2 Telnet服务器的安装 161
14.2.3 Telnet服务器的配置 162
14.3 IPv6下的FTP服务 163
14.3.1 FTP概述 163
14.3.2 FTP服务器的安装 163
14.3.3 FTP服务器配置 164
14.4 IPv6下的SSH 169
14.4.1 SSH概述 169
14.4.2 SSH安装 169
14.4.3 SSH密钥 169
14.4.4 配置SSH 170
14.4.5 用SSH设置加密通道 170
14.5 服务启动与管理 171
14.6 服务器测试 171
14.7 IPv6下的Email服务 173
14.7.1 邮件服务器概述 173
14.7.2 Sendmail邮件服务器的原理 173
14.7.3 IPv6邮件服务器的安装 175
14.7.4 IPv6邮件服务器的常用设置 179
14.7.5 POP3服务支持 180
第15章 Socket编程及其应用实例 182
15.1 客户、服务器和协议 182
15.2 Berkeley套接口基础 183
15.2.1 套接口分析 183
15.2.2 套接口寻址 185
15.2.3 字节排序函数 187
15.2.4 地址转换函数 188
12.2.5 域名与地址转换函数 189
15.2.6 双协议栈主机 191
15.3 TCP套接口编程 193
15.3.1 socket函数 194
15.3.2 与套接字选项设置相关的函数 194
15.3.3 bind函数 195
15.3.4 listen函数 196
15.3.5 accept函数 196
15.3.6 connect函数 196
15.3.7 getsockname和getpeername函数 197
15.3.8 传送数据 198
15.3.9 close函数 198
15.3.10 fork函数 199
15.3.11 一个客户与服务器TCP连接的例子 199
15.4 UDP套接口编程 213
15.4.1 socket函数 214
15.4.2 传送数据 214
15.4.3 一个使用UDP协议的客户/服务器编程例子 214
第16章 IPv4向IPv6的过渡 229
16.1 双协议栈(Dual Stack) 229
16.2 隧道技术(Tunnel) 229
16.3 地址/协议翻译(NAT-PT)技术 231
第17章 IPv6实验床的实现 232
17.1 建立实验床的准备工作 232
17.2 实验床实现 238
参考书目和文献 242