《计算机按群技术精选文档.ppt》由会员分享,可在线阅读,更多相关《计算机按群技术精选文档.ppt(93页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、计算机按群技术本讲稿第一页,共九十三页内容提要n本章介绍OSI七层网络模型nTCP/IP协议簇。n重点介绍IP协议、TCP协议、UDP协议和ICMP协议。n介绍常用的网络服务:文件传输服务、Telnet服务、电子邮件服务和、Web服务n介绍常用的网络服务端口和常用的网络命令的使用。本讲稿第二页,共九十三页OSI参考模型 nOSI参考模型是国际标准化组织ISO(International Standards Organization)制定的模型,把计算机与计算机之间的通信分成七个互相连接的协议层,结构如图2-1所示。本讲稿第三页,共九十三页OSI参考模型n很少有产品是完全的OSI模式,然而OSI
2、参考模型为网络的结构提供了可行的机制。nOSI模型将通信会话需要的各种进程划分成7个相对独立的层次。本讲稿第四页,共九十三页1、物理层(Physical Layer)n最底层是物理层,这一层负责传送比特流,它从第二层数据链路层接收数据帧,并将帧的结构和内容串行发送,即每次发送一个比特。n物理层只能看见0和1,只与电信号技术和光信号技术的物理特征相关。这些特征包括用于传输信号电流的电压、介质类型以及阻抗特征。该层的传输介质是同轴电缆、光纤、双绞线等,有时该层被称为OSI参考模型的第0层。n物理层可能受到的安全威胁是搭线窃听和监听,可以利用数据加密、数据标签加密,数据标签,流量填充等方法保护物理层
3、的安全。本讲稿第五页,共九十三页2、数据链路层(Data Link Layer)nOSI参考模型的第二层称为数据链路层。与其他层一样,它肩负两个责任:发送和接收数据。n还要提供数据有效传输的端到端连接。在发送方,数据链路层负责将指令、数据等包装到帧中,帧是该层的基本结构。n帧中包含足够的信息,确保数据可以安全地通过本地局域网到达目的地。本讲稿第六页,共九十三页3、网络层(Network Layer)n网络层(Network Layer)的主要功能是完成网络中主机间的报文传输。在广域网中,这包括产生从源端到目的端的路由。n当报文不得不跨越两个或多个网络时,又会产生很多新问题。例如第二个网络的寻址
4、方法可能不同于第一个网络;第二个网络也可能因为第一个网络的报文太长而无法接收;两个网络使用的协议也可能不同等。网络层必须解决这些问题,使异构网络能够互连。n在单个局域网中,网络层是冗余的,因为报文是直接从一台计算机传送到另一台计算机的。本讲稿第七页,共九十三页4、传输层(Transport Layer)n传输层的主要功能是完成网络中不同主机上的用户进程之间可靠的数据通信。n最好的传输连接是一条无差错的、按顺序传送数据的管道,即传输层连接是真正端到端的。n由于绝大多数主机都支持多用户操作,因而机器上有多道程序,这意味着多条连接将进出于这些主机,因此需要以某种方式区别报文属于哪条连接。识别这些连接
5、的信息可以放入传输层的报文头中。本讲稿第八页,共九十三页5、会话层(Session Layer)n会话层允许不同机器上的用户之间建立会话关系。会话层允许进行类似传输层的普通数据的传会话层允许不同机器上的用户之间建立会话关系。会话层允许进行类似传输层的普通数据的传送,在某些场合还提供了一些有用的增强型服务。允许用户利用一次会话在远端的分时系统上送,在某些场合还提供了一些有用的增强型服务。允许用户利用一次会话在远端的分时系统上登录,或者在两台机器间传递文件。登录,或者在两台机器间传递文件。n会话层提供的服务之一是管理对话控制。会话层提供的服务之一是管理对话控制。n会话层允许信息同时双向传输,或限制
6、只能单向传输。如果属于后者,类似于物理信道上的半双工会话层允许信息同时双向传输,或限制只能单向传输。如果属于后者,类似于物理信道上的半双工模式,会话层将记录此时该轮到哪一方。模式,会话层将记录此时该轮到哪一方。n一种与对话控制有关的服务是令牌管理(一种与对话控制有关的服务是令牌管理(Token Management)。有些协议保证双方不能同时进)。有些协议保证双方不能同时进行同样的操作,这一点很重要。为了管理这些活动,会话层提供了令牌,令牌可以在会话双方之间行同样的操作,这一点很重要。为了管理这些活动,会话层提供了令牌,令牌可以在会话双方之间移动,只有持有令牌的一方可以执行某种操作。移动,只有
7、持有令牌的一方可以执行某种操作。本讲稿第九页,共九十三页6、表示层(Presentation Layer)n表示层完成某些特定的功能,这些功能不必由每个用户自己来实现。n值得一提的是,表示层以下各层只关心从源端机到目标机可靠地传送比特,而表示层关心的是所传送的信息的语法和语义。n表示层服务的一个典型例子是用一种一致选定的标准方法对数据进行编码。n大多数用户程序之间并非交换随机的比特,而是交换诸如人名、日期、货币数量和发票之类的信息。这些对象是用字符串、整型数、浮点数的形式,以及由几种简单类型组成的数据结构来表示。本讲稿第十页,共九十三页7、应用层(Application Layer)n应用层包
8、含大量人们普遍需要的协议。虽然,对于需要通信的不同应用来说,应用层的协议都是必须的。n例如,PC(Personal Computer)机用户使用仿真终端软件通过网络仿真某个远程主机的终端并使用该远程主机的资源。n这个仿真终端程序使用虚拟终端协议将键盘输入的数据传送到主机的操作系统,并接收显示于屏幕的数据。本讲稿第十一页,共九十三页TCP/IP协议簇nTCP/IP协议簇模型 n和其他网络协议一样,TCP/IP有自己的参考模型用于描述各层的功能。TCP/IP协议簇参考模型和OSI参考模型的比较如图2-2所示。本讲稿第十二页,共九十三页TCP/IP协议簇nTCP/IP参考模型实现了OSI模型中的所有
9、功能。n不同之处是TCP/IP协议模型将OSI模型的部分层进行了合并。nOSI模型对层的划分更精确,而TCP/IP模型使用比较宽的层定义。本讲稿第十三页,共九十三页解剖TCP/IP模型nTCP/IP协议簇包括四个功能层:应用层、传输层、网络层及网络接口层。n这四层概括了相对于OSI参考模型中的七层。n1、网络接口层n网络接口层包括用于物理连接、传输的所有功能。OSI模型把这一层功能分为两层:物理层和数据链路层,TCP/IP参考模型把两层合在一起。n2、网络层(Internet层)n网络层由在两个主机之间通信所必须的协议和过程组成。这意味着数据报文必须是可路由的。本讲稿第十四页,共九十三页解剖T
10、CP/IP模型n3、传输层n这一层支持的功能包括:为了在网络中传输对应用数据进行分段,执行数学检查来保证所收数据的完整性,为多个应用同时传输数据多路复用数据流(传输和接收)。这意味着该层能识别特殊应用,对乱序收到的数据进行重新排序。n当前的主机到主机层包括两个协议实体:传输控制协议(TCP)和用户数据报协议(UDP)。n4、应用层n应用层协议提供远程访问和资源共享。应用包括Telnet服务、FTP服务、SMTP服务和HTTP服务等,很多其他应用程序驻留并运行在此层,并且依赖于底层的功能。该层是最难保护的一层。本讲稿第十五页,共九十三页解剖TCP/IP模型nTCP/IP组的四层、OSI参考模型和
11、常用协议的对应关系如图2-3所示。本讲稿第十六页,共九十三页网络协议IP nIP协议已经成为世界上最重要的网际协议。协议已经成为世界上最重要的网际协议。nIP的功能定义在由的功能定义在由IP头结构的数据中。头结构的数据中。IP是网络层上的主要协议,同时被是网络层上的主要协议,同时被TCP协议和协议和UDP协议使用。协议使用。nTCP/IP的整个数据报在数据链路层的结构如表的整个数据报在数据链路层的结构如表2-1所示。所示。n表表2-1 TCP/IP数据报的结构数据报的结构以太网数据包以太网数据包头头IP头头TCP/UDP/ICMP/IGMP头头数据数据本讲稿第十七页,共九十三页IP头的结构n可
12、以看出一条完整数据报由四部分组成n第三部分是该数据报采用的协议n第四部分是数据报传递的数据内容n其中IP头的结构如表2-2所示。版本(版本(4位)位)头长头长度(度(4位)位)服服务类务类型(型(8位)位)封包封包总长总长度(度(16位)位)封包封包标识标识(16位)位)标标志(志(3位)位)片断偏移地址(片断偏移地址(13位)位)存活存活时间时间(8位)位)协议协议(8位)位)校校验验和(和(16位)位)来源来源IP地址(地址(32位)位)目的目的IP地址(地址(32位)位)选项选项(可(可选选)填充(可选)数据数据本讲稿第十八页,共九十三页IP头的结构nIP头结构在所有协议中都是固定的,对
13、表头结构在所有协议中都是固定的,对表2-2说明如下:说明如下:n(1)字节和数字的存储顺序是从右到左,依次是从低位到高位,而网络存储顺序是从左到右,依次从低位到高位。)字节和数字的存储顺序是从右到左,依次是从低位到高位,而网络存储顺序是从左到右,依次从低位到高位。n(2)版本:占第一个字节的高四位。头长度:占第一个字节的低四位。)版本:占第一个字节的高四位。头长度:占第一个字节的低四位。n(3)服务类型:前)服务类型:前3位为优先字段权,现在已经被忽略。接着位为优先字段权,现在已经被忽略。接着4位用来表示最小延迟、最大吞吐量、最高可靠性和最位用来表示最小延迟、最大吞吐量、最高可靠性和最小费用。
14、小费用。n(4)封包总长度:整个)封包总长度:整个IP报的长度,单位为字节。报的长度,单位为字节。n(5)存活时间:就是封包的生存时间。通常用通过的路由器的个数来衡量,比如初始值设置为)存活时间:就是封包的生存时间。通常用通过的路由器的个数来衡量,比如初始值设置为32,则每通过一个路,则每通过一个路由器处理就会被减一,当这个值为由器处理就会被减一,当这个值为0的时候就会丢掉这个包,并用的时候就会丢掉这个包,并用ICMP消息通知源主机。消息通知源主机。n(6)协议:定义了数据的协议,分别为:)协议:定义了数据的协议,分别为:TCP、UDP、ICMP和和IGMP。定义为:。定义为:ndefine
15、PROTOCOL_TCP 0 x06ndefine PROTOCOL_UDP 0 x11ndefine PROTOCOL_ICMP 0 x06ndefine PROTOCOL_IGMP 0 x06n(7)检验和:校验的首先将该字段设置为)检验和:校验的首先将该字段设置为0,然后将,然后将IP头的每头的每16位进行二进制取反求和,将结果保存在校验和字段。位进行二进制取反求和,将结果保存在校验和字段。n(8)来源)来源IP地址:将地址:将IP地址看作是地址看作是32位数值则需要将网络字节顺序转化位主机字节顺序。转化的方法是:将每位数值则需要将网络字节顺序转化位主机字节顺序。转化的方法是:将每4个字
16、节首尾互换,个字节首尾互换,将将2、3字节互换。字节互换。n(9)目的)目的IP地址:转换方法和来源地址:转换方法和来源IP地址一样。地址一样。n在网络协议中,在网络协议中,IP是面向非连接的,所谓的非连接就是传递数据的时候,不检测网络是否连通。所以是不可靠的数据报协议,是面向非连接的,所谓的非连接就是传递数据的时候,不检测网络是否连通。所以是不可靠的数据报协议,IP协议主要负责在主机之间寻址和选择数据包路由。协议主要负责在主机之间寻址和选择数据包路由。本讲稿第十九页,共九十三页抓取Ping指令发送的数据包n按照第一章Sniffer的设置抓取Ping指令发送的数据包,命令执行如图2-4所示。本
17、讲稿第二十页,共九十三页抓取Ping指令发送的数据包本讲稿第二十一页,共九十三页抓取Ping指令发送的数据包n其实IP报头的所有属性都在报头中显示出来,可以看出实际抓取的数据报和理论上的数据报一致,分析如图2-6所示。本讲稿第二十二页,共九十三页IPv4的IP地址分类 nIPv4地址在1981年9月实现标准化的。基本的IP地址是8位一个单元的32位二进制数。为了方便人们的使用,对机器友好的二进制地址转变为人们更熟悉的十进制地址。nIP地址中的每一个8位组用0255之间的一个十进制数表示。这些数之间用点“.”隔开,因此,最小的IPv4地址值为0.0.0.0,最大的地址值为255.255.255.
18、255,然而这两个值是保留的,没有分配给任何系统。nIP地址分成五类:A类地址、B类地址、C类地址、D类地址和E类地址。n每一个IP地址包括两部分:网络地址和主机地址,上面五类地址对所支持的网络数和主机数有不同的组合。本讲稿第二十三页,共九十三页1、A类地址n一个A类IP地址仅使用第一个8位组表示网络地址。剩下的3个8位组表示主机地址。A类地址的第一个位总为0,这一点在数学上限制了A类地址的范围小于127,因此理论上仅有127个可能的A类网络,而0.0.0.0地址又没有分配,所以实际上只有126个A类网。技术上讲,127.0.0.0也是一个A类地址,但是它已被保留作闭环(Look Back)测
19、试之用而不能分配给一个网络。nA类地址后面的24位表示可能的主机地址,A类网络地址的范围从1.0.0.0到126.0.0.0。每一个A类地址能支持16,777,214个不同的主机地址,这个数是由2的24次方再减去2得到的。减2是必要的,因为IP把全0保留为表示网络而全1表示网络内的广播地址。本讲稿第二十四页,共九十三页2、B类地址n设计B类地址的目的是支持中到大型的网络。B类网络地址范围从128.1.0.0到191.254.0.0。B类地址蕴含的数学逻辑是相当简单的。n一个B类IP地址使用两个8位组表示网络号,另外两个8位组表示主机号。B类地址的第1个8位组的前两位总是设置为1和0,剩下的6位
20、既可以是0也可以是1,这样就限制其范围小于等于191,这里的191由128+32+16+8+4+2+1得到。n最后的16位(2个8位组)标识可能的主机地址。每一个B类地址能支持64,534个惟一的主机地址,这个数由2的16次方减2得到,B类网络有16,382个。本讲稿第二十五页,共九十三页3、C类地址nC类地址用于支持大量的小型网络。这类地址可以认为与类地址用于支持大量的小型网络。这类地址可以认为与A类地址正好相反。类地址正好相反。A类类地址使用第一个地址使用第一个8位组表示网络号,剩下的位组表示网络号,剩下的3个表示主机号,而个表示主机号,而C类地址使用三个类地址使用三个8位位组表示网络地址
21、,仅用一个组表示网络地址,仅用一个8位组表示主机号。位组表示主机号。nC类地址的前类地址的前3位数为位数为110,前两位和为,前两位和为192(128+64),这形成了,这形成了C类地址空间的下界。类地址空间的下界。第三位等于十进制数第三位等于十进制数32,这一位为,这一位为0限制了地址空间的上界。不能使用第三位限制了此限制了地址空间的上界。不能使用第三位限制了此8位位组的最大值为组的最大值为255-32等于等于223。因此。因此C类网络地址范围从类网络地址范围从192.0.1.0至至223.255.254.0。n最后一个最后一个8位组用于主机寻址。每一个位组用于主机寻址。每一个C类地址理论上
22、可支持最大类地址理论上可支持最大2 5 6个主机地址个主机地址(0255),但是仅有,但是仅有254个可用,因为个可用,因为0和和255不是有效的主机地址。可以有不是有效的主机地址。可以有2,097,150个不同的个不同的C类网络地址。类网络地址。n在在IP地址中,地址中,0和和255是保留的主机地址。是保留的主机地址。IP地址中所有的主机地址为地址中所有的主机地址为0用于标识局域网。用于标识局域网。同样,全为同样,全为1表示在此网段中的广播地址。表示在此网段中的广播地址。本讲稿第二十六页,共九十三页4、D类地址nD类地址用于在IP网络中的组播(Multicasting)。D类组播地址机制仅有
23、有限的用处。一个组播地址是一个惟一的网络地址。它能指导报文到达预定义的IP地址组。n因此,一台机器可以把数据流同时发送到多个接收端,这比为每个接收端创建一个不同的流有效得多。组播长期以来被认为是IP网络最理想的特性,因为它有效地减小了网络流量。nD类地址空间,和其他地址空间一样,有其数学限制,D类地址的前4位恒为1110,预置前3位为1意味着D类地址开始于128+64+32等于224。第4位为0意味着D类地址的最大值为128+64+32+8+4+2+1为239,因此D类地址空间的范围从224.0.0.0到239.255.2 55.254。本讲稿第二十七页,共九十三页5、E类地址nE类地址虽被定
24、义为保留研究之用。因此Internet上没有可用的E类地址。nE类地址的前4位为1,因此有效的地址范围从240.0.0.0至255.255.255.255。本讲稿第二十八页,共九十三页子网掩码n子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。n最为简单的理解就是两台计算机各自的IP地址与子网掩码进行二进制“与”(AND)运算后,如果得出的结果是相同的,则说明这两台计算机是处于同一个子网络上的,可以进行直接的通讯。n计算机A的IP地址为192.168.0.1,子网掩码为255.255.255.0,将转化为二进制进行“与”运算,运算过程如表2-3所示。本讲稿第二十九页,共九十三
25、页子网掩码n计算机A的IP地址为192.168.0.1,子网掩码为255.255.255.0,将转化为二进制进行“与”运算,运算过程如表2-3所示。IP地址11010000.10101000.00000000.00000001子网掩码11111111.11111111.11111111.00000000IP地址与子网掩码按位“与”运算11000000.10101000.00000000.00000000运算的结果转化为十进制192.168.0.0本讲稿第三十页,共九十三页子网掩码n计算机B的IP地址为192.168.0.254,子网掩码为255.255.255.0,将转化为二进制进行“与”运算
26、。运算过程如表2-4所示。IP地址地址11010000.10101000.00000000.11111110子网掩子网掩码码11111111.11111111.11111111.00000000IP地址与子网掩地址与子网掩码码按位按位“与与”运算运算11000000.10101000.00000000.00000000运算的运算的结结果果转转化化为为十十进进制制192.168.0.0本讲稿第三十一页,共九十三页子网掩码n计算机C的IP地址为192.168.0.4,子网掩码为255.255.255.0,将转化为二进制进行“与”运算。运算过程如表2-5所示。IP地址地址11010000.10101
27、000.00000000.00000100子网掩子网掩码码11111111.11111111.11111111.00000000IP地址与子网掩地址与子网掩码码按位按位“与与”运算运算11000000.10101000.00000000.00000000运算的运算的结结果果转转化化为为十十进进制制192.168.0.0本讲稿第三十二页,共九十三页传输控制协议协议TCP nTCP是传输层协议,提供可靠的应用数据传输。nTCP在两个或多个主机之间建立面向连接的通信。nTCP支持多数据流操作,提供错误控制,甚至完成对乱序到达的报文进行重新排序。本讲稿第三十三页,共九十三页TCP协议的头结构 n和IP
28、一样,TCP的功能受限于其头中携带的信息。因此理解TCP的机制和功能需要了解TCP头中的内容,表2-6显示了TCP头结构。来源端口(2字节)目的端口(2字节)序号(4字节)确认序号(4字节)头长度(4位)保留(6位)URGACKPSHRSTSYNPIN窗口大小(2字节)校验和(16位)紧急指针(16位)选项(可选)数据本讲稿第三十四页,共九十三页TCP协议的头结构nTCP协议的头结构都是固定的,对表2-6说明如下:n(1)TCP源端口(Source Port):16位的源端口包含初始化通信的端口号。源端口和IP地址的作用是标识报文的返回地址。n(2)TCP目的端口(Destination Po
29、rt):16位的目的端口域定义传输的目的。这个端口指明报文接收计算机上的应用程序地址接口。n(3)序列号(Sequence Number):TCP连线发送方向接收方的封包顺序号。n(4)确认序号(Acknowledge Number):接收方回发的应答顺序号。n(5)头长度(Header Length):表示TCP头的双四字节数,如果转化为字节个数需要乘以4。n(6)URG:是否使用紧急指针,0为不使用,1为使用。n(7)ACK:请求/应答状态。0为请求,1为应答。n(8)PSH:以最快的速度传输数据。n(9)RST:连线复位,首先断开连接,然后重建。n(10)SYN:同步连线序号,用来建立连
30、线。n(11)FIN:结束连线。如果FIN为0是结束连线请求,FIN为1表示结束连线。n(12)窗口大小(Window):目的机使用16位的域告诉源主机,它想收到的每个TCP数据段大小。n(13)校验和(Check Sum):这个校验和和IP的校验和有所不同,不仅对头数据进行校验还对封包内容校验。n(14)紧急指针(Urgent Pointer):当URG为1的时候才有效。TCP的紧急方式是发送紧急数据的一种方式。本讲稿第三十五页,共九十三页一次完整的FTP会话 n首先开启目标主机的FTP服务,如图2-7所示。本讲稿第三十六页,共九十三页一次完整的FTP会话n启动Sniffer,然后在主机的D
31、OS命令行下利用FTP指令连接目标主机上的FTP服务器,连接过程如图2-8所示。本讲稿第三十七页,共九十三页一次完整的FTP会话本讲稿第三十八页,共九十三页一次完整的FTP会话n登录FTP的过程是一次典型的TCP连接,因为FTP服务使用的是TCP协议。分析TCP报头的结构如图2-10所示。本讲稿第三十九页,共九十三页传输控制协议(TCP)的特点n传输控制协议(传输控制协议(TCP)的特点是:提供可靠的、面向)的特点是:提供可靠的、面向连接的数据报传递服务。连接的数据报传递服务。n传输控制协议可以做到如下的六点:传输控制协议可以做到如下的六点:n1、确保、确保IP数据报的成功传递。数据报的成功传
32、递。n2、对程序发送的大块数据进行分段和重组。、对程序发送的大块数据进行分段和重组。n3、确保正确排序以及按顺序传递分段的数据。、确保正确排序以及按顺序传递分段的数据。n4、通过计算校验和,进行传输数据的完整性检查。、通过计算校验和,进行传输数据的完整性检查。n5、根据数据是否接收成功发送消息。通过有选择的确认,、根据数据是否接收成功发送消息。通过有选择的确认,也对没有收到的数据发送确认。也对没有收到的数据发送确认。n6、为必须使用可靠的基于会话的数据传输的程序提供支持,、为必须使用可靠的基于会话的数据传输的程序提供支持,如数据库服务和电子邮件服务。如数据库服务和电子邮件服务。本讲稿第四十页,
33、共九十三页TCP协议的工作原理 nTCP提供两个网络主机之间的点对点通讯。TCP从程序中接收数据并将数据处理成字节流。n首先将字节分成段,然后对段进行编号和排序以便传输。在两个TCP主机之间交换数据之前,必须先相互建立会话。TCP会话通过三次握手的完成初始化。这个过程使序号同步,并提供在两个主机之间建立虚拟连接所需的控制信息。nTCP在建立连接的时候需要三次确认,俗称“三次握手”,在断开连接的时候需要四次确认,俗称“四次挥手”。本讲稿第四十一页,共九十三页TCP协议的三次“握手”本讲稿第四十二页,共九十三页TCP协议的三次“握手”n这个过程在FTP的会话过程中也明显的显示出来,如图2-12所示
34、。本讲稿第四十三页,共九十三页第一次“握手”n首先分析建立“握手”第一个过程包的结构,如图2-13所示。本讲稿第四十四页,共九十三页第二次“握手”nSYN为1,开始建立请求连接,需要对方计算机确认,对方计算机确认返回的数据包如图2-14所示。本讲稿第四十五页,共九十三页第三次“握手”n对方计算机返回的数据包中ACK为1并且SYN为1,说明同意连接。n这个时候需要源计算机的确认就可以建立连接了。确认数据包的结构如图2-15所示。本讲稿第四十六页,共九十三页TCP协议的四次“挥手”n需要断开连接的时候,TCP也需要互相确认才可以断开连接,四次交互过程如图2-16所示。本讲稿第四十七页,共九十三页第
35、一次“挥手”n第一次交互过程的数据报结构如图2-17所示。本讲稿第四十八页,共九十三页第二次“挥手”n第一次交互中,首先发送一个FIN=1的请求,要求断开,目标主机在得到请求后发送ACK=1进行确认,如图2-18所示。本讲稿第四十九页,共九十三页第三次“挥手”n在确认信息发出后,就发送了一个FIN=1的包,与源主机断开,如图2-19所示。本讲稿第五十页,共九十三页第四次“挥手”n随后源主机返回一条ACK=1的信息,这样一次完整的TCP会话就结束了。如图2-20所示。本讲稿第五十一页,共九十三页用户数据报协议UDP nUDP为应用程序提供发送和接收数据报的功能。n某些程序(比如腾讯的OICQ)使
36、用的是UDP协议,UDP协议在TCP/IP主机之间建立快速、轻便、不可靠的数据传输通道。本讲稿第五十二页,共九十三页UDP和TCP的区别 nUDP提供的是非连接的数据报服务,意味着UDP无法保证任何数据报的传递和验证。nUDP的结构如图2-21所示。本讲稿第五十三页,共九十三页UDP和TCP传递数据的差异nUDP和TCP传递数据的差异类似于电话和明信片之间的差异。nTCP就像电话,必须先验证目标是否可以访问后才开始通讯。nUDP就像明信片,信息量很小而且每次传递成功的可能性很高,但是不能完全保证传递成功。nUDP通常由每次传输少量数据或有实时需要的程序使用。n在这些情况下,UDP 的低开销比T
37、CP 更适合。UDP 与TCP 提供的服务和功能直接对比 本讲稿第五十四页,共九十三页UDP和TCP传递数据的比较 UDP协议协议TCP协议协议无无连连接的服接的服务务;在主机之;在主机之间间不建立会不建立会话话。面向面向连连接的服接的服务务;在主机之;在主机之间间建立会建立会话话。UDP不能确保或承不能确保或承认认数据数据传递传递或序列或序列化数据。化数据。TCP通通过过确确认认和按和按顺顺序序传递传递数据来确保数据数据来确保数据的的传递传递。使用使用 UDP 的程序的程序负责负责提供提供传输传输数据所数据所需的可靠性。需的可靠性。使用使用 TCP 的程序能确保可靠的数据的程序能确保可靠的数
38、据传输传输。UDP快速,具有低开快速,具有低开销销要求,并支持要求,并支持点点对对点和一点点和一点对对多点的通多点的通讯讯。TCP比比较较慢,有更高的开慢,有更高的开销销要求,而且只支要求,而且只支持点持点对对点通点通讯讯。UDP和和 TCP 都使用端口都使用端口标识标识每个每个 TCP/IP 程序的通程序的通讯讯。本讲稿第五十五页,共九十三页 UDP协议的头结构 nUDP的头结构比较简单,如表2-8所示。源端口(2字节)目的端口(2字节)封报长度(2字节)校验和(2字节)数据本讲稿第五十六页,共九十三页UDP的头结构 n(1)源端口(Source Port):16位的源端口域包含初始化通信的
39、端口号。源端口和IP地址的作用是标识报文的返回地址。n(2)目的端口(Destination Port):6位的目的端口域定义传输的目的。这个端口指明报文接收计算机上的应用程序地址接口。n(3)封包长度(Length):UDP头和数据的总长度。n(4)校验和(Check Sum):和TCP和校验和一样,不仅对头数据进行校验,还对包的内容进行校验。本讲稿第五十七页,共九十三页UDP数据报分析 n常用的网络服务中,DNS使用UDP协议。DNS是域名系统(Domain Name System)的缩写n当用户在应用程序中输入DNS名称时,DNS服务可以将此名称解析为与此名称相关的IP地址。本讲稿第五十
40、八页,共九十三页设置DNS解析n需要在主机上设置DNS解析的主机,将主机的DNS的解析指向虚拟机,如图2-22所示。本讲稿第五十九页,共九十三页设置DNS解析n虽然虚拟机并没有设置DNS解析,但是只要访问DNS都可以抓到UDP数据报。设置完毕后,在主机的DOS界面中输入命令nslookup,如图2-23所示。本讲稿第六十页,共九十三页UDP报头n查看Sniffer抓取的数据报,可以看到UDP报头,如图2-24所示。本讲稿第六十一页,共九十三页UDP报头的分析n对UDP报头的分析如图2-25所示。本讲稿第六十二页,共九十三页互联网控制消息协议ICMP n通过ICMP协议,主机和路由器可以报告错误
41、并交换相关的状态信息。在下列情况中,通常自动发送ICMP消息:nIP数据报无法访问目标。nIP路由器(网关)无法按当前的传输速率转发数据报。nIP路由器将发送主机重定向为使用更好的到达目标的路。nICMP协议的结构如图2-26所示。本讲稿第六十三页,共九十三页ICMP协议的结构 本讲稿第六十四页,共九十三页ICMP协议的头结构 nICMP头结构比较简单,如表2-9所示。类类型(型(8位)位)代代码码(8位)位)校校验验和(和(8位)位)类类型或者代型或者代码码本讲稿第六十五页,共九十三页ICMP数据报分析 n使用Ping命令发送ICMP回应请求消息,使用Ping命令,可以检测网络或主机通讯故障
42、并解决常见的TCP/IP连接问题。分析Ping指令的数据报,如图2-27所示。本讲稿第六十六页,共九十三页FTP服务 nFTP的缺省端口是20(用于数据传输)和21(用于命令传输)。n在TCP/IP中FTP是非常独特的,因为命令和数据能够同时传输,而数据传输是实时的,其他协议不具有这个特性。nFTP客户端可以是命令界面的也可以是图形界面的。命令界面的如图2-28所示。本讲稿第六十七页,共九十三页命令行等录FTP服务器 本讲稿第六十八页,共九十三页图形界面登录FTP服务器 n也可以在浏览器中输入“ftp:/主机IP地址”,利用图形界面连接FTP服务器,如图2-29所示。本讲稿第六十九页,共九十三
43、页更改登录用户信息n登录FTP可以更改登录用户信息,选择菜单“文件”下的菜单项“登录”,出现用户名输入对话框,如图2-30所示。本讲稿第七十页,共九十三页 Telnet服务 nTelnet是TELecommunications NETwork的缩写,其名字具有双重含义,既指应用也是指协议自身。nTelnet给用户提供了一种通过网络登录远程服务器的方式。nTelnet通过端口23工作。本讲稿第七十一页,共九十三页开启Telnet服务nTelnet要求有一个Telnet服务器,此服务器驻留在主机上,等待着远端机器的授权登录。要使用Telnet服务首先需要在虚拟机上开启Telnet服务,选择进入Te
44、lnet服务管理器,如图2-31所示。本讲稿第七十二页,共九十三页开启Telnet服务n在Telnet服务管理器中选择4,启动Telnet服务器,如图2-32所示。本讲稿第七十三页,共九十三页连接Telnet服务器n虚拟机上的Telnet服务器就启动了,然后在主机的DOS窗口中连接虚拟机的Telnet服务器,如图2-33所示。本讲稿第七十四页,共九十三页Email服务n目前Email服务用的两个主要的协议是:简单邮件传输协议SMTP(Simple Mail Transfer Protocol)和邮局协议POP3(Post Office Protocol)。nSMTP默认占用25端口,用来发送邮
45、件,POP3占用110端口,用来接收邮件。n在Windows平台下,主要利用Microsoft Exchange Server作为电子邮件服务器。本讲稿第七十五页,共九十三页Web服务nWeb服务是目前最常用的服务,使用HTTP协议,默认Web服务占用80端口n在Windows平台下一般使用IIS(Internet Information Server)作为Web服务器。本讲稿第七十六页,共九十三页常用的网络服务端口 n常用服务端口列表 端口协议服务21TCPFTP服务25TCPSMTP服务53TCP/UDPDNS服务80TCPWeb服务135TCPRPC服务137UDPNetBIOS域名服务
46、138UDPNetBIOS数据报服务139TCPNetBIOS会话服务443TCP基于SSL的HTTP服务445TCP/UDPMicrosoftSMB服务3389TCPWindows终端服务本讲稿第七十七页,共九十三页常用的网络命令 n常用的网络命令有:n判断主机是否连通的ping指令n查看IP地址配置情况的ipconfig指令n查看网络连接状态的netstat指令n进行网络操作的net指令n进行定时器操作的at指令。本讲稿第七十八页,共九十三页 ping nping指令通过发送ICMP包来验证与另一台TCP/IP计算机的IP级连接。n应答消息的接收情况将和往返过程的次数一起显示出来。npin
47、g指令用于检测网络的连接性和可到达性,如果不带参数,ping将显示帮助,如图2-39所示。本讲稿第七十九页,共九十三页 ping 本讲稿第八十页,共九十三页 ping n可以利用ping指令验证和对方计算机的连通性,使用的语法是“ping 对方计算机名或者IP地址”。如果连通的话,返回的信息如图2-40所示。本讲稿第八十一页,共九十三页 ipconfig指令 nipconfig指令显示所有TCP/IP网络配置信息、刷新动态主机配置协议(DHCP,Dynamic Host Configuration Protocol)和域名系统(DNS)设置。n使用不带参数的ipconfig可以显示所有适配器的
48、IP地址、子网掩码和默认网关。在DOS命令行下输入ipconfig指令。本讲稿第八十二页,共九十三页netstat指令 nnetstat指令显示活动的连接、计算机监听的端口、以太网统计信息、IP 路由表、IPv4统计信息(IP、ICMP、TCP和UDP协议)。n使用“netstat-an”命令可以查看目前活动的连接和开放的端口,是网络管理员查看网络是否被入侵的最简单方法。使用的方法如图2-43所示。本讲稿第八十三页,共九十三页net指令 nnet指令的功能非常的强大,net指令在网络安全领域通常用来查看计算机上的用户列表、添加和删除用户、和对方计算机建立连接、启动或者停止某网络服务等。nn利用
49、“net user”查看计算机上的用户列表,如图2-44所示。本讲稿第八十四页,共九十三页net指令n利用“net user 用户名 密码”给某用户修改密码,比如把管理员的密码修改成“123456”,如图2-45所示。本讲稿第八十五页,共九十三页案例2-2 建立用户并添加到管理员组 n案例名称:添加用户到管理员组案例名称:添加用户到管理员组n文件名称:文件名称:2-01.batnnnet user jack 123456/addnnet localgroup administrators jack/addnnet usern本讲稿第八十六页,共九十三页和对方计算机建立信任连接 n只要拥有某主机
50、的用户名和密码,就可以用“IPC$(Internet Protocol Control)”建立信任连接,建立完信任连接后,可以在命令行下完全控制对方计算机。n比如得到IP为172.18.25.109计算机的管理员密码为123456,可以利用指令“net use 172.18.25.109ipc$123456/user:administrator”,如图2-47所示。本讲稿第八十七页,共九十三页和对方计算机建立信任连接n建立完毕后,就可以操作对方的计算机,比如查看对方计算机上的文件,如图2-48所示。本讲稿第八十八页,共九十三页at指令 n案例名称:创建定时器案例名称:创建定时器n文件名称:文件