
本书从实战出发,帮助读者掌握建设局域网和广域网、配置网络服务器的相关实用技能。内容包括Web服务器、FTP服务器、DNS服务器、DHCP服务器、代理服务器等多种网络服务器的安装配置,使用Ethereal分析网络协议及数据包结构、网络常用命令介绍、网络socket编程、路由器模拟器Boson Router Simulator的使用方法;操作系统平台覆盖了Windows和Linux两大主要平台。本书还介绍了Cisco交换机和路由器的配置方法,内容包括交换机基本配置和使用、VLAN配置、生成树协议(STP)配置、路由器基本配置和使用、配置静态路由和RIP、配置动态路由协议OSPF;此外,还介绍了Cisco路由器的高级功能的配置,包括DHCP服务器、访问控制列表、GRE协议、IPSec协议、MPLS协议等。
本书内容丰富,实用性强,所有实验步骤都在具体设备上做过测试,适合作为计算机和通信专业“计算机网络”、“计算机网络工程”和“计算机网络基础”等课程的配套实验教材,也可作为网络工程师、网络管理员以及网络技术爱好者的技术参考书。
本书从实战出发,帮助读者掌握构建局域网和广域网、配置网络服务器的相关实用技能,通过实验,本书还能帮助读者分析计算机网络的帧、分组、报文等PDU的结构及协议工作机制。本书内容包括多种网络服务器的安装配置、使用Ethereal分析数据包的格式、网络协议工作过程及网络流量,网络Socket编程;操作系统平台覆盖了Windows和Linux两大主要平台,Linux下的不少内容还与UNIX环境下的相关内容非常接近或基本相同。
书中有关Cisco交换机配置、VLAN配置、生成树协议配置等内容可以帮助读者快速掌握局域网的建网方法;有关Cisco路由器配置、路由协议RIP配置、路由协议OSPF配置、Cisco路由器高级功能的配置等内容可以帮助读者快速掌握广域网的建网方法。
本书在内容编排方面努力要实现的一个目标是使得读者有能力建立一个中等规模的、使用Cisco路由器和交换机的局域网和广域网,有能力部署相关的网络服务器,以便提供完整的Internet或intranet服务,并保证网络的基本运行。当然,网络性能的优化等更深入的内容没有包含在本书中,读者需要参阅其他的相关技术资料。本书的主要内容如下。
* 第1章“PC机上常用网络命令”,例如route、tracert、ipconfig、netstat等,其中有些命令对于诊断局域网或广域网的网络故障非常有用。
* 第2章“Socket编程”,这里列出的样本程序能实现异种操作系统之间的相互通信。
* 第3章“使用Ethereal进行包嗅探及网络协议分析”可以帮助读者解读网络上传输的数据包的格式,并借助Ethereal软件分析各种协议,当然还有负面的用途:截获别人的账号和口令,所以网络用户通过本章内容还可了解到网络安全性问题的重要性并提高安全防范意识。
* 第4章“安装和配置Web服务器及FTP服务器”,第5章“安装和配置其他的网络服务器”,这部分内容还可帮助企事业单位的网络管理员或系统集成商部署Web服务器、FTP服务器、DNS服务器、DHCP服务器、WinRoute代理服务器,从而构建一个完善有效的intranet或Internet服务环境。
* 第6章“路由器模拟器Boson Router Simulator的使用”,模拟器提供了与真实路由器环境非常类似的命令行配置环境,实现各种接口的配置,以及静态路由、RIP、OSPF的配置,观察路由表的内容并显示网络运行情况;读者还可自行选择网络设备、自行设计网络拓扑结构来进行配置。
* 第7章“路由器和交换机基础知识及交换机的基本配置”,其中“交换机口令清除和系统程序文件升级”对于大学实验室中多人配置交换机的环境很有用。
* 第8章“交换机VLAN配置”,介绍了第二层交换机和第三层交换机VLAN的配置方法,以及VLAN之间通过第三层交换机转发的配置方法。
* 第9章“生成树协议”,介绍了生成树协议(STP)以及在交换机上配置生成树以避免网络环路的出现。
* 第10章“Cisco路由器基本配置和使用”。在多人共用路由器进行实验的环境下,本章的“路由器口令清除和系统程序文件升级”非常有用。
* 第11章“在Cisco路由器上配置静态路由和RIP”。
* 第12章“在Cisco路由器上配置动态路由协议OSPF”,本章内容包括单区域和多区域OSPF协议的配置,以及OSPF的很多高级功能的配置。
* 第13章“Cisco路由器的高级功能”,包括“DHCP服务器”、“访问控制列表”、“GRE协议”、“IPSec协议”、“MPLS协议”。
浙江大学计算机学院花费巨资购置了价值260万元的网络实验设备,建立了计算机网络实验室。这些设备经过精心挑选,包括Cisco网络设备和华为网络设备各8套,每套Cisco网络设备包括高端的Cisco 7204路由器1台、中档Cisco 3725路由器1台、低端Cisco 2621XM路由器2台、Catalyst3550三层交换机1台、Catalyst2950二层交换机1台。每套华为网络设备包含高端的AR4640路由器1台、中档R3640路由器1台、低端R2621路由器2台、S3526C三层交换机1台、S2403H二层交换机1台。另外还有Cisco PIX防火墙、无线网络设备、VoIP设备等。本书的内容都在上述设备上做过专门测试,并帮助浙江大学计算机学院和软件学院的同学在学习“计算机网络基础”、“网络系统设计与工程”课程时进行课程设计和实践,其中较深入的内容可由能力特别强、对网络技术特别感兴趣的同学选做。
作为主要开发者,作者在校学习期间(1989年)曾经研制了国内最早一批具有自主知识产权的局域网网卡ZD-NET、驱动程序及相应网络操作系统。ZD-NET是七五攻关项目的一个子项目。此后作者还参与了多个大型网络工程的规划实施工作,包括企事业单位的内部局域网、UNIX-NetWare-Windows异种操作系统的广域互联网、电信97工程、覆盖全省的交通运输广域网、邮政绿卡工程、军用电缆工程及军用广域网等,积累了很多实践经验。作者从多年的工程实践出发,组织并选择了一些计算机网络技术和网络工程相关的最重要、最常用的技术作为本书内容。
本书可作为计算机专业或通信专业“计算机网络”、“计算机网络工程”和“计算机网络基础”等课程的配套实验教材,也可作为网络工程师、网络管理员、网络技术爱好者的技术参考书。
本书与路由器、交换机相关的内容都是基于Cisco公司的相关产品的。如果读者使用的网络设备是华为公司的产品,则可参考《计算机网络工程实践指南——基于华为路由器和交换机》一书。如果读者仅仅希望学习计算机网络基础的实验内容,不希望学习路由器、交换机的配置知识,则可选择《计算机网络基础实践教程》一书。以上两本书也都由本人编写、清华大学出版社出版。
本书由陆魁军编著,曾在浙江大学计算机学院攻读硕士学位的江建宇、潘海军、杨德山、韦彬以及董惠勤为本书的编写付出了大量的时间和精力。董惠勤参加了第6、7、8、12章的编写,杨德山参加了第6、9、10、11章的编写,江建宇参加了第2、5、13章的编写,潘海军参加了第1、3、4、5、7、10、13章的编写,川蓉参与了大量的插图制作、文字修改和书稿整理工作,韦彬和黄燎参加了第2章的编写,韦彬还做了很多的文字校对和测试工作。参加本书文字校对和测试的还有曾在浙大计算机学院就读的高俊、周峰、林美天、宋云波等同学,在此向他们表示诚挚的感谢。
编者
2007年2月
第1章 PC机上常用网络命令 1
1.1 Windows环境下常用网络命令 1
1.1.1 操作内容和环境 1
1.1.2 操作步骤 1
1.2 Linux环境下常用网络命令 22
1.2.1 操作内容和环境 22
1.2.2 操作步骤 22
第2章 Socket编程 32
2.1 Socket编程基本原理 32
2.1.1 Socket基本概念 32
2.1.2 Winsock编程 32
2.1.3 Linux Socket 编程 37
2.2 一个简单的单用户Windows Socket程序 39
2.2.1 操作内容和环境 39
2.2.2 原理分析 39
2.2.3 服务器程序 39
2.2.4 客户端程序 42
2.2.5 编译与运行 44
2.3 一个简单的单用户Linux Socket程序 45
2.3.1 操作内容和环境 45
2.3.2 原理分析 45
2.3.3 服务器程序 45
2.3.4 客户端程序 47
2.3.5 编译与运行 49
2.4 Windows和Linux Socket单用户程序的相互通信 49
2.5 利用Windows Socket编写聊天程序 50
2.5.1 操作内容和环境 50
2.5.2 原理分析 50
2.5.3 程序代码 56
2.5.4 编译与运行 68
2.6 Windows环境下实现多用户mini FTP Client/Server 69
2.6.1 操作内容和环境 69
2.6.2 原理分析 70
2.6.3 公共的头文件 73
2.6.4 服务器程序 74
2.6.5 客户端程序 85
2.6.6 编译与运行 95
2.7 Linux环境下实现多用户mini FTP Client/Server 96
2.7.1 操作内容和环境 96
2.7.2 原理分析 96
2.7.3 公共的头文件 97
2.7.4 服务器程序 97
2.7.5 客户端程序 107
2.7.6 编译与运行 116
2.8 Windows和Linux之间Socket多用户程序的相互通信 117
第3章 使用Ethereal进行包嗅探(sniff)及网络协议分析 119
3.1 Ethereal的使用及高层协议 119
3.1.1 操作内容和环境 119
3.1.2 背景知识 119
3.1.3 Ethereal安装 123
3.1.4 Ethereal捕包过滤规则 124
3.1.5 Ethereal操作步骤 127
3.2 实例解析 133
3.2.1 实例解析Ethernet帧 133
3.2.2 实例解析高层协议 135
第4章 安装和配置Web服务器及FTP服务器 145
4.1 Windows环境下配置IIS 6.0、Web和FTP服务器 145
4.1.1 操作内容和环境 145
4.1.2 背景知识 145
4.1.3 安装IIS 6.0 145
4.1.4 配置Web服务器 148
4.1.5 配置FTP服务器 158
4.2 Windows环境下配置FTP服务器Serv-U 162
4.2.1 操作内容和环境 162
4.2.2 操作步骤 162
4.3 Linux 环境下配置Web服务器Apache 175
4.3.1 操作内容和环境 175
4.3.2 背景知识 175
4.3.3 Apache服务器的安装和启动 175
4.3.4 Apache服务器的配置 177
4.3.5 Apache服务器的功能测试 179
第5章 安装和配置其他的网络服务器 182
5.1 安装和设置DNS服务器 182
5.1.1 操作内容和环境 182
5.1.2 背景知识 182
5.1.3 操作步骤 183
5.2 安装和设置PC DHCP服务器 197
5.2.1 操作内容和环境 197
5.2.2 背景知识 197
5.2.3 操作步骤 198
5.3 WinRoute代理服务器的配置 209
5.3.1 操作内容和环境 209
5.3.2 背景知识 209
5.3.3 操作步骤 210
第6章 路由器模拟器Boson Router Simulator的使用 229
6.1 模拟软件Boson Router Simulator 4.03使用简介 229
6.1.1 进入选择网络拓扑方式窗口 229
6.1.2 选择网络设备 230
6.1.3 为网络设备选择连接方式 231
6.1.4 对网络设备进行连接 232
6.2 模拟器上的路由器接口配置 234
6.2.1 操作内容和环境 234
6.2.2 操作步骤 234
6.3 模拟器上的静态路由配置 249
6.3.1 操作内容和环境 249
6.3.2 操作步骤 250
6.4 模拟器上的RIP配置 260
6.4.1 操作内容和环境 260
6.4.2 操作步骤 260
6.5 在模拟软件上实现单区域OSPF配置 269
6.5.1 单区域OSPF配置的操作内容和环境 269
6.5.2 配置步骤及信息验证 270
第7章 路由器和交换机基础知识及交换机的基本配置 282
7.1 Cisco路由器和交换机基础知识 282
7.1.1 存储器 282
7.1.2 初始化配置对话模式 283
7.1.3 通过控制台端口建立路由器和交换机的配置环境 284
7.1.4 IOS简介 287
7.1.5 交换机的几种配置界面 291
7.1.6 一些常用命令介绍 291
7.1.7 设置多种口令 294
7.1.8 从键盘发出Break信号 297
7.1.9 删除或修改以前输入的配置命令 297
7.1.10 彻底清除以前的配置信息 298
7.1.11 使用交叉双绞线或直通双绞线的不同场合 298
7.2 交换机面板介绍 300
7.3 交换机口令恢复和IOS升级 302
7.3.1 操作内容和环境 302
7.3.2 口令设置与恢复 302
7.3.3 IOS备份和升级 305
7.4 交换机控制台端口配置 308
7.4.1 操作内容和环境 308
7.4.2 交换机控制台端口连接配置 308
7.5 交换机Telnet配置 309
7.5.1 操作内容和环境 309
7.5.2 相关知识介绍 310
7.5.3 操作步骤 312
7.6 交换机端口的基本配置 321
7.6.1 操作内容和环境 321
7.6.2 操作中使用的重要命令介绍 322
7.6.3 操作步骤 326
第8章 交换机VLAN配置 349
8.1 交换机VLAN的端口划分和配置 349
8.1.1 操作内容和环境 349
8.1.2 VLAN的划分 350
8.1.3 操作步骤 351
8.2 VLAN之间的路由协议配置 352
8.2.1 操作内容和环境 352
8.2.2 操作步骤 353
8.3 交换机端口中继(Trunk)属性配置 368
8.3.1 操作内容和环境 368
8.3.2 端口Trunk属性相关知识介绍 369
8.3.3 配置步骤 371
8.4 实现VLAN间第3层转发的交换机VLAN和路由器子接口配置 377
8.4.1 操作内容和环境 377
8.4.2 相关知识介绍 378
8.4.3 操作步骤 380
第9章 生成树协议 389
9.1 生成树协议概述 389
9.1.1 生成树协议相关概念 389
9.1.2 网桥协议数据单元 390
9.1.3 生成树的定时器 391
9.1.4 网桥端口状态 392
9.2 生成树协议的运行过程 393
9.2.1 选举最优配置消息 393
9.2.2 选举根网桥 395
9.2.3 选举根端口 396
9.2.4 选举指定端口,阻塞冗余链路 397
9.3 生成树协议的发展 398
9.3.1 第一代生成树协议STP/RSTP 398
9.3.2 第二代生成树协议PVST/PVST+ 399
9.3.3 第三代生成树协议MISTP/MSTP 399
9.4 生成树的配置 400
9.4.1 操作内容和环境 400
9.4.2 生成树常用配置命令 401
9.4.3 运行生成树协议 402
9.4.4 优化生成树结构 408
第10章 Cisco路由器基本配置和使用 412
10.1 路由器面板介绍 412
10.1.1 7204 VXR路由器面板介绍 412
10.1.2 3725路由器面板介绍 414
10.1.3 2621XM路由器面板介绍 415
10.2 路由器口令恢复和IOS升级 416
10.2.1 操作内容和环境 416
10.2.2 背景知识 416
10.2.3 口令设置和恢复 418
10.2.4 配置文件备份和IOS备份 422
10.2.5 IOS升级 424
10.3 路由器基本操作与配置 426
10.3.1 Cisco路由器简介 426
10.3.2 路由器常规配置命令 427
10.3.3 通过Telnet方式搭建路由器配置环境 432
10.4 路由器接口配置 435
10.4.1 操作内容和环境 435
10.4.2 操作步骤 435
10.5 帧中继子接口配置 451
10.5.1 操作内容和环境 451
10.5.2 背景知识 452
10.5.3 操作步骤 454
10.6 帧中继综合配置 470
10.6.1 操作内容和环境 470
10.6.2 操作步骤 471
第11章 在Cisco路由器上配置静态路由和RIP 493
11.1 配置静态路由 493
11.1.1 操作内容和环境 493
11.1.2 背景知识 494
11.1.3 操作步骤 495
11.2 配置动态路由协议(RIP) 506
11.2.1 操作内容和环境 506
11.2.2 背景知识 507
11.2.3 操作步骤 508
第12章 在Cisco路由器上配置动态路由协议OSPF 524
12.1 OSPF协议简介 524
12.1.1 OSPF概述 524
12.1.2 与OSPF协议有关的概念 526
12.1.3 链路状态通告(LSA) 526
12.1.4 OSPF包类型 533
12.1.5 建立邻接关系过程中的OSPF状态 538
12.1.6 OSPF的运行步骤 539
12.2 OSPF配置——DR与BDR的选择 539
12.2.1 操作内容和环境 539
12.2.2 DR和BDR选择的相关知识介绍 540
12.2.3 DR和BDR选择的路由器配置 543
12.3 单区域广域网OSPF配置 552
12.3.1 操作内容和环境 552
12.3.2 操作步骤 553
12.4 配置帧中继点对多点OSPF 564
12.4.1 操作内容和环境 564
12.4.2 相关知识介绍 564
12.4.3 操作步骤 567
12.5 在单区域内配置交换机和路由器混合设备的OSPF 582
12.5.1 操作内容和环境 582
12.5.2 操作步骤 582
12.6 配置多区域OSPF 594
12.6.1 操作内容和环境 594
12.6.2 多区域OSPF的工作原理 594
12.6.3 自治系统内部多区域OSPF操作 600
12.6.4 自治系统内部区域间路由汇总 610
12.6.5 自治系统外部路由引入 613
12.7 配置存根区域和完全存根区域 621
12.7.1 操作内容和环境 621
12.7.2 相关知识介绍 621
12.7.3 配置OSPF存根区域 622
12.7.4 配置OSPF完全存根区域 628
12.8 配置NSSA区域 634
12.8.1 操作内容和环境 634
12.8.2 相关知识介绍 635
12.8.3 操作步骤 636
12.9 配置OSPF邻居认证 651
12.9.1 操作内容和环境 651
12.9.2 相关知识介绍 652
12.9.3 操作步骤 654
12.10 配置OSPF路由聚合 661
12.10.1 操作内容和环境 661
12.10.2 相关知识介绍 661
12.10.3 操作步骤 663
12.11 配置OSPF虚链路 671
12.11.1 操作内容和环境 671
12.11.2 相关知识介绍 672
12.11.3 操作步骤 675
第13章 Cisco路由器的高级功能 685
13.1 设置路由器成为DHCP服务器 685
13.1.1 操作内容和环境 685
13.1.2 背景知识 686
13.1.3 操作步骤 687
13.2 访问控制列表的配置 696
13.2.1 访问控制列表的操作内容和环境 696
13.2.2 背景知识 697
13.2.3 操作步骤 702
13.3 配置GRE协议 708
13.3.1 GRE协议的操作内容和环境 708
13.3.2 背景知识 709
13.3.3 操作步骤 712
13.4 配置IPSec协议 718
13.4.1 操作内容和环境 718
13.4.2 背景知识 718
13.4.3 操作步骤 726
13.5 配置MPLS协议 743
13.5.1 操作内容和环境 743
13.5.2 背景知识 744
13.5.3 操作步骤 748
参考文献 763
VI
网络实践指南——基于Cisco路由器和交换机
VII