认识TCP/IP协议--简介

  什么是TCP/IP?

  TCP协议和IP协议指两个用在Internet上的网络协议(或数据传输的方法)。它们分别是传输控制协议和互连网协议。这两个协议属于众多的TCP/IP 协议组中的一部分。

  TCP/IP协议组中的协议保证Internet上数据的传输,提供了几乎现在上网所用到的所有服务。这些服务包括:电子邮件的传输 文件传输 新闻组的发布 访问万维网

  在TCP/IP协议组分两种协议:网络层的协议 应用层的协议

  网络层协议

  网络层协议管理离散的计算机间的数据传输。这些协议用户注意不到,是在系统表层以下工作的。比如,IP协议为用户和远程计算机提供了信息包的传输方法。它是在许多信息的基础上工作的,比如说是机器的IP地址。在机器IP地址和其它信息的基础上,IP确保信息包能正确地到达目的机器。通过这一过程,IP和其它网络层的协议共同用于数据传输。如果没有网络工具,用户就看不到在系统里工作的IP。

  应用层协议

  相反地,应用层协议用户是可以看得到的。比如,文件传输协议(FTP)用户是看得到的。用户为了传输一个文件请求一个和其它计算机的连接,连接建立后,就开始传输文件。在传输时,用户和远程计算机的交换的一部分是能看到的。

  请记住这句总结性的话:TCP/IP协议是指一组使得Internet上的机器相互通信比较方便的协议。

  TCP/IP是如何工作的?

  TCP/IP通过使用协议栈工作。这个栈是所有用来在两台机器间完成一个传输的所有协议的几个集合。(这也就是一个通路,数据通过它从一台机器到另一台机器。)栈分成层,与这里有关的是五个层。学习下面的图可以对层有个概念。

  在数据通过图示的步骤后,它就从网络中的一台机器传到另一台机器了。在这个过程中,一个复杂的查错系统会在起始机器和目的机器中执行。

  栈的每一层都能从相邻的层中接收或发送数据。每一层都与许多协议相联系。在栈的每一层,这些协议都在起作用。本章的下一部分将分析这些服务,以及它们在栈中是如何联系的。同时也分析一下它们的功能,它们提供的服务和与安全性的关系。

  协议简介

  已经知道数据是怎样使用TCP/IP协议栈来传输的了。现在仔细分析在栈中所用到的关键的协议。先从网络层的协议开始。

  网络层协议

  网络层协议是那些使传输透明化的协议。除了使用一些监视系统进程的工具外,用户是看不见这些协议的。

  Sniffers是能看到这些步骤的装置。这个装置可以是软件,也可以是硬件,她能读取通过网络发送的每一个包。Sniffers广泛地用于隔离用户看不到的、网络性能下降的问题。sniffers能读取发生在网络层协议的任何活动。而且,正如你已经猜到的,sniffers会对安全问题造成威胁。参见Sniffers一章。

  重要的网络层协议包括:

  地址解析协议(ARP)

  Internet控制消息协议(ICMP)

  Internet协议(IP)

  传输控制协议(TCP)

  下面仅仅简单介绍一下。

  地址解析协议ARP

  地址解析协议的目的是将IP地址映射成物理地址。这在使信息通过网络时特别重要。在一个消息(或其他数据)发送之前,被打包到IP包里,或适合于Internet传输的信息块。这包括两台计算机的IP地址。在这个包离开发送计算机之前,必须要找到目标的硬件地址。这就是ARP最初用到的地方。

  一个ARP请求消息在网上广播。请求由一个进程接收,它回复物理地址。这个回复消息由原先的那台发送广播消息计算机接收,从而传输过程就开始了。

  ARP的设计包括一个缓存。为了理解缓存的概念,考虑一下:许多现代的HTML浏览器(比如Netscape或Microsoft的Internet

  Explorer)使用了一个缓存。缓存是磁盘的一部分,从Web网上经常访问的东西就存在里面(比如按钮,或通用的图形)。这是符合逻辑的,因为当你返回这些主页的时候,这些东西不必再从远程计算机上装载了。从缓存中装载的速度要比较快。

  相似的,ARP的实现包括一个缓存。以这种方式,网络或远程计算机的硬件地址就存着了,并为接着的ARP请求作准备。这样节省了时间和网络资源。

  但是,正是由于缓存,就引起了安全性。

  对于网络安全来将,这并不是最重要的安全性问题。然而,地址缓存(不仅仅是在ARP而且在其他例子中)确实会引起安全性问题。一旦这些地址保存,都会是让黑客伪造一个远程连接,它们对缓存的地址很欢迎。 Internet控制消息协议ICMP

  Internet控制消息协议是用来在两台计算机间传输时处理错误和控制消息的。它允许这些主机共享信息。在这一方面,ICMP是用来诊断网络问题的重要工具。通过ICMP收集诊断信息的例子如下:

  一台主机关机

  一个网关堵塞和工作不正常

  网络中其他的失败

  可能最著名的ICMP实现的网络工具是ping。ping通常用来判断是否一台远程机器正开着,数据包从用户的计算机发到远程计算机。这些包通常返回用户的计算机。如果没有返回数据包到用户计算机,ping程序就产生一个表示远程计算机关机的错误消息。

  应用层协议

  应用层协议是专门为用户提供应用服务的。它是建立在网络层协议之上的。

  Telnet

  Telnet在RFC

  854中有详细地描述,Telnet协议中说明:Telnet协议的目的就是提供一个相当通用的,双向的,面向八位字节的通信机制。它的最初目的是允许终端和面向终端的进程之间的交互。

  Telnet不仅允许用户登录到一个远程主机,它允许用户在那台计算机上执行命令。这样,Los Angeles的一个人可以Telnet到New

  York的一台机器,并在这台机器上运行程序,就跟在New York的用户一样。

  对于熟悉Telnet的用户来讲,他的操作与BBS的界面一样。Telnet是一个能提供建立在终端字体的访问数据库的一个应用程序。比如,多于80%的大学的图书馆的目录可以通过Telnet访问到。

  即使GUI应用程序被大大采用,Telnet这个建立在字符基础上的应用程序,仍相当的流行。这有许多原因。第一,Telnet允许你以很小的网络资源花费实现各种功能(如收发邮件)。实现安全的Telnet是件十分简单的事。有许多这样的程序,通用的是Secure Shell。

  要使用Telnet,用户要指定启动Telnet客户的命令,并在后面指定目标主机的名字。在Linux中,可以这样:

  $telnet internic.net

  这个命令启动Telnet过程,连接到internic.net。这个连接可能被接受,或被拒绝,这与目标主机的配置有关。在UNIX,Telnet命令很久以前就是内置的。也就是说,Telnet已经包含在UNIX的发行版本中有十年了。但并不是所有操作系统都将Telnet作为内置的Telnet客户。

  文件传输协议FTP

  文件传输协议是从一个系统向另一个系统传递文件的标准方法。它的目标在RFC 0765中写得很清楚。

  FTP的目标是1)促进文件和程序的共享,2)鼓励间接和含蓄的使用远程计算机,3)使用户不必面对主机间使用的不同的文件存储系统,4)有效和可靠地传输文件。FTP,尽管用户可以直接通过终端来使用,是设计成让别的程序使用的。

  约有二十年,研究者调查了相当广泛的文件传输方法。FTP经历了多次改变。1971年作了第一次定义,整个的说名参见RFC 114。

  FTP是怎样工作的?

  FTP文件传输应用在客户/服务环境。请求机器启动一个FTP客户端软件。这就给目标文件服务器发出了一个请求。典型地,这个要求被送到端口21。一个连接建立起来后,目标文件服务器必须运行一个FTP服务软件。

  FTPD是标准的FTP服务daemon。它的功能很简单:回复inetd收到的连接请求,并满足这些要传输文件的请求。这个daemon在许多发行版的UNIX中是个标准。

  FTPD等待一个连接请求。当这样的一个请求到达时,FTPD请求用户登录。用户提供它的合法的登录名和口令或匿名登录。

  一旦登录成功,用户可以下载文件了。在某些情况下,如果服务器的安全允许,用户可以上载文件。

  简单邮件传输协议SMTP

  简单邮件传输协议的目的是使得邮件传输可靠和高效。

  SMTP是一个相当小和有效的协议。用户给SMTP服务器发个请求。一个双向的连接随后就建立了。客户发一个MAIL指令,指示它想给Internet上的某处的一个收件人发个信。如果SMTP允许这个操作,一个肯定的确认发回客户机。随后,会话开始。客户可能告知收件人的名称和IP地址,以及要发送的消息。

  尽管SMTP相当简单,邮件服务是无穷的安全漏洞的源泉。

  SMTP服务在Linux内部是内置的。其它网络操作系统也提供某些形式的SMTP。

  Gopher

  Gopher是一个分布式的文件获取系统。它最初是作为Campus Wide Information

  System在Minnesota大学实现的。它的定义如下:

  Internet

  Gopher协议最初是设计用来最为一个分布式文件发送系统的。文档放在许多服务器上,Gopher客户软件给客户提供一个层次项和目录,看上去象一个文件系统。事实上,Gopher的界面设计成类似一个文件系统,因为文件系统是查找文件和服务的最好模型。

  Gopher服务功能相当强大。能提供文本,声音,和其他媒体。主要用在文本模式,比通过用浏览器使用HTTP要来得快。毫无疑问,最流行的Gopher客户软件是为UNIX编写的。其他操作系统也有Gopher客户端软件。

  典型地,用户启动一个Gopher客户端软件,和一个Gopher服务器。随后,Gopher返回一个可以选择的菜单。可能包括查找菜单,预先设置的目标,或文件目录。

  注意,Gopher模式完全是一个客户服务器模式。用户每次登录,客户给Gopher服务器发送一个请求,要求所有能得到的文档。Gopher服务器对这个信息做出反应知道用户请求一个对象。

  超联结传输协议HTTP

  由于它能让用户在网上冲浪,超联结传输协议可能是最有名的协议。HTTP是一个应用层协议,它很小也很有效,符合发布、合成和超媒体文本系统的的需要。是一个通用的,面向对象的协议,通过扩展请求命令,可以用来实现许多任务。HTTP的一个特点是数据表现的类型允许系统相对独立于数据的传输。

  HTTP的出现永久地改变了Internet的特点,主要是使Internet大众化。在某些程度上,他它的操作与Gopher相类似。比如,它的工作是请求/响应式的。这是相当重要的一点。其他应用程序,比如Telnet仍需要用户登录(当他们登录时,便消耗系统资源)。但Gopher和HTTP协议,消除了这一现象。用户(客户)仅仅在他们请求或接受数据时消耗资源。

  使用通用浏览器,象Netscape Navigator或Microsoft Internet

  Explore,可以监视这一过程的发生。在WWW上的数据,你的浏览器会和服务器及时联系。这样,它首先获取文本,然后是图形,再后是声音,等等。在你的浏览器的状态栏的左下角。当它装载页面时,看着它几分钟。你会看到请求和服务活动的发生,通常速度很快。

  HTTP并不特别关注所需的是什么类型的数据。各种形式的媒体都能插进,以及远程的HTML主页。

  网络新闻传输协议NNTP

  网络新闻传输协议是一个广泛使用的协议。它提供通常作为USENET新闻组的新闻服务。

  NNTP定义了一个协议,使用一个可靠的建立在流的基础上的在Internet上传输新闻的分发,询问,获取和发布的一个协议。NNTP被设计成新闻被存储在一个中心的数据库,允许订阅者选择他们希望读的主题。目录,交叉引用和过期的新闻都能找到。

  NNTP有许多特性和简单邮件传输协议以及TCP相似。与SMTP相似,它接受一般的英语命令。和TCP相似,它是建立在流的传输和分发的基础上的。NNTP通常在端口119运行。

  下面详细地讲解一下以太网,IP协议和TCP协议。

  第二节 Etherner

  以太网的基本工作原理

  以太网上的所有设备都连在以太总线上,它们共享同一个通信通道。以太网采用的是广播方式的通信,即所有的设备都接收每一个信息包。网络上的设备通常将接收到的所有包都传给主机界面,在这儿选择计算机要接收的信息,并将其他的过滤掉。以太网是最有效传递的意思是,硬件并不给发送者提供有关信息已收到的信息。比如,即使目标计算机碰巧关机了,送给它的包自然就丢失,但发送者并不会知道这一点。

  以太网的控制是分布式的。以太网的存取方式叫做带有Collision的Carrier Sense Multipe

  Access。因为多台计算机可以同时使用以太网,每台机器看看是否有载波信号出现判定总线是否空闲。如果主机接口有数据要传输,它就侦听,看看是否有信号正在传输。如果没有探测到,它就开始传输。每次传输都在一定的时间间隔内,即传输的包有固定的大小。而且,硬件还必须在两次传输之间,观察一个最小的空闲时间,也就是说,没有一对机器可以不给其他计算机通信的机会而使用总线。

  冲突侦测和恢复

  当开始一个传输时,信号并不能同时到达网络的所有地方。传输速度实际上是光速的80%。这就有可能两个设备同时探测到网络是空闲的,并都开始传输。但当这两个电信号在网络上相遇时,它们都不再可用了。这种情况叫做冲突。

  以太网在处理这种情况时,很有技巧性。每台设备在它传输信号的时候都监视总线,看看它在传输的时候是否有别的信号的干扰。这种监视叫做冲突侦听。在探测到冲突后,设备就停止传输。有可能网络会因为所有的设备都忙于尝试传输数据而每次都产生冲突。

  为了避免这种情况,以太网使用一个2进制指数后退策略。发送者在第一次冲突后等待一个随机时间,如果第二次还是冲突,等待时间延长一倍。第三次则再延长一倍。通过这种策略,即使两台设备第二的等待时间会很接近,但由于后面的等待时间成指数倍增长,不就,他们就不会相互冲突了。

  以太网的硬件地址

  每台连接到以太网上的计算机都有一个唯一的48位以太网地址。以太网卡厂商都从一个机构购得一段地址,在生产时,给每个卡一个唯一的地址。通常,这个地址是固化在卡上的。这个地址又叫做物理地址。

  当一个数据帧到达时,硬件会对这些数据进行过滤,根据帧结构中的目的地址,将属于发送到本设备的数据传输给操作系统,忽略其他任何数据。

  一个是地址位全为1的时表示这个数据是给所有总线上的设备的。

  以太网的帧结构

  以太网的帧的长度是可变的,但都大于64字节,小于1518字节。在一个包交换网络中,每个以太网的帧包含一个指明目标地址的域。上图是以太网帧的格式,包含了目标和源的物理地址。为了识别目标和源,以太网帧的前面是一些前导字节,类型和数据域以及冗余校验。前导由64个0和1交替的位组成,用于接收同步。32位的CRC校验用来检测传输错误。在发送前,将数据用CRC进行运算,将结果放在CRC域。接收到数据后,将数据做CRC运算后,将结果和CRC域中的数据相比较。如果不一致,那么传输过程中有错误。

  帧类型域是一个16位的整数,用来指示传输的数据的类型。当一个帧到达台设备后,操作系统通过帧类型来决定使用哪个软件模块。从而允许在同一台计算机上同时运行多个协议。

  第三节 Internet地址

  网络上的每一台计算机都有一个表明自己唯一身份的地址。TCP/IP协议对这个地址做了规定。一个IP地址由一个32位的整数表示。它的一个较为聪明的地方是很好的规定了地址的范围和格式,从而使地址寻址和路由选择都很方便。一个IP地址是对一个网络和它上面的主机的地址一块编码而形成的一个唯一的地址。

  在同一个物理网络上的主机的地址都有一个相同前缀,即IP地址分成两个部分:(netid,hostid)。其中netid代表网络地址,hostid代表这个网络上的主机地址,根据他们选择的位数的不同,可以分成以下五类基本IP地址。

  通过地址的前3位,就能区分出地址是属于A,B或C类。其中A类地址的主机容量有16777216台主机,B类地址可以有65536台主机,C类地址可以有256台主机。

  将地址分成网络和主机部分,在路由寻址时非常有用,大大提高了网络的速度。路由器就是通过IP地址的netid部分来决定是否发送和将一个数据包发送到什么地方。

  一个设备并不只能有一个地址。比如一个连到两个物理网络上的路由器,它就有两个IP地址。所以可以将IP地址看成是一个网络连接。

  为了便于记忆和使用32位的IP地址,可以将地址使用用小数点分开的四位整数来表示。下面举个例子:

  IP地址: 10000000 00001010 00000010 00011110

  记为: 128.10.2.30

  第四节 IP协议和路由

IP协议

  IP协议定义了一种高效、不可靠和无连接的传输方式。由于传输没有得到确认,所以是不可靠的。一个包可能丢失了,或看不见了,或是延时了,或是传输顺序错了。但是传输设备并不检测这些情况,也不通知通信双方。无连接

  因为每个包的传递与别的包是相互独立的。同一个机器上的包可能通过不同的路径到达另一台机器,或在别的机器上时已经丢失。由于传输设备都试图以最快的速度传输,所以是最高效的。

  IP协议定义了通过TCP/IP网络传输的数据的格式,定义了数据进行传递的路由功能。

  IP数据包的格式如下:

  由一个头和数据部分组成。数据包的头部分包含诸如目的地址和源地址,数据的类型等信息。

  数据包头格式:

  数据包是由软件处理的,它的内容和格式并不是由硬件所限定。

  比如,头4位是一个VERS,表示的是使用的IP协议的版本号。它表示发送者、接收者和路由器对该数据的处理都要按所示的版本进行处理。现在的版本号是4。软件通过版本来决定怎样进行处理。

  头长度(HLEN)也是用4位来表示以32位为计量单位的头的长度。

  TOTAL LENGTH表示这个数据包的长度(字节数)。从而包中的数据的长度就可以通过上面两个数据而计算出来了。

  一般来说,数据部分就是一个物理的帧。对于以太网来讲,就是将整个的一个以太网的帧数据作为一个IP数据包的数据来传输的。

  数据包的头里面还包含了一些其他的信息,请参见有关资料的具体介绍。 IP路由

  在一个网络上,连接两种基本设备,主机和路由器。路由器通常连接几个物理网络。对一台主机来讲,要将一个数据包发往别的网络,就需要知道这个数据包应该走什么路径,才能到达目的地。对于一台路由器来讲,将收到的数据包发往哪个物理网络。因此,无论主机还是路由器,在发送数据包是都要做路由选择。

  数据发送有两种方式:直接数据发送和间接数据发送。

  直接数据发送通常是在同一个物理网络里进行的。当一个主机或路由器要将数据包发送到同一物理网络上的主机上时,是采用这种方式的。首先判断IP数据包中的目的地址中的网络地址部分,如果是在同一个物理网络上,则通过地址分析,将该IP目的地址转换成物理地址,并将数据解开,和该地址合成一个物理传输帧,通过局域网将数据发出。

  间接数据发送是在不同物理网络里进行的。当一个主机或路由器发现要发送的数据包不在同一个物理网络上时,这台设备就先在路由表中查找路由,将数据发往路由中指定的下一个路由器。这样一直向外传送数据,到最后,肯定有一个路由器发现数据要发往同一个物理网络,于是,再用直接数据发送方式,将数据发到目的主机上。

  主机和路由器在决定数据怎样发送的时候,都要去查找路由。一般,都将路由组成一个路由表存在机器中。路由表一般采用Next-Hop格式,即(N,R)对。N是目标地址的网络地址,R是传输路径中的下一个路由。通常这个路由和这台机器在同一物理网络里。

  第五节 TCP协议

  TCP传输原理

  TCP协议在IP协议之上。与IP协议提供不可靠传输服务不同的是,TCP协议为其上的应用层提供了一种可靠传输服务。这种服务的特点是:可靠、全双工、流式和无结构传输。

  它是怎样实现可靠传输的呢?

  TCP协议使用了一个叫积极确认和重发送(positive acknowledgement with retransmission)的技术来实现这一点的。

  接收者在收到发送者发送的数据后,必须发送一个相应的确认(ACK)消息,表示它已经收到了数据。

  发送者保存发送的数据的记录,在发送下一个数据之前,等待这个数据的确认消息。在它发送这个数据的同时,还启动了一个记时器。如果在一定时间之内,没有接收到确认消息,就认为是这个数据在传送时丢失了,接着,就会重新发送这个数据。

  这种方法还产生了一个问题,就是包的重复。如果网络传输速度比较低,等到等待时间结束后,确认消息才返回到发送者,那么,由于发送者采用的发送方法,就会出现重复的数据了。解决的一个办法是给每个数据一个序列号,并需要发送者记住哪个序列号的数据已经确认了。为了防止由于延时或重复确认,规定确认消息里也要包含确认序列号。从而发送者就能知道哪个包已经确认了。 TCP协议中还有一个重要的概念:滑动窗口。这一方法的使用,使得传输更加高效。

  有前面的描述可见,发送者在发送完一个数据包之后,要等待确认。在它收到确认消息之前的这段时间是空闲的。如果网络延时比较长,这个问题会相当明显。

  滑动窗口方法是在它收到确认消息以前,发送多个数据包。可以想象成有一个窗口在一个序列上移动。

  如果一个包发送出去之后还没有确认,叫做未确认包。通常未确认的包的个数就是窗口的大小。

  此窗口的大小为8。发送者允许在接收到一个确认消息以前发送8个数据包。当发送者接到窗口中第一个包的确认消息时,它就将窗口下滑一个。

  在接收端,也有一个滑动窗口接收和确认一个包。

  端口

  使用TCP传输就是建立一个连接。在TCP传输中一个连接有两个端点组成。其实,一个连接代表的是发送和接收两端应用程序的之间的一个通信。可以把他们想象成建立了一个电路。通常一个连接用下面的公式表示:

  (host,port)

  host是主机,port是端口。TCP端口能被几个应用程序共享。对于程序员来讲,可以这样理解:一个应用程序可以为不同的连接提供服务。

  TCP格式

  TCP传输的单位是段,在建立连接,传送数据,确认消息和告之窗口大小时均要进行段的交换。

  段的格式如下图:

  段的格式也分成两部分,头和数据。

  上面格式中的名称已经足够说明了他们的作用了。具体的含义请参见有关资料。

  建立一个TCP连接

  TCP协议使用一个三次握手来建立一个TCP连接的。

  握手过程的第一个段的代码位设置为SYN,序列号为x,表示开始一次握手。接收方收到这个段后,向发送者回发一个段。代码位设置为SYN和ACK,序列号设置为y,确认序列号设置为x+1。发送者在受到这个段后,知道就可以进行TCP数据发送了,于是,它又向接收者发送一个ACK段,表示,双方的连接已经建立。

  在完成握手之后,就开始正式的数据传输了。

  上面握手段中的序列号都是随机产生的。

  TCP/IP

  每种网络协议都有自己的优点,但是只有TCP/IP允许与Internet完全的连接。TCP/IP是在60年代由麻省理工学院和一些商业组织为美国国防部开发的,即便遭到核攻击而破坏了大部分网络,TCP/IP仍然能够维持有效的通信。ARPANET就是由基于协议开发的,并发展成为作为科学家和工程师交流媒体的Internet。

  TCP/IP同时具备了可扩展性和可靠性的需求。不幸的是牺牲了速度和效率(可是:TCP/IP的开发受到了政府的资助)。

  Internet公用化以后,人们开始发现全球网的强大功能。Internet的普遍性是TCP/IP至今仍然使用的原因。常常在没有意识到的情况下,用户就在自己的PC上安装了TCP/IP栈,从而使该网络协议在全球应用最广。

  TCP/IP的32位寻址功能方案不足以支持即将加入Internet的主机和网络数。因而可能代替当前实现的标准是IPv6

学习自:network.51cto.com


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本书介绍TCP/IP及其应用。TCP/IP是Internet上使用的协议,而Internet是世界上最大的互联网络。本书内容十分丰富,几乎涵盖了有关TCP/IP的各个方面,包括开放式通信模型、TCP/IP通信模型、IP网络中的命名和寻址机制、地址解析及反向地址解析协议、DNS域字服务器、WINS、地址发现协议、IPv6、IP网络中的路由协议(RIP、OSPF等)、互联网打印协议、LDAP目录服务、远程访问协议、IP安全与防火墙。本书介绍了如何为Windows 9x/NT配置TCP/IP;还介绍了如何使用TCP/IP应用程序,包括远程登录、FTP、Web浏览等。 目 录译者序前言第一部分 TCP/IP基础第1章 开放式通信模型简介 11.1 开放式网络的发展 11.1.1 通信处理层次化 21.1.2 OSI参考模型 31.1.3 模型的使用 51.2 TCP/IP参考模型 71.3 小结 7第2章 TCP/IP和Internet 82.1 一段历史 82.1.1 ARPANET 82.1.2 TCP/IP 92.1.3 国家科学基金会(NSF) 92.1.4 当今的Internet 122.2 RFC和标准化过程 122.2.1 获得RFC 132.2.2 RFC索引 132.2.3 有关RFC的幽默 132.3 Internet服务简介 132.3.1 Whois和Finger 142.3.2 文件传输协议 142.3.3 Telnet 142.3.4 Email 142.3.5 WWW 142.3.6 USENET News 152.4 Intranet和Extranet概览 152.4.1 Intranet 152.4.2 将Intranet对外开放 162.5 Internet的明天 162.5.1 下一代Internet(NGI) 162.5.2 超速骨干网服务 162.5.3 Internet2(I2) 172.6 Internet管理组织 172.6.1 Internet协会 172.6.2 Internet体系结构组 172.6.3 Internet工程任务组 172.6.4 Internet工程指导组 172.6.5 Internet编号管理局 182.6.6 Internet名字和编号分配组织 (ICANN) 182.6.7 Internet网络信息中心和其他注 册组织 182.6.8 RFC编辑 182.6.9 Internet服务提供商 182.7 小结 19第3章 TCP/IP概述 203.1 TCP/IP的优点 203.2 TCP/IP的层和协议 213.2.1 体系结构 213.2.2 传输控制协议 213.2.3 IP协议 233.2.4 应用层 253.2.5 传输层 253.2.6 网络层 253.2.7 链路层 253.3 远程登录(Telnet) 253.4 文件传输协议(FTP) 253.5 普通文件传输协议(TFTP) 263.6 简单邮件传输协议(SMTP) 263.7 网络文件系统(NFS) 263.8 简单网络管理协议(SNMP) 273.9 TCP/IP和系统结合 273.10 内部网概述 283.11 小结 28第二部分 命名和寻址第4章 IP网络中的名字和地址 294.1 IP寻址 294.1.1 二进制和十进制数 304.1.2 IPv4地址格式 304.2 子网的出现 344.2.1 分子网 354.2.2 可变长子网掩码(VLSM) 374.3 无类域前路由(CIDR) 384.3.1 无类地址 384.3.2 强化路由汇聚 394.3.3 超网化 394.3.4 CIDR怎样工作 394.3.5 公共地址空间 404.3.6 RFC 1597和1918 404.4 小结 40第5章 ARP和RARP 415.1 使用地址 415.1.1 子网寻址 415.1.2 IP地址 435.2 使用地址解析协议 445.2.1 ARP cache 455.2.2 代理ARP 475.2.3 反向地址解析协议 475.3 使用ARP命令 475.4 小结 47第6章 DNS:名字服务器 486.1 域名系统概述 486.2 授权局 506.3 DNS分布数据库 506.4 域和区 506.5 Internet顶级域 516.6 选择一个域名服务器 526.7 名字服务解析过程 526.7.1 递归查询 526.7.2 叠代查询 526.8 高速缓存 526.9 反向解析(Pointer)查询 526.10 DNS安全 526.11 资源记录 536.12 小结 54第7章 WINS 557.1 NetBIOS 557.2 NetBIOS名字解析 577.3 动态NetBIOS名字解析 587.3.1 使用WINS的优点 587.3.2 WINS如何工作 597.3.3 配置WINS客户机 607.3.4 为代理配置WINS 607.3.5 配置NT 4.0系统 617.3.6 配置Windows 95或Windows 98 系统 617.4 安装WINS服务器 617.5 WINS管理和维护 627.5.1 加入静态表项 627.5.2 维护WINS数据库 637.5.3 备份WINS数据库 657.5.4 备份WINS注册项 657.5.5 恢复WINS数据库 657.5.6 压缩WINS数据库 667.5.7 WINS复制参与者 667.5.8 WINS实现建议 677.6 集成WINS和DNS名字解析服务 677.7 DHCP服务WINS选项 677.8 通过LMHOSTS进行NetBIOS名字 解析 687.9 小结 69第8章 地址发现协议(BOOTP和DHCP) 718.1 “引导”协议(BOOTP) 718.2 动态主机配置协议(DHCP) 728.2.1 DHCP如何工作 728.2.2 理解租用地址 738.3 管理地址池 748.4 DHCP能处理的其他分配 758.4.1 注意重载 758.4.2 其他分配 758.5 小结 76第三部分 IP和相关协议第9章 IP协议家族 779.1 TCP/IP模型 779.1.1 解剖TCP/IP模型 789.1.2 协议组件 789.2 理解网际协议(IP) 799.2.1 IPv4结构 799.2.2 IP做什么 809.3 理解传输控制协议(TCP) 819.3.1 TCP头结构 819.3.2 TCP做什么 839.4 理解用户数据报协议(UDP) 859.4.1 UDP头结构 859.4.2 UDP能做什么 859.4.3 TCP和UDP 869.5 小结 86第10章 IPv6 8710.1 IPv6数据报 8710.1.1 优先级分类 8810.1.2 流标识 8910.1.3 128位IP地址 8910.1.4 IP扩展头 9010.2 多IP地址主机 9110.3 单播、组播和任一播头 9110.4 从IPv4到IPv6的过渡 9310.5 小结 94第四部分 IP互联第11章 IP网络中的路由 9511.1 路由基本知识 9511.1.1 静态路由 9611.1.2 距离-向量路由 9911.1.3 链路-状态路由 10011.2 IP网络中的收敛 10211.2.1 适应拓扑变化 10211.2.2 收敛时间 10611.3 计算IP网络中的路由 10611.3.1 存储多条路由 10711.3.2 初始化更新 10711.3.3 路由度量标准 10711.4 小结 108第12章 路由信息协议(RIP) 10912.1 理解RFC1058 10912.1.1 RIP报文格式 10912.1.2 RIP路由表 11112.2 操作机制 11212.2.1 计算距离向量 11312.2.2 更新路由表 11612.2.3 寻址问题 11812.3 拓扑变化 12012.3.1 收敛 12012.3.2 计值到无穷 12212.4 RIP的限制 12712.4.1 跳数限制 12812.4.2 固定度量 12812.4.3 对路由表更新反应强烈 12812.4.4 收敛慢 12812.4.5 缺乏负载均衡 12812.5 小结 129第13章 开放式最短路径优先 13013.1 OSPF起源 13013.2 理解RFC 2328 OSPF,版本2 13013.2.1 OSPF区 13113.2.2 路由更新 13413.3 研究OSPF数据结构 13613.3.1 HELLO报文 13713.3.2 数据库描述报文 13713.3.3 链路-状态请求报文 13813.3.4 链路-状态更新报文 13813.3.5 链路-状态应答报文 14013.4 计算路由 14013.4.1 使用自动计算 14013.4.2 使用缺省路由耗费 14113.4.3 最短路径树 14213.5 小结 144第14章 网关协议 14514.1 网关、桥和路由器 14514.1.1 网关 14514.1.2 网桥 14614.1.3 路由器 14614.1.4 自治系统 14614.2 网关协议:基础知识 14614.3 内部网关协议和外部网关协议 14714.3.1 网关-网关协议(GGP) 14714.3.2 外部网关协议(EGP) 14714.3.3 内部网关协议(IGP) 14814.4 小结 148第五部分 网络服务第15章 互联网打印协议 14915.1 IPP历史 14915.2 IPP和端用户 15015.3 使用HP的IPP实现 15115.4 小结 152第16章 LDAP:目录服务 15316.1 为什么使用目录服务 15316.2 目录服务的功能 15316.3 IP上的目录服务 15416.4 OSI X.500目录模型 15616.4.1 早期的X.500 15716.4.2 今天的X.500 15716.5 LDAP结构 15716.5.1 LDAP层次结构 15716.5.2 名字结构 15816.6 目录系统代理和访问协议 15816.7 轻型目录访问协议 15816.7.1 查询信息 15916.7.2 存储信息 16016.7.3 访问权限和安全 16016.8 LDAP服务器-服务器通信 16116.8.1 LDAP数据互换格式(LDIF) 16116.8.2 LDAP复制 16216.9 设计LDAP服务 16216.9.1 定义需求 16216.9.2 设计策略 16316.9.3 性能 16416.9.4 网络功能 16516.9.5 安全 16616.10 LDAP配置 16916.11 产品环境 16916.11.1 创建计划 17016.11.2 有价值的建议 17116.12 选择LDAP软件 17116.13 小结 174第17章 远程访问协议 17517.1 远程互联 17517.1.1 ISDN 17617.1.2 电缆调制解调器 17617.1.3 数字用户环(DSL) 17617.1.4 无线网络 17717.2 远程认证拨入用户服务(RADIUS) 17717.2.1 RADIUS认证 17817.2.2 记账信息 17917.3 用SLIP、CSLIP和PPP传输IP数 据报文 17917.3.1 串行线路接口协议(SLIP) 17917.3.2 压缩的SLIP(CSLIP) 18017.3.3 点到点协议(PPP) 18017.4 隧道远程访问 18417.4.1 点到点隧道协议(PPTP) 18517.4.2 两层隧道协议(L2TP) 18817.4.3 IPSec 19217.5 小结 194第18章 防火墙 19518.1 使网络安全 19518.2 使用防火墙 19618.2.1 代理服务器 19718.2.2 报文过滤器 19818.3 使服务安全 19818.3.1 电子邮件(SMTP) 19818.3.2 HTTP:万维网 19918.3.3 FTP 19918.3.4 Telnet 19918.3.5 Usenet:NNTP 19918.3.6 DNS 20018.4 建造用户自己的防火墙 20018.5 使用商业防火墙软件 20018.6 小结 202第19章 IP安全 20319.1 使用加密 20319.1.1 公共-私钥加密 20419.1.2 对称私钥加密 20519.1.3 DES、IDEA及其他 20519.2 数字签名认证 20619.3 破译加密的数据 20719.4 保护网络 20719.4.1 登录名和口令 20819.4.2 文件的目录允许权限 20819.4.3 信任关系 20919.4.4 UNIX和Linux系统上的UUCP 20919.5 应付最坏情况 21019.6 小结 210第六部分 实现TCP/IP第20章 一般配置问题 21120.1 安装网卡 21120.1.1 网卡 21120.1.2 资源配置 21220.1.3 安装适配器软件 21320.1.4 重定向器和API 21420.1.5 服务 21420.1.6 NIC接口 21520.2 网络和传输层协议 21520.2.1 IP配置要求 21520.2.2 配置缺省网关地址 21620.2.3 配置名字服务器地址 21720.2.4 配置邮件服务器地址 21720.2.5 注册域名 21820.3 IP配置 21820.4 配置路由表 21820.5 异种协议的IP封装 21920.6 小结 220第21章 Windows 98 22121.1 Windows 98网络体系结构 22121.1.1 安装网卡 22221.1.2 更改网卡配置 22421.1.3 当Windows 98引导失败 22421.2 配置Windows 98的TCP/IP 22521.2.1 写在开始之前 22521.2.2 安装TCP/IP 22521.2.3 配置微软的TCP/IP 22521.2.4 DNS配置 22721.2.5 静态配置文件 22821.2.6 注册表配置 22921.2.7 测试TCP/IP 23121.3 小结 232第22章 Windows 98拨号网络 23322.1 配置拨号网络适配器 23322.2 安装拨号网络 23422.3 服务器类型 23522.4 编写脚本 23822.5 多重链接 23822.6 PPTP 23922.6.1 安装及配置PPTP 24022.6.2 建立PPTP连接 24022.7 Windows 98拨号服务器 24122.8 解决拨号网络连接中的问题 24222.8.1 确认DUN配置 24222.8.2 PPP日志 24322.9 小结 243第23章 Windows NT 4.0 24423.1 Windows NT版本 24423.2 体系结构 24423.3 安装Windows NT 4.0 24423.4 配置TCP/IP 24623.4.1 IP地址 24623.4.2 DNS 24823.4.3 WINS地址 24823.4.4 DHCP中继 24923.4.5 路由 25023.5 简单TCP/IP服务 25023.6 远程访问服务(RAS) 25023.7 DHCP服务器 25223.7.1 安装DHCP服务器服务 25223.7.2 控制DHCP服务器服务 25323.7.3 压缩DHCP数据库 25323.7.4 管理DHCP 25423.8 使用Microsoft DNS 25623.8.1 安装DNS 25623.8.2 创建区 25723.8.3 配置逆向域名解功能 25823.8.4 配置DNS与WINS服务器的连 接 25923.8.5 增加辅助名字服务器 25923.9 FTP和HTTP服务 25923.10 TCP/IP打印服务 25923.10.1 安装TCP/IP打印服务 25923.10.2 安装LPR服务 26023.11 Windows 2000新特性 26023.12 小结 261第24章 在Novell NetWare中支持IP 26224.1 Novell与TCP/IP 26224.1.1 IP与NetWare 4 26224.1.2 NetWare 5与Pure IP初始化 26224.2 传统解决方案:NetWare 3.x到 NetWare 4.x的IP支持 26324.2.1 IP隧道 26424.2.2 IP中继 26424.2.3 LAN WorkPlace 26424.2.4 IPX-IP网关 26524.2.5 NetWare/IP 26524.3 NetWare 5—Novell对IP的 完全支持 26624.3.1 纯IP 26624.3.2 多协议 26624.4 安装选项 26624.4.1 NetWare 5的IP-Only安装 26724.4.2 IPX-Only安装 26724.4.3 混合TCP/IP安装 26824.5 IP迁移辅助工具 26824.5.1 NDS 26824.5.2 DNS 26924.5.3 DHCP 26924.5.4 DDNS 26924.5.5 SLP 26924.5.6 兼容模式 26924.5.7 迁移代理 27024.6 迁移策略 27024.6.1 使用测试平台 27024.6.2 迁移建议 27024.7 小结 271第七部分 使用TCP/IP应用第25章 Whois和Finger 27325.1 理解Whois协议 27325.1.1 互联网注册 27325.1.2 Whois数据库 27425.1.3 基于Web的Whois 27525.1.4 命令行方式的Whois 27625.1.5 示例 27625.1.6 基于Telnet的Whois 27825.2 扩充Whois 27925.2.1 提示Whois(RWhois) 27925.2.2 WHOIS++ 28025.3 使用Finger 28025.3.1 Finger命令 28025.3.2 Finger 守护进程 28225.3.3 非UNIX环境下的Finger 28325.3.4 Finger的应用 28325.4 相关RFC文档 28525.5 小结 285第26章 文件传输协议 28626.1 FTP和TFTP在网络世界中的作用 28626.2 使用FTP传输文件 28626.2.1 FTP连接 28726.2.2 使用FTP客户端建立连接 28826.2.3 FTP安全 29626.2.4 FTP服务器及守护进程 29926.2.5 匿名FTP访问 29926.3 使用TFTP 30026.3.1 FTP与TFTP的区别 30126.3.2 TFTP命令 30126.4 小结 301第27章 使用Telnet 30227.1 理解Telnet协议 30227.2 Telnet守护进程 30327.3 使用Telnet 30427.3.1 UNIX telnet命令 30427.3.2 Telnet GUI应用 30527.3.3 Telnet命令 30527.3.4 示例 30827.4 高级主题 30927.4.1 安全 30927.4.2 Telnet应用 30927.4.3 使用Telnet访问其他TCP/IP 服务 31027.5 相关RFC文档 31227.6 小结 313第28章 使用r系列实用工具 31428.1 理解r系列命令 31428.1.1 安全问题 31428.1.2 禁止使用r系列命令 31528.1.3 增强r系列命令的安全性 31628.2 使用r系列命令的替代方法 31728.3 r系列命令详解 31728.3.2 相关文件 32028.4 在非UNIX环境下实现r系 列命令的功能 32128.5 小结 322第29章 使用网络文件系统(NFS) 32329.1 什么是NFS 32329.1.1 NFS的历史 32329.1.2 为何使用NFS 32329.2 实现—NFS工作过程 32429.2.1 远程过程调用(RPC) 和外部数据表示(XDR) 32429.2.2 加载类型 32429.3 NFS使用的文件及命令 32529.3.1 NFS守护进程 32529.3.2 与NFS相关的文件 32729.3.3 NFS服务器命令 32929.3.4 NFS客户命令 33129.4 示例:共享及加载NFS文件系统 33329.5 NFS常见问题及解决方案 33429.5.1 不能加载 33429.5.2 不能卸载 33429.5.3 硬加载与软加载 33429.6 相关协议及产品 33429.6.1 WebNFS 33529.6.2 基于PC的NFS及其他客户端 软件 33529.6.3 SMB和CIFS 33529.6.4 其他产品 33629.7 小结 336第八部分 使用基于IP的应用第30章 在应用中集成TCP/IP 33730.1 使用浏览器作为表示层 33830.2 不断增加的Internet应用 33830.3 在已有应用中集成TCP/IP 33930.4 在其他网络中使用TCP/IP 33930.4.1 NetBIOS与TCP/IP 33930.4.2 IPX与UDP 34030.4.3 ARCNET与TCP/IP 34030.5 小结 340第31章 Internet Email协议 34131.1 电子邮件 34131.1.1 电子邮件的历史 34131.1.2 标准及制定标准的组织 34131.2 X.400 34131.3 简单邮件传输协议(SMTP) 34331.3.1 MIME和SMTP 34331.3.2 其他编码标准 34431.3.3 SMTP命令 34431.3.4 SMTP状态码 34531.3.5 扩展SMTP 34531.3.6 检查SMTP的头 34631.3.7 SMTP的优势与不足 34731.4 使用POP和IMAP取回客户邮件 34731.4.1 邮局协议(POP) 34731.4.2 互联网邮件访问协议(IMAP) 34831.4.3 POP3与IMAP4的比较 34831.5 高级主题 34931.6 相关RFC文档及其他参考信息 35131.7 小结 352第32章 HTTP: World Wide Web 35332.1 万维网(WWW) 35332.1.1 Web简史 35332.1.2 Web的发展 35432.2 统一资源定位器 35432.3 Web服务器与浏览器 35532.4 理解HTTP 35632.4.1 HTTP/1.1 35632.4.2 MIME与Web 35832.4.3 HTTP通信示例 35832.5 高级主题 35932.5.1 服务器方功能 35932.5.2 SSL和S-HTTP 35932.6 Web语言 35932.6.1 HTML 36032.6.2 XML 36032.6.3 CGI 36132.6.4 Java 36132.6.5 JavaScript 36232.6.6 动态服务器页面 36232.7 Web的未来 36332.7.1 HTTP-ng 36332.7.2 IIOP 36332.7.3 IPv6 36332.7.4 IPP 36332.8 小结 364第33章 NNTP:互联网新闻组 36533.1 互联网新闻组 36533.2 新闻组和层次 36633.3 网络新闻传输协议 36733.3.1 获取新闻组 36733.3.2 获取消息 36933.3.3 发布消息 37033.4 大量广告(Spamming)和新闻黑洞 (Blackholing) 37133.5 小结 371第34章 Web服务 37334.1 Web服务工作概览 37334.2 主流Web服务器 37534.3 运行Apache HTTP Web服务 37634.3.1 下载、安装和配置Apache 37634.3.2 在Windows环境下使用Apache 38134.4 浏览其他Web服务器 38334.5 小结 383第九部分 使用与管理TCP/IP网络第35章 协议配置与调整 38535.1 系统的初始化问题 38535.2 配置文件 39035.2.1 在/etc/protocols文件中定义网 络协议 39035.2.2 在/etc/hosts文件中标识主机 39135.2.3 TCP/IP与/etc/services文件 39235.2.4 inetd守护进程与/etc/inetd.conf 文件 39435.2.5 在/etc/networks文件中设置网络 39735.2.6 DNS客户与/etc/resolv.conf 39735.3 小结 398第36章 配置DNS 39936.1 域名服务器 39936.2 资源记录 40036.3 域名解析 40136.4 配置UNIX或Linux域名服务器 (DNS) 40136.4.1 添加资源记录 40236.4.2 完成DNS文件 40236.4.3 启动DNS守护进程 40536.4.4 配置客户端 40536.5 Windows和域名服务器 40536.6 小结 406第37章 网络管理 40737.1 制定网络监控方案 40737.2 网络问题及其解决方案 40837.3 网络管理工具 40837.3.1 使用协议分析器 40937.3.2 专家系统 41037.3.3 基于PC的分析器 41037.3.4 网络管理协议支持 41137.3.5 集成网络仿真/模型工具 41137.4 配置SNMP 41237.4.1 配置Windows SNMP 41337.4.2 配置UNIX SNMP 41437.4.3 SNMP安全属性 41437.4.4 SNMP代理与管理 41537.5 SNMP工具及命令 41637.6 RMON及相关的MIB模型 41737.7 建立网管需求 41737.8 小结 419第38章 SNMP:简单网络管理协议 42038.1 什么是SNMP 42038.2 管理信息基(MIB) 42138.3 使用SNMP 42138.4 UNIX与SNMP 42238.4.1 在UNIX和Linux上安装SNMP 42338.4.2 SNMP命令 42438.5 Windows与SNMP 42438.5.1 Windows NT 42538.5.2 Windows 95、Windows 98和 Windows 3.x 42538.6 小结 427第39章 加强TCP/IP传输安全 42839.1 定义所需的网络安全 42839.1.1 什么是网络安全 42839.1.2 为什么网络安全非常重要 42939.1.3 安全级别 42939.1.4 口令与口令文件 43039.1.5 控制对口令的访问 43039.2 加强网络安全 43139.2.1 攻击种类 43139.2.2 加强网络安全 43239.3 应用配置 43439.3.1 Internet守护进程与 /etc/inetd.conf 43439.3.2 网络加密软件 43639.3.3 TCP Wrapper 43639.4 使用端口及可信端口 43739.4.1 防火墙 43739.4.2 包过滤 43739.4.3 应用层网关 43839.4.4 其他应用的过滤 43839.5 一般安全事务 43839.5.1 用户帐号维护 43839.5.2 审计 43839.5.3 正确的系统配置 43839.6 小结 438第40章 问题解决工具及要点 44040.1 监视网络行为 44040.2 标准应用程序 44040.2.1 测试基本连接 44140.2.2 ping命令 44240.2.3 解决网络访问故障 44340.3 解决网络接口层问题 44940.4 解决网络层问题 44940.4.1 TCP/IP配置参数 44940.4.2 IP地址配置问题 45040.5 解决TCP和UDP问题 45340.6 解决应用层问题 45540.7 小结 455第十部分 附 录附录A RFC及标准化 457附录B Linux 469附录C 简写与缩略语 480
本书介绍TCP/IP及其应用。TCP/IP是Internet上使用的协议,而Internet是世界上最大的互联网络。本书内容十分丰富,几乎涵盖了有关TCP/IP的各个方面,包括开放式通信模型、TCP/IP通信模型、IP网络中的命名和寻址机制、地址解析及反向地址解析协议、DNS域字服务器、WINS、地址发现协议、IPv6、IP网络中的路由协议(RIP、OSPF等)、互联网打印协议、LDAP目录服务、远程访问协议、IP安全与防火墙。本书介绍了如何为Windows 9x/NT配置TCP/IP;还介绍了如何使用TCP/IP应用程序,包括远程登录、FTP、Web浏览等。 目 录 译者序 前言 第一部分 TCP/IP基础 第1章 开放式通信模型简介 1 1.1 开放式网络的发展 1 1.1.1 通信处理层次化 2 1.1.2 OSI参考模型 3 1.1.3 模型的使用 5 1.2 TCP/IP参考模型 7 1.3 小结 7 第2章 TCP/IP和Internet 8 2.1 一段历史 8 2.1.1 ARPANET 8 2.1.2 TCP/IP 9 2.1.3 国家科学基金会(NSF) 9 2.1.4 当今的Internet 12 2.2 RFC和标准化过程 12 2.2.1 获得RFC 13 2.2.2 RFC索引 13 2.2.3 有关RFC的幽默 13 2.3 Internet服务简介 13 2.3.1 Whois和Finger 14 2.3.2 文件传输协议 14 2.3.3 Telnet 14 2.3.4 Email 14 2.3.5 WWW 14 2.3.6 USENET News 15 2.4 Intranet和Extranet概览 15 2.4.1 Intranet 15 2.4.2 将Intranet对外开放 16 2.5 Internet的明天 16 2.5.1 下一代Internet(NGI) 16 2.5.2 超速骨干网服务 16 2.5.3 Internet2(I2) 17 2.6 Internet管理组织 17 2.6.1 Internet协会 17 2.6.2 Internet体系结构组 17 2.6.3 Internet工程任务组 17 2.6.4 Internet工程指导组 17 2.6.5 Internet编号管理局 18 2.6.6 Internet名字和编号分配组织 (ICANN) 18 2.6.7 Internet网络信息中心和其他注 册组织 18 2.6.8 RFC编辑 18 2.6.9 Internet服务提供商 18 2.7 小结 19 第3章 TCP/IP概述 20 3.1 TCP/IP的优点 20 3.2 TCP/IP的层和协议 21 3.2.1 体系结构 21 3.2.2 传输控制协议 21 3.2.3 IP协议 23 3.2.4 应用层 25 3.2.5 传输层 25 3.2.6 网络层 25 3.2.7 链路层 25 3.3 远程登录(Telnet) 25 3.4 文件传输协议(FTP) 25 3.5 普通文件传输协议(TFTP) 26 3.6 简单邮件传输协议(SMTP) 26 3.7 网络文件系统(NFS) 26 3.8 简单网络管理协议(SNMP) 27 3.9 TCP/IP和系统结合 27 3.10 内部网概述 28 3.11 小结 28 第二部分 命名和寻址 第4章 IP网络中的名字和地址 29 4.1 IP寻址 29 4.1.1 二进制和十进制数 30 4.1.2 IPv4地址格式 30 4.2 子网的出现 34 4.2.1 分子网 35 4.2.2 可变长子网掩码(VLSM) 37 4.3 无类域前路由(CIDR) 38 4.3.1 无类地址 38 4.3.2 强化路由汇聚 39 4.3.3 超网化 39 4.3.4 CIDR怎样工作 39 4.3.5 公共地址空间 40 4.3.6 RFC 1597和1918 40 4.4 小结 40 第5章 ARP和RARP 41 5.1 使用地址 41 5.1.1 子网寻址 41 5.1.2 IP地址 43 5.2 使用地址解析协议 44 5.2.1 ARP cache 45 5.2.2 代理ARP 47 5.2.3 反向地址解析协议 47 5.3 使用ARP命令 47 5.4 小结 47 第6章 DNS:名字服务器 48 6.1 域名系统概述 48 6.2 授权局 50 6.3 DNS分布数据库 50 6.4 域和区 50 6.5 Internet顶级域 51 6.6 选择一个域名服务器 52 6.7 名字服务解析过程 52 6.7.1 递归查询 52 6.7.2 叠代查询 52 6.8 高速缓存 52 6.9 反向解析(Pointer)查询 52 6.10 DNS安全 52 6.11 资源记录 53 6.12 小结 54 第7章 WINS 55 7.1 NetBIOS 55 7.2 NetBIOS名字解析 57 7.3 动态NetBIOS名字解析 58 7.3.1 使用WINS的优点 58 7.3.2 WINS如何工作 59 7.3.3 配置WINS客户机 60 7.3.4 为代理配置WINS 60 7.3.5 配置NT 4.0系统 61 7.3.6 配置Windows 95或Windows 98 系统 61 7.4 安装WINS服务器 61 7.5 WINS管理和维护 62 7.5.1 加入静态表项 62 7.5.2 维护WINS数据库 63 7.5.3 备份WINS数据库 65 7.5.4 备份WINS注册项 65 7.5.5 恢复WINS数据库 65 7.5.6 压缩WINS数据库 66 7.5.7 WINS复制参与者 66 7.5.8 WINS实现建议 67 7.6 集成WINS和DNS名字解析服务 67 7.7 DHCP服务WINS选项 67 7.8 通过LMHOSTS进行NetBIOS名字 解析 68 7.9 小结 69 第8章 地址发现协议(BOOTP和DHCP) 71 8.1 “引导”协议(BOOTP) 71 8.2 动态主机配置协议(DHCP) 72 8.2.1 DHCP如何工作 72 8.2.2 理解租用地址 73 8.3 管理地址池 74 8.4 DHCP能处理的其他分配 75 8.4.1 注意重载 75 8.4.2 其他分配 75 8.5 小结 76 第三部分 IP和相关协议 第9章 IP协议家族 77 9.1 TCP/IP模型 77 9.1.1 解剖TCP/IP模型 78 9.1.2 协议组件 78 9.2 理解网际协议(IP) 79 9.2.1 IPv4结构 79 9.2.2 IP做什么 80 9.3 理解传输控制协议(TCP) 81 9.3.1 TCP头结构 81 9.3.2 TCP做什么 83 9.4 理解用户数据报协议(UDP) 85 9.4.1 UDP头结构 85 9.4.2 UDP能做什么 85 9.4.3 TCP和UDP 86 9.5 小结 86 第10章 IPv6 87 10.1 IPv6数据报 87 10.1.1 优先级分类 88 10.1.2 流标识 89 10.1.3 128位IP地址 89 10.1.4 IP扩展头 90 10.2 多IP地址主机 91 10.3 单播、组播和任一播头 91 10.4 从IPv4到IPv6的过渡 93 10.5 小结 94 第四部分 IP互联 第11章 IP网络中的路由 95 11.1 路由基本知识 95 11.1.1 静态路由 96 11.1.2 距离-向量路由 99 11.1.3 链路-状态路由 100 11.2 IP网络中的收敛 102 11.2.1 适应拓扑变化 102 11.2.2 收敛时间 106 11.3 计算IP网络中的路由 106 11.3.1 存储多条路由 107 11.3.2 初始化更新 107 11.3.3 路由度量标准 107 11.4 小结 108 第12章 路由信息协议(RIP) 109 12.1 理解RFC1058 109 12.1.1 RIP报文格式 109 12.1.2 RIP路由表 111 12.2 操作机制 112 12.2.1 计算距离向量 113 12.2.2 更新路由表 116 12.2.3 寻址问题 118 12.3 拓扑变化 120 12.3.1 收敛 120 12.3.2 计值到无穷 122 12.4 RIP的限制 127 12.4.1 跳数限制 128 12.4.2 固定度量 128 12.4.3 对路由表更新反应强烈 128 12.4.4 收敛慢 128 12.4.5 缺乏负载均衡 128 12.5 小结 129 第13章 开放式最短路径优先 130 13.1 OSPF起源 130 13.2 理解RFC 2328 OSPF,版本2 130 13.2.1 OSPF区 131 13.2.2 路由更新 134 13.3 研究OSPF数据结构 136 13.3.1 HELLO报文 137 13.3.2 数据库描述报文 137 13.3.3 链路-状态请求报文 138 13.3.4 链路-状态更新报文 138 13.3.5 链路-状态应答报文 140 13.4 计算路由 140 13.4.1 使用自动计算 140 13.4.2 使用缺省路由耗费 141 13.4.3 最短路径树 142 13.5 小结 144 第14章 网关协议 145 14.1 网关、桥和路由器 145 14.1.1 网关 145 14.1.2 网桥 146 14.1.3 路由器 146 14.1.4 自治系统 146 14.2 网关协议:基础知识 146 14.3 内部网关协议和外部网关协议 147 14.3.1 网关-网关协议(GGP) 147 14.3.2 外部网关协议(EGP) 147 14.3.3 内部网关协议(IGP) 148 14.4 小结 148 第五部分 网络服务 第15章 互联网打印协议 149 15.1 IPP历史 149 15.2 IPP和端用户 150 15.3 使用HP的IPP实现 151 15.4 小结 152 第16章 LDAP:目录服务 153 16.1 为什么使用目录服务 153 16.2 目录服务的功能 153 16.3 IP上的目录服务 154 16.4 OSI X.500目录模型 156 16.4.1 早期的X.500 157 16.4.2 今天的X.500 157 16.5 LDAP结构 157 16.5.1 LDAP层次结构 157 16.5.2 名字结构 158 16.6 目录系统代理和访问协议 158 16.7 轻型目录访问协议 158 16.7.1 查询信息 159 16.7.2 存储信息 160 16.7.3 访问权限和安全 160 16.8 LDAP服务器-服务器通信 161 16.8.1 LDAP数据互换格式(LDIF) 161 16.8.2 LDAP复制 162 16.9 设计LDAP服务 162 16.9.1 定义需求 162 16.9.2 设计策略 163 16.9.3 性能 164 16.9.4 网络功能 165 16.9.5 安全 166 16.10 LDAP配置 169 16.11 产品环境 169 16.11.1 创建计划 170 16.11.2 有价值的建议 171 16.12 选择LDAP软件 171 16.13 小结 174 第17章 远程访问协议 175 17.1 远程互联 175 17.1.1 ISDN 176 17.1.2 电缆调制解调器 176 17.1.3 数字用户环(DSL) 176 17.1.4 无线网络 177 17.2 远程认证拨入用户服务(RADIUS) 177 17.2.1 RADIUS认证 178 17.2.2 记账信息 179 17.3 用SLIP、CSLIP和PPP传输IP数 据报文 179 17.3.1 串行线路接口协议(SLIP) 179 17.3.2 压缩的SLIP(CSLIP) 180 17.3.3 点到点协议(PPP) 180 17.4 隧道远程访问 184 17.4.1 点到点隧道协议(PPTP) 185 17.4.2 两层隧道协议(L2TP) 188 17.4.3 IPSec 192 17.5 小结 194 第18章 防火墙 195 18.1 使网络安全 195 18.2 使用防火墙 196 18.2.1 代理服务器 197 18.2.2 报文过滤器 198 18.3 使服务安全 198 18.3.1 电子邮件(SMTP) 198 18.3.2 HTTP:万维网 199 18.3.3 FTP 199 18.3.4 Telnet 199 18.3.5 Usenet:NNTP 199 18.3.6 DNS 200 18.4 建造用户自己的防火墙 200 18.5 使用商业防火墙软件 200 18.6 小结 202 第19章 IP安全 203 19.1 使用加密 203 19.1.1 公共-私钥加密 204 19.1.2 对称私钥加密 205 19.1.3 DES、IDEA及其他 205 19.2 数字签名认证 206 19.3 破译加密的数据 207 19.4 保护网络 207 19.4.1 登录名和口令 208 19.4.2 文件的目录允许权限 208 19.4.3 信任关系 209 19.4.4 UNIX和Linux系统上的UUCP 209 19.5 应付最坏情况 210 19.6 小结 210 第六部分 实现TCP/IP 第20章 一般配置问题 211 20.1 安装网卡 211 20.1.1 网卡 211 20.1.2 资源配置 212 20.1.3 安装适配器软件 213 20.1.4 重定向器和API 214 20.1.5 服务 214 20.1.6 NIC接口 215 20.2 网络和传输层协议 215 20.2.1 IP配置要求 215 20.2.2 配置缺省网关地址 216 20.2.3 配置名字服务器地址 217 20.2.4 配置邮件服务器地址 217 20.2.5 注册域名 218 20.3 IP配置 218 20.4 配置路由表 218 20.5 异种协议的IP封装 219 20.6 小结 220 第21章 Windows 98 221 21.1 Windows 98网络体系结构 221 21.1.1 安装网卡 222 21.1.2 更改网卡配置 224 21.1.3 当Windows 98引导失败 224 21.2 配置Windows 98的TCP/IP 225 21.2.1 写在开始之前 225 21.2.2 安装TCP/IP 225 21.2.3 配置微软的TCP/IP 225 21.2.4 DNS配置 227 21.2.5 静态配置文件 228 21.2.6 注册表配置 229 21.2.7 测试TCP/IP 231 21.3 小结 232 第22章 Windows 98拨号网络 233 22.1 配置拨号网络适配器 233 22.2 安装拨号网络 234 22.3 服务器类型 235 22.4 编写脚本 238 22.5 多重链接 238 22.6 PPTP 239 22.6.1 安装及配置PPTP 240 22.6.2 建立PPTP连接 240 22.7 Windows 98拨号服务器 241 22.8 解决拨号网络连接中的问题 242 22.8.1 确认DUN配置 242 22.8.2 PPP日志 243 22.9 小结 243 第23章 Windows NT 4.0 244 23.1 Windows NT版本 244 23.2 体系结构 244 23.3 安装Windows NT 4.0 244 23.4 配置TCP/IP 246 23.4.1 IP地址 246 23.4.2 DNS 248 23.4.3 WINS地址 248 23.4.4 DHCP中继 249 23.4.5 路由 250 23.5 简单TCP/IP服务 250 23.6 远程访问服务(RAS) 250 23.7 DHCP服务器 252 23.7.1 安装DHCP服务器服务 252 23.7.2 控制DHCP服务器服务 253 23.7.3 压缩DHCP数据库 253 23.7.4 管理DHCP 254 23.8 使用Microsoft DNS 256 23.8.1 安装DNS 256 23.8.2 创建区 257 23.8.3 配置逆向域名解功能 258 23.8.4 配置DNS与WINS服务器的连 接 259 23.8.5 增加辅助名字服务器 259 23.9 FTP和HTTP服务 259 23.10 TCP/IP打印服务 259 23.10.1 安装TCP/IP打印服务 259 23.10.2 安装LPR服务 260 23.11 Windows 2000新特性 260 23.12 小结 261 第24章 在Novell NetWare中支持IP 262 24.1 Novell与TCP/IP 262 24.1.1 IP与NetWare 4 262 24.1.2 NetWare 5与Pure IP初始化 262 24.2 传统解决方案:NetWare 3.x到 NetWare 4.x的IP支持 263 24.2.1 IP隧道 264 24.2.2 IP中继 264 24.2.3 LAN WorkPlace 264 24.2.4 IPX-IP网关 265 24.2.5 NetWare/IP 265 24.3 NetWare 5—Novell对IP的 完全支持 266 24.3.1 纯IP 266 24.3.2 多协议 266 24.4 安装选项 266 24.4.1 NetWare 5的IP-Only安装 267 24.4.2 IPX-Only安装 267 24.4.3 混合TCP/IP安装 268 24.5 IP迁移辅助工具 268 24.5.1 NDS 268 24.5.2 DNS 269 24.5.3 DHCP 269 24.5.4 DDNS 269 24.5.5 SLP 269 24.5.6 兼容模式 269 24.5.7 迁移代理 270 24.6 迁移策略 270 24.6.1 使用测试平台 270 24.6.2 迁移建议 270 24.7 小结 271 第七部分 使用TCP/IP应用 第25章 Whois和Finger 273 25.1 理解Whois协议 273 25.1.1 互联网注册 273 25.1.2 Whois数据库 274 25.1.3 基于Web的Whois 275 25.1.4 命令行方式的Whois 276 25.1.5 示例 276 25.1.6 基于Telnet的Whois 278 25.2 扩充Whois 279 25.2.1 提示Whois(RWhois) 279 25.2.2 WHOIS++ 280 25.3 使用Finger 280 25.3.1 Finger命令 280 25.3.2 Finger 守护进程 282 25.3.3 非UNIX环境下的Finger 283 25.3.4 Finger的应用 283 25.4 相关RFC文档 285 25.5 小结 285 第26章 文件传输协议 286 26.1 FTP和TFTP在网络世界中的作用 286 26.2 使用FTP传输文件 286 26.2.1 FTP连接 287 26.2.2 使用FTP客户端建立连接 288 26.2.3 FTP安全 296 26.2.4 FTP服务器及守护进程 299 26.2.5 匿名FTP访问 299 26.3 使用TFTP 300 26.3.1 FTP与TFTP的区别 301 26.3.2 TFTP命令 301 26.4 小结 301 第27章 使用Telnet 302 27.1 理解Telnet协议 302 27.2 Telnet守护进程 303 27.3 使用Telnet 304 27.3.1 UNIX telnet命令 304 27.3.2 Telnet GUI应用 305 27.3.3 Telnet命令 305 27.3.4 示例 308 27.4 高级主题 309 27.4.1 安全 309 27.4.2 Telnet应用 309 27.4.3 使用Telnet访问其他TCP/IP 服务 310 27.5 相关RFC文档 312 27.6 小结 313 第28章 使用r系列实用工具 314 28.1 理解r系列命令 314 28.1.1 安全问题 314 28.1.2 禁止使用r系列命令 315 28.1.3 增强r系列命令的安全性 316 28.2 使用r系列命令的替代方法 317 28.3 r系列命令详解 317 28.3.2 相关文件 320 28.4 在非UNIX环境下实现r系 列命令的功能 321 28.5 小结 322 第29章 使用网络文件系统(NFS) 323 29.1 什么是NFS 323 29.1.1 NFS的历史 323 29.1.2 为何使用NFS 323 29.2 实现—NFS工作过程 324 29.2.1 远程过程调用(RPC) 和外部数据表示(XDR) 324 29.2.2 加载类型 324 29.3 NFS使用的文件及命令 325 29.3.1 NFS守护进程 325 29.3.2 与NFS相关的文件 327 29.3.3 NFS服务器命令 329 29.3.4 NFS客户命令 331 29.4 示例:共享及加载NFS文件系统 333 29.5 NFS常见问题及解决方案 334 29.5.1 不能加载 334 29.5.2 不能卸载 334 29.5.3 硬加载与软加载 334 29.6 相关协议及产品 334 29.6.1 WebNFS 335 29.6.2 基于PC的NFS及其他客户端 软件 335 29.6.3 SMB和CIFS 335 29.6.4 其他产品 336 29.7 小结 336 第八部分 使用基于IP的应用 第30章 在应用中集成TCP/IP 337 30.1 使用浏览器作为表示层 338 30.2 不断增加的Internet应用 338 30.3 在已有应用中集成TCP/IP 339 30.4 在其他网络中使用TCP/IP 339 30.4.1 NetBIOS与TCP/IP 339 30.4.2 IPX与UDP 340 30.4.3 ARCNET与TCP/IP 340 30.5 小结 340 第31章 Internet Email协议 341 31.1 电子邮件 341 31.1.1 电子邮件的历史 341 31.1.2 标准及制定标准的组织 341 31.2 X.400 341 31.3 简单邮件传输协议(SMTP) 343 31.3.1 MIME和SMTP 343 31.3.2 其他编码标准 344 31.3.3 SMTP命令 344 31.3.4 SMTP状态码 345 31.3.5 扩展SMTP 345 31.3.6 检查SMTP的头 346 31.3.7 SMTP的优势与不足 347 31.4 使用POP和IMAP取回客户邮件 347 31.4.1 邮局协议(POP) 347 31.4.2 互联网邮件访问协议(IMAP) 348 31.4.3 POP3与IMAP4的比较 348 31.5 高级主题 349 31.6 相关RFC文档及其他参考信息 351 31.7 小结 352 第32章 HTTP: World Wide Web 353 32.1 万维网(WWW) 353 32.1.1 Web简史 353 32.1.2 Web的发展 354 32.2 统一资源定位器 354 32.3 Web服务器与浏览器 355 32.4 理解HTTP 356 32.4.1 HTTP/1.1 356 32.4.2 MIME与Web 358 32.4.3 HTTP通信示例 358 32.5 高级主题 359 32.5.1 服务器方功能 359 32.5.2 SSL和S-HTTP 359 32.6 Web语言 359 32.6.1 HTML 360 32.6.2 XML 360 32.6.3 CGI 361 32.6.4 Java 361 32.6.5 JavaScript 362 32.6.6 动态服务器页面 362 32.7 Web的未来 363 32.7.1 HTTP-ng 363 32.7.2 IIOP 363 32.7.3 IPv6 363 32.7.4 IPP 363 32.8 小结 364 第33章 NNTP:互联网新闻组 365 33.1 互联网新闻组 365 33.2 新闻组和层次 366 33.3 网络新闻传输协议 367 33.3.1 获取新闻组 367 33.3.2 获取消息 369 33.3.3 发布消息 370 33.4 大量广告(Spamming)和新闻黑洞 (Blackholing) 371 33.5 小结 371 第34章 Web服务 373 34.1 Web服务工作概览 373 34.2 主流Web服务器 375 34.3 运行Apache HTTP Web服务 376 34.3.1 下载、安装和配置Apache 376 34.3.2 在Windows环境下使用Apache 381 34.4 浏览其他Web服务器 383 34.5 小结 383 第九部分 使用与管理TCP/IP网络 第35章 协议配置与调整 385 35.1 系统的初始化问题 385 35.2 配置文件 390 35.2.1 在/etc/protocols文件中定义网 络协议 390 35.2.2 在/etc/hosts文件中标识主机 391 35.2.3 TCP/IP与/etc/services文件 392 35.2.4 inetd守护进程与/etc/inetd.conf 文件 394 35.2.5 在/etc/networks文件中设置网络 397 35.2.6 DNS客户与/etc/resolv.conf 397 35.3 小结 398 第36章 配置DNS 399 36.1 域名服务器 399 36.2 资源记录 400 36.3 域名解析 401 36.4 配置UNIX或Linux域名服务器 (DNS) 401 36.4.1 添加资源记录 402 36.4.2 完成DNS文件 402 36.4.3 启动DNS守护进程 405 36.4.4 配置客户端 405 36.5 Windows和域名服务器 405 36.6 小结 406 第37章 网络管理 407 37.1 制定网络监控方案 407 37.2 网络问题及其解决方案 408 37.3 网络管理工具 408 37.3.1 使用协议分析器 409 37.3.2 专家系统 410 37.3.3 基于PC的分析器 410 37.3.4 网络管理协议支持 411 37.3.5 集成网络仿真/模型工具 411 37.4 配置SNMP 412 37.4.1 配置Windows SNMP 413 37.4.2 配置UNIX SNMP 414 37.4.3 SNMP安全属性 414 37.4.4 SNMP代理与管理 415 37.5 SNMP工具及命令 416 37.6 RMON及相关的MIB模型 417 37.7 建立网管需求 417 37.8 小结 419 第38章 SNMP:简单网络管理协议 420 38.1 什么是SNMP 420 38.2 管理信息基(MIB) 421 38.3 使用SNMP 421 38.4 UNIX与SNMP 422 38.4.1 在UNIX和Linux上安装SNMP 423 38.4.2 SNMP命令 424 38.5 Windows与SNMP 424 38.5.1 Windows NT 425 38.5.2 Windows 95、Windows 98和 Windows 3.x 425 38.6 小结 427 第39章 加强TCP/IP传输安全 428 39.1 定义所需的网络安全 428 39.1.1 什么是网络安全 428 39.1.2 为什么网络安全非常重要 429 39.1.3 安全级别 429 39.1.4 口令与口令文件 430 39.1.5 控制对口令的访问 430 39.2 加强网络安全 431 39.2.1 攻击种类 431 39.2.2 加强网络安全 432 39.3 应用配置 434 39.3.1 Internet守护进程与 /etc/inetd.conf 434 39.3.2 网络加密软件 436 39.3.3 TCP Wrapper 436 39.4 使用端口及可信端口 437 39.4.1 防火墙 437 39.4.2 包过滤 437 39.4.3 应用层网关 438 39.4.4 其他应用的过滤 438 39.5 一般安全事务 438 39.5.1 用户帐号维护 438 39.5.2 审计 438 39.5.3 正确的系统配置 438 39.6 小结 438 第40章 问题解决工具及要点 440 40.1 监视网络行为 440 40.2 标准应用程序 440 40.2.1 测试基本连接 441 40.2.2 ping命令 442 40.2.3 解决网络访问故障 443 40.3 解决网络接口层问题 449 40.4 解决网络层问题 449 40.4.1 TCP/IP配置参数 449 40.4.2 IP地址配置问题 450 40.5 解决TCP和UDP问题 453 40.6 解决应用层问题 455 40.7 小结 455 第十部分 附 录 附录A RFC及标准化 457 附录B Linux 469 附录C 简写与缩略语 480

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值