计算机网络教程(微课版 第2版)-自顶向下方法 课件全套 韩立刚 01 网络基础 -14 网络排错_第1页
计算机网络教程(微课版 第2版)-自顶向下方法 课件全套 韩立刚 01 网络基础 -14 网络排错_第2页
计算机网络教程(微课版 第2版)-自顶向下方法 课件全套 韩立刚 01 网络基础 -14 网络排错_第3页
计算机网络教程(微课版 第2版)-自顶向下方法 课件全套 韩立刚 01 网络基础 -14 网络排错_第4页
计算机网络教程(微课版 第2版)-自顶向下方法 课件全套 韩立刚 01 网络基础 -14 网络排错_第5页
已阅读5页,还剩507页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第01章网络基础OSI参考模型(七层结构+优点)TCP/IP协议(四层结构+工作原理)OSI参考模型和TCP/IP协议两者关系(异同点+实际应用)网络分类(按范围/按使用者)企业局域网规划(二层/三层结构)本章内容1.1OSI参考模型(七层结构)计算机网络的复杂通信过程需要一个有序的体系结构来规范和管理,OSI参考模型应运而生。它如同一个精心设计的蓝图,为网络通信提供了全面而系统的框架,使得不同厂商的设备和软件能够协同工作,实现高效、可靠的数据传输。OSI参考模型将网络通信过程划分为七个层次,每个层次都具有独特的功能和职责,共同协作实现了网络数据的有效传输。以下将详细介绍各层的主要功能。1.1.1OSI参考模型的七层结构层级核心功能典型示例应用层提供网络服务(文件传输、网页浏览)HTTP、FTP、SMTP表示层数据格式转换(加密、压缩、编码)ASCII编码、数据加密会话层建立/维护/终止通信会话远程登录连接管理传输层端到端可靠传输TCP(可靠)、UDP(实时)网络层路由选择、跨网传输IP协议、路由转发数据链路层帧封装、差错检测MAC地址、CRC校验物理层比特流传输(物理介质+信号)双绞线、光纤、信号调制层次分明:七层功能模块化,层间独立(上层无需关注下层实现)标准化互操作:统一框架让不同厂商设备互联互通灵活性强:单层级升级不影响其他层(如IPv4→IPv6仅修改网络层)易故障诊断:分层定位问题(物理层→数据链路层→...逐步排查)1.1.2OSI参考模型优点清晰的结构划分:OSI参考模型将复杂的网络通信系统划分为七个清晰的层次,每个层次都有明确的功能和职责。这使得网络的设计、实现、管理和维护都更加容易理解和操作

层之间相互独立,上层不需要了解下层的具体实现细节,只需要通过接口与下层进行交互。这种独立性使得各层可以独立地进行设计、开发和测试,提高了系统的可维护性和可扩展性。便于分工协作:由于层次分明,不同的人员可以专注于不同的层次进行开发和维护。如图1-2所示,程序员开发应用程序,在应用层、表示层、会话层进行工作。网络工程师配置路由器、交换机等设备,在数据链路层、网络层等进行工作。通信工程师考虑如何利用通信介质最大限度传输数据,在物理层进行工作。层次分明统一的标准框架:OSI参考模型为网络通信提供了一个统一的标准框架,使得不同厂商的设备和软件可以遵循相同的规范进行设计和实现。这大大提高了网络设备之间的互操作性,使得不同品牌的计算机、路由器、交换机等可以在同一个网络中协同工作。例如,无论使用哪个厂商的网络设备,只要它们都遵循OSI参考模型的标准,就可以实现互联互通。促进技术发展:标准化的OSI参考模型促进了网络技术的快速发展和创新。厂商可以在统一的标准框架下进行竞争和创新,推出更加先进和高效的网络产品和解决方案。同时,标准化也使得用户可以更加方便地选择和使用不同厂商的设备和软件,降低了成本,提高了效益。标准化促进互操作性易于升级和扩展:OSI参考模型的分层结构使得网络可以很容易地进行升级和扩展。当需要引入新的技术或功能时,可以在相应的层次进行添加或修改,而不会影响其他层次的正常运行。每一层发生变化时,不会影响其他层。比如IPv4实现的是网络层功能,现在升级为IPv6,实现的仍然是网络层功能,传输层使用的TCP协议和UDP协议不需做任何变动,数据链路层使用的协议也不用做任何变动。适应不同的应用需求:OSI参考模型可以根据不同的应用需求进行灵活配置。不同的应用程序可以根据自己的特点选择合适的层次和协议进行通信。例如,对于实时性要求较高的应用,如视频会议和在线游戏,可以选择在传输层使用UDP协议,以减少传输延迟;对于数据准确性要求较高的应用,如文件传输和电子邮件,可以选择在传输层使用TCP协议,以保证数据的可靠传输。灵活性和可扩展性定位问题更准确:当网络出现故障时,OSI参考模型的分层结构可以帮助工程师更准确地定位问题所在的层次。通过对不同层次的测试和分析,可以快速确定故障是发生在物理层、数据链路层、网络层还是其他层次,从而采取相应的措施进行修复。例如,如果网络连接中断,首先可以检查物理层的电缆连接是否正常;如果物理层没有问题,可以进一步检查数据链路层的MAC地址是否正确配置;如果数据链路层也正常,可以检查网络层的IP地址和路由设置是否正确。简化维护工作:由于每个层次的功能相对独立,维护工作也更加简单和高效。工程师可以针对不同层次的问题进行专门的维护和管理,而不需要对整个网络进行全面的排查。同时,标准化的接口和协议也使得维护工具和技术更加通用和成熟,降低了维护成本和难度。便于故障诊断和维护1.2TCP/IP协议(四层结构)1.2TCP/IP协议:互联网的“核心基石”分层+功能+核心协议层级核心功能核心协议应用场景应用层定义应用程序通信规则HTTP、FTP、DNS、SMTP网页浏览、文件传输、域名解析传输层端到端数据传输控制TCP(面向连接、可靠)、UDP(无连接、实时)文件传输(TCP)、视频会议(UDP)网络层路由选择、跨网传输IP、ICMP(差错报告)、IGMP(多播)数据包跨网段转发网络接口层帧封装、适配物理网络PPP、以太网(CSMA/CD)数据在物理网络中的传输TCP/IP是互联网的核心协议,它使得不同类型的计算机和网络设备能够相互通信,实现了全球范围内的信息共享和资源交换。TCP/IP具有开放性、通用性和灵活性等特点,能够满足以下网络环境和应用需求。互联网通信:几乎所有的互联网应用都基于TCP/IP,如网页浏览、电子邮件、文件下载等。企业网络:企业内部的局域网和广域网也通常采用TCP/IP进行通信。物联网:物联网中的设备之间的通信也可以使用TCP/IP。移动通信:移动互联网中的数据通信也依赖于TCP/IP。1.2.1TCP/IP协议简介TCP/IP协议站应用层包含了各种应用协议,如HTTP(超文本传输协议)、FTP(文件传输协议)、SMTP(简单邮件传输协议)、DNS(域名系统)等。应用层协议负责定义应用程序之间如何进行通信,以及数据的格式和内容。传输层有TCP和UDP两个协议。TCP(TransmissionControlProtocol,传输控制协议)是一种面向连接的、可靠的传输协议。UDP(UserDatagramProtocol,用户数据报协议)是一种无连接的、不可靠的传输协议。网络层核心协议是IP协议,它负责为数据包选择路由,将数据包从源主机发送到目的主机。IP协议是一种无连接、不可靠的协议,它只负责尽力将数据包发送出去,但不保证数据包一定能到达目的地,也不保证数据包的顺序。网络层还包括ICMP(InternetControlMessageProtocol,互联网控制报文协议),用于在IP主机、路由器之间传递控制消息,如报告错误、网络拥塞等情况。网络接口层负责将IP数据报封装成适合在特定网络上传输的帧格式,并从物理网络上接收数据帧,抽出IP数据报交给网络层。具体的网络接口可以是以太网、Wi-Fi、PPP等各种不同的网络技术。1.2.2TCP/IP协议各层功能掌握TCP/IP工作原理,要理解数据封装与解封装、寻址和路由选择、TCP协议通信建立连接和释放连接。1.2.3TCP/IP工作原理当应用程序发送数据时,数据从应用层开始,依次经过传输层、网络层和网络接口层,每一层都对数据进行封装,添加相应的协议头部信息。在接收端,数据则依次经过网络接口层、网络层、传输层和应用层,每一层都对数据进行解封装,去除相应的协议头部信息,最终将原始数据交给应用程序。数据封装与解封装IP协议通过IP地址来标识网络中的主机,数据包在网络中传输时,根据IP地址进行寻址。路由器根据路由表中的信息,

选择最佳的路径将数据包转发到下一跳。寻址与路由选择在使用TCP协议进行通信之前,需要先建立连接。连接建立过程通过三次握手来完成,即客户端向服务器发送一个SYN报文,服务器收到后回复一个SYN/ACK报文,客户端再回复一个ACK报文,连接建立成功。通信结束后,需要断开连接。连接断开过程通过四次挥手来完成,即一方发送一个FIN报文,表示要关闭连接,另一方收到后回复一个ACK报文,然后也发送一个FIN报文,最后另一方再回复一个ACK报文,连接断开成功。连接建立与断开(TCP协议)应用层协议作用范围:直接与用户的应用程序交互,工作在服务端程序和客户端程序之间。传输层协议作用范围:在源主机和目的主机之间建立端到端的通信连接。网络层协议作用范围:覆盖整个互联网络。IP协议负责为数据包选择路由,将数据包从源主机发送到目的主机。IP协议通过IP地址来标识网络中的主机,作用范围是全球互联网以及各种规模的局域网和广域网。通信的计算机要根据IP协议的要求封装数据包,路由器要根据IP协议的规定转发数据包。计算机和路由器工作在网络层。网络接口层作用范围:通常涉及物理网络设备和与之直接交互的部分。网络接口层负责将网络层的数据包从链路的一端发送到另一端,数据链路层协议的作用范围是一段链路,不同的链路有不同的数据链路层协议。交换机负责将帧从一端发送到另一端,交换机属于数据链路层设备。1.2.4TCP/IPv4协议分层和作用范围1.3OSI参考模型和TCP/IP之间的关系OSI参考模型和TCP/IP之间关系OSI参考模型和TCP/IP在计算机网络领域都占据重要地位,它们之间既有相似之处,又存在明显差异。OSI参考模型和TCP/IP之间存在着紧密的关系。分层结构:

两者都采用了分层的体系结构。OSI参考模型分为七层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。TCP/IP分为四层,即网络接口层、网络层、传输层和应用层。

这种分层结构使得网络通信的各个功能被划分到不同的层次中,每一层只负责特定的任务,实现了功能的模块化和独立性,便于网络的设计、实现和维护。部分功能对应:OSI参考模型的网络层与TCP/IP的网络层功能相似,都负责在不同网络之间进行路由选择和数据包转发,实现网络的互联。OSI参考模型的传输层和TCP/IP的传输层都负责端到端的数据传输控制,确保数据的可靠传输。相似之处层数和划分:OSI参考模型的层数更多,划分更细致。例如,它将高层的功能进一步分为会话层、表示层和应用层,分别处理不同的通信任务。而TCP/IP相对简洁,将这些功能合并在应用层中。

这种差异使得OSI参考模型在理论上更加完善,但在实际应用中,TCP/IP的简洁性使其更容易实现和部署。发展历程:OSI参考模型是由国际标准化组织(ISO)制定的理论模型,旨在为不同的计算机网络提供一个统一的标准框架。然而,由于其制定过程较为缓慢,且在实际应用中缺乏广泛的支持,OSI参考模型并没有得到大规模的实际应用。TCP/IP则是在互联网的发展过程中逐渐形成的,它先于OSI参考模型出现,并在实际的网络应用中得到了广泛的验证和发展。由于其简单实用、高效可靠,TCP/IP成为了互联网的核心协议。不同之处TCP/IP主导实际网络:

在当今的网络通信中,TCP/IP占据了主导地位。几乎所有的计算机网络和互联网应用都基于TCP/IP进行通信。

它的广泛应用得益于其简单灵活、适应性强的特点,能够满足不同规模和类型的网络需求。OSI参考模型的理论指导意义:

虽然OSI参考模型在实际应用中没有得到广泛采用,但它作为一个理论模型,为网络通信的研究和发展提供了重要的指导意义。

许多网络技术和协议的设计都参考了OSI参考模型的分层思想和功能划分,使得网络通信的发展更加规范化和系统化。实际关系1.4网络分类

局域网(LocalAreaNetwork,LAN)是在一个局部的地理范围内(如一个学校、工厂和机关内),一般是方圆几千米以内,将各种计算机、外部设备和数据库等互相连接起来组成的计算机通信网。通常是单位自己采购设备组建局域网,当前使用交换机组建的局域网带宽为10M、100M或1000M,无线局域网为54M。广域网(WideAreaNetwork,WAN)通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,能连接多个城市或国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。比如有个企业在北京和上海有两个局域网,把这两个局域网连接起来,就是广域网的一种。广域网通常情况下需要租用ISP(Internet服务提供商,比如电信、移动、联通公司)的线路,每年向ISP支付一定的费用购买带宽,带宽和支付的费用相关,就和你家用ADSL拨号访问Internet一样,有2M带宽、4M带宽、8M带宽等标准。城域网(MetropolitanAreaNetwork,MAN)的作用范围一般是一个城市,可跨越几个街区甚至整个城市,其作用距离约为5~50km。城域网可以为一个或几个单位所拥有,但也可以是一种公用设施,用来将多个局域网进行互连。目前很多城域网采用的是以太网技术,因此有时也将其并入局域网的范围进行讨论。个人区域网(PersonalAreaNetwork,PAN)就是在个人工作的地方把属于个人使用的电子设备(如便携式电脑等)用无线技术连接起来的网络,因此也常称为无线个人区域网(WirelessPAN,WPAN),比如无线路由器组建的家庭网络,就是一个PAN,其范围大约在几十米左右。1.4.1按网络的范围进行分类公用网(publicnetwork)是指电信公司(国有或私有)出资建造的大型网络。“公用”的意思就是所有愿意按电信公司的规定交纳费用的人都可以使用这种网络。因此公用网也可称为公众网,因特网就是全球最大的公用网络。专用网(privatenetwork)是某个部门为本单位的特殊业务工作需要而建造的网络。这种网络不向本单位以外的人提供服务。例如,军队、铁路、电力等系统均有本系统的专用网。公用网和专用网都可以传送多种业务。如传送的是计算机数据,则分别是公用计算机网络和专用计算机网络。1.4.2按网络的使用者进行分类1.5企业局域网的规划和设计二层结构组网主要由接入层交换机和汇聚层交换机组成。这种组网方式在企业网络等场景中广泛应用,能够有效地实现终端设备的接入和数据的汇聚转发。1.5.1二层结构的局域网三层结构组网是一种在大型网络环境中广泛应用的网络架构,主要由接入层交换机、汇聚层交换机和核心层交换机组成。这种架构能够提供高效、可靠、安全的网络服务,适用于企业园区网、数据中心等复杂网络场景。1.5.2三层结构的局域网第02章应用层协议讲师:韩立刚应用层协议概述HTTP详解抓包分析工具与实战HTTP详解DHCP详解DNS协议详解本章内容2.1应用层协议计算机通信更多的是计算机上各类应用程序之间的通信,而大多数应用程序可分为服务端和客户端。服务端在启动服务后,便处于等待客户端访问的状态。客户端程序会向服务器发送通信请求,而后服务端会向客户端给出响应。应用层协议是客户端程序和服务端程序进行通信的规则和标准。它定义了双方交换数据的格式、顺序、语义以及控制信息等。应用层协议使得不同软件公司开发的客户端和服务端才能够实现顺畅的通信交流。服务端:启动服务后等待请求,解析请求并返回响应客户端:按协议发送请求(如浏览器、DHCP客户端)示例:Web客户端(IE/谷歌浏览器)与Web服务器通过HTTP通信2.1.1服务端和客户端每一种应用层协议都需要规定以下内容:报文格式:发送请求和响应的报文格式。报文格式包括:报文头部、主体和尾部等部分的格式和内容。例如,定义每个字段的长度、数据类型、含义和顺序。命令和操作:客户端程序能够向服务端发送的请求(命令)和操作,以及它们的功能和效果。状态代码:服务端程序能够向客户端返回的响应(状态代码)。交互顺序:客户端向服务端发送请求(命令)的顺序、出现意外后如何处理。常见的应用层协议:HTTP(网页传输)、FTP(文件传输)、DHCP(IP分配)、DNS(域名解析)、SMTP、POP3、TELNET等2.1.2应用层协议2.2HTTP协议超文本传输协议,用于万维网数据传输(HTML、图片、查询结果等)通信流程:客户端发请求→服务器解析处理→返回响应HTTP由于HTTP是面向文本的,因此在报文中的每个字段都是一些ASCII码串,因而各个字段的长度都是不确定的。如图2-4所示,HTTP请求报文由开始行、首部行、实体主体3个部分组成。请求行是报文的开始行,用于区分请求报文和响应报文。在请求报文中的开始行叫作请求行,而在响应报文中的开始行叫作状态行。在开始行的三个字段之间都以空格分隔开,最后的“CR”和“LF”分别代表“回车”和“换行”。首部行用来说明浏览器、服务器或报文主体的一些信息。首部行可以包括好几行,但也可以不使用。在每个首部行中都由首部字段名和它的值两部分组成,每行在结束的地方都要有“回车”和“换行”。整个首部行结束时,还有一空行将首部行和后面的实体主体分开。实体主体在请求报文中一般不用这个字段。2.2.1HTTP请求报文浏览器能够向Web服务器发送以下8种方法(有时也叫“动作”或“命令”)来表明请求URL(Request-URL)指定的资源的不同操作方式。GET:用于请求获取指定资源的表示。通常用于获取网页、图像等资源,是最常见的HTTP方法之一。POST:常用于向服务器提交数据,例如提交表单数据、上传文件等,以进行数据的创建或更新操作。PUT:用于向指定的URL上传最新的内容,以更新服务器上的资源。DELETE:用于请求服务器删除指定的资源。HEAD:类似于

GET

方法,但只返回响应头信息,而不返回响应体,通常用于获取资源的元数据,例如检查资源是否存在、获取资源的最后修改时间等。OPTIONS:用于获取服务器支持的HTTP方法和其他选项。TRACE:用于回显服务器收到的请求,主要用于诊断和测试。CONNECT:用于建立与服务器的隧道连接,通常用于实现HTTP代理或通过HTTP进行TCP连接。这些方法为客户端与服务器之间的交互提供了不同的方式,以满足各种不同的需求。方法名称是区分大小写的2.2.2HTTP请求报文中的方法每个请求报文发出后,都能收到一个响应报文。响应报文的第一行就是状态行。状态行包括3项内容,即HTTP的版本、状态码和解释状态码的简单短语。2.2.3响应报文格式HTTP协议的响应状态代码用于表示服务器对客户端请求的处理结果。响应报文的状态行中的状态码(Status-Code)都是三位数字,状态码分为5大类共33种,以下是一些常见的状态代码及其含义:1××:表示通知信息,如请求收到或正在进行处理。2××:表示成功,如接受或知道。3××:表示重定向,如要完成请求还必须采取进一步的行动。4××:表示客户端错误,如请求中有错误的语法或请求不能完成。5××:表示服务器的差错,如服务器失效无法完成请求。下面几种状态行在响应报文中是经常见到的。HTTP/1.1202Accepted:表示接受。HTTP/1.1400BadRequest:表示错误的请求。HTTP/1.1404NotFound:表示找不到。2.2.4HTTP响应报文状态码2.3抓包分析应用层协议功能特点:捕获网络数据包:能够从网络接口捕获实时的数据包。详细的协议解析:对各种网络协议进行深入解析,包括TCP、UDP、IP等,为您展示数据包的详细内容和结构。数据包过滤:可以根据各种条件(如源地址、目的地址、端口等)对捕获的数据包进行过滤,以便更专注于特定的流量。统计分析:提供丰富的统计信息,帮助您了解网络流量的特征和趋势。应用场景:网络故障排查:例如,当网络连接出现问题时,可以通过Wireshark捕获数据包来查找异常的通信。安全分析:检测潜在的网络攻击、恶意软件通信等。协议开发和调试:对于开发新的网络协议或调试现有协议的实现,Wireshark可以帮助验证协议的行为是否符合预期。2.3.1Wireshark抓包工具Wireshark的显示筛选器,用于在已捕获的数据包集合中设置过滤条件,隐藏不想显示的数据包,只显示符合条件的数据包,以便更有针对性地进行分析。筛选分为协议筛选和表达式筛选。表达式筛选分为基本过滤表达式和复合过滤表达式。2.3.2Wireshark的显示筛选器协议筛选协议筛选是根据通信协议筛选数据包。常用协议有HTTP、FTP、UDP、TCP、ARP、ICMP、SMTP、POP3、DNS、IP、Telnet、SSH、RDP、RIP、OSPF等。基本过滤表达式基本过滤表达式由过滤项、过滤关系、过滤值组成。例如,表达式ip.addr==,其中ip.addr是过滤项,==是过滤关系,

是过滤值,整条表达式的意思是找出所有IP中源或目标IP地址等于

的数据包。显示筛选器初学者感觉的“过滤表达式复杂”,最主要就是在这个过滤项上:一是不知道有哪些过滤项,二是不知道过滤项该怎么写。这两个问题有一个共同的答案,Wireshark的过滤项是“协议”+“.”+“协议字段”的模式。以端口为例,端口出现于TCP中,所以有端口这个过滤项,并且其写法就是tcp.port。过滤项过滤关系就是大于、小于、等于等几种关系,我们可以直接看官方给出的表,如表1-1所示。注意其中“English”和“C-like”两个字段。这个意思是说“English”和“C-like”这两种写法在Wireshark中是等价的、都是可用的。过滤关系EnglishC-like描述和案例eq==等于。比如ip.src==en!=不等于。比如ip.src!==gt>

大于。Frame.len>10lt<

小于。Frame.len<128ge>=大于等于。Frame.lenge0×100le<=小于等于。Frame.len<=0×20contains

协议,字段或分片包括的值。比如httpcontains"password"过滤值就是设定的过滤项应该满足过滤关系的标准,如500、5000、50000等。过滤值的写法一般已经被过滤项和过滤关系设定好了,填自己的期望值就可以了过滤值复合过滤表达式是指由多条基本过滤表达式组合而成的表达式。基本过滤表达式的写法不变,复合过滤表达式由连接词连接基本过滤表达式构成。例如,ip.src==&&tcp.flags.fin表示筛选源IP地址为

且TCP标志位为FIN的数据包。复合过滤表达式的连接词有以下几种:and(&&):逻辑与。例如:ip.src==&&tcp.flags.fin。or(||):逻辑或。例如:ip.src==||tcp.flags.fin。not(!):逻辑非。例如:!tcp。复合过滤表达式数据链路层过滤表达式示例筛选目标MAC地址为04:f9:38:ad:13:26的数据包:eth.dst==04:f9:38:ad:13:26。筛选源MAC地址为04:f9:38:ad:13:26的数据包:eth.src==04:f9:38:ad:13:26。网络层过滤表达式示例筛选IP地址为的数据包:ip.addr==。筛选和之间的数据包:ip.addr==&&ip.addr==。筛选从到的数据包:ip.src==&&ip.dst==。2.3.3常见的显示过滤器(1)传输层过滤表达式示例筛选TCP的数据包:tcp。筛选除TCP以外的数据包:!tcp。筛选端口为80的数据包:tcp.port==80。筛选源端口51933到目标端口80的数据包:tcp.srcport==51933&&tcp.dstport==80。应用层过滤表达式示例筛选URL中包含.php的HTTP数据包:http.request.uricontains".php"。筛选URL中包含域名的HTTP数据包:http.request.uricontains"www.baixing.com"。筛选内容包含username的HTTP数据包:httpcontains"username"。筛选内容包含password的HTTP数据包:httpcontains"password"。2.3.3常见的显示过滤器(2)选中第1038个数据包,可以看到该数据包中的HTTP请求报文,与HTTP请求报文的格式进行对照,请求方法是GET2.3.4实战:抓包分析http报文第1419个数据包是HTTP响应报文,状态码为200,表示成功处理了请求,一般情况下都是返回此状态码。HTTP响应报文在显示筛选器处输入http.request.method==POST后,应用显示筛选器,客户端使用POST方法将登录网站账号和密码提交给Web服务。HTTP中POST方法在显示筛选器输入框中输入httpcontains"password",应用显示筛选器,可以显示HTTP数据包内容包含“hanligang”的数据包。根据内容筛选数据包在显示筛选器输入框中输入http.response.code==200,应用显示筛选器,可以显示HTTP响应代码200的数据包。根据状态代码筛选数据包2.4FTP

文件传输协议(FileTransferProtocol,FTP)是Internet中广泛使用的文件传输协议。它用于在Internet上控制文件的双向传输。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种传输文件协议。FTP屏蔽了各计算机系统的细节,因而适合在异构网络中任意计算机之间传输文件。在FTP的使用当中,用户经常遇到两个概念:下载和上传。FTP介绍与大多数Internet服务一样,FTP也是一个客户端/服务器架构的系统。一个FTP服务器进程可以为多个客户进程提供服务。FTP服务器由两大部分组成:一个主进程,负责接受新的请求;还有若干个从属进程,负责处理单个请求。2.4.1FTP的工作细节(1)在FTP服务器上需要开放两个端口,即命令端口(或控制端口)和数据端口。通常端口21是命令端口,端口20是数据端口。当混入主动/被动模式的概念时,数据端口就有可能不是20了。FTP建立传输数据的TCP连接的模式分为主动模式和被动模式。2.4.1FTP的工作细节(2)在主动模式下,FTP客户端从任意的动态端口(49152-65535)中选择51706(N)连入FTP服务器的命令端口21;然后客户端在端口51707(N+1)监听。主动模式下,FTP服务器的防火墙只需要打开TCP的端口21和端口20,FTP客户端防火墙要将TCP49152-65535端口全部打开。主动模式为了解决服务器发起到客户端的连接的问题,人们开发了另一种不同的FTP连接方式,这就是被动模式(PASV),当客户端通知服务器它处于被动模式时才启用。在被动模式FTP中,命令连接和数据连接都由客户端发起,这样就可以解决从服务器到客户端建立数据传输连接请求被客户端防火墙过滤掉的问题。当开启一个FTP连接时,客户端从动态端口(49152-65535)中任意选择两个51621(N)和51622(N+1)。被动模式FTP协议定义了一系列命令,用于在客户端和服务器之间进行通信。这些命令可以在FTP客户端软件中使用,通过输入相应的命令来执行对应的操作,进行文件的上传、下载、删除、重命名等操作。2.4.2FTP定义的命令和状态代码USER

:指定用户名。PASS

:指定用户密码。CWD

:改变工作目录。CDUP

:回到上一级目录。RETR

:从服务器下载文件。STOR

:向服务器上传文件。LIST

:列出目录内容。NLST

:仅列出文件名。PWD

:显示当前工作目录。

MKD

:创建目录。RMD

:删除目录。DELE

:删除文件。RNFR

:指定要重命名的文件。RNTO

:完成重命名操作。QUIT

:退出FTP会话。FTP状态代码3xx-命令需要进一步细化:331用户名正确,需要密码。332需要登录账号。4xx-临时错误:450请求的文件操作未执行,文件不可用(例如,文件正忙)。451请求的操作异常终止,处理中发生本地错误。452请求的操作未执行,系统存储空间不足。5xx-永久错误:550请求的操作未执行,文件不可用(例如,未找到文件,没有访问权限)。552请求的文件操作超出存储分配。553请求的操作未执行,不允许的文件名。1xx-信息:110重新启动标记应答。120服务在指定时间内准备好。125数据连接已打开,正在开始传输。150文件状态正常,准备打开数据连接。2xx-成功:200命令成功。225数据连接打开,没有进行中的传输。227进入被动模式

(h1,h2,h3,h4,p1,p2)。230用户登录成功。250请求的文件操作正确,已完成。FTP客户端访问FTP服务器的交互过程,可以看到客户端向服务器发送的请求及服务器向客户端返回的响应。在FTP服务器上设置禁止FTP的某些方法,以实现FTP服务器的安全访问,如禁止删除FTP服务器上的文件。2.4.3抓包分析FTP工作过程2.5DHCP网络中的计算机IP地址、子网掩码、网关和DNS服务器等设置可以人工指定,也可以设置成自动获得。设置成自动获得,就需要使用动态主机配置协议(DynamicHostConfigurationProtocol,DHCP)从DHCP服务器请求IP地址。在以下5种情况下,DHCP客户端会从DHCP服务器获取一个新的IP地址。该客户端计算机是第一次从DHCP服务器获取IP地址。该客户端计算机之前租用的IP地址已经被DHCP服务器收回,又租用给其他计算机了,因此该客户端需要重新从DHCP服务器租用一个新的IP地址。该客户端自己释放原先所租用的IP地址,并要求租用一个新的IP地址。客户端计算机更换了网卡。客户端计算机转移到另一个网段。2.5.1DHCP分配地址的过程DHCP客户端与DHCP服务器之间会通过以下4种类型的数据包来相互通信DHCP工作过程(1)当租约时间过去一半时,DHCP客户端向DHCP服务器发送一个请求,请求更新和延长当前租约。DHCP客户端直接向DHCP服务器发请求,最多可重发三次,分别在4s、8s和16s时。(2)如果某台DHCP服务器应答一个DHCPOffer消息,以更新DHCP客户端的当前租约,DHCP客户端就用DHCP服务器提供的信息更新租约并继续工作。(3)如果租约终止而且没有连接到DHCP服务器,DHCP客户端必须立即停止使用其租约IP地址。然后,DHCP客户端执行与它初始启动时相同的过程来获得新的IP地址租约。2.5.2DHCP地址租约更新自动更新DHCP服务器自动进行租约的更新,也就是前面介绍的租约更新的过程。当租约期达到租约期限的50%时,DHCP客户端将自动开始尝试续租该租约。手动更新如果需要立即更新DHCP配置信息,可以手动对IP地址租约进行续租操作。例如,如果我们希望DHCP客户端立即从DHCP服务器上得到一台新安装的路由器的地址,只需简单地在客户端做续租操作。直接在客户端上的cmd.exe软件中,执行命令ipconfig/renew。租约更新有以下两种方法DNS使用计算机的用户还是习惯使用有一定意义的好记的名称来访问某个服务器或网站。比如使用域名来访问淘宝网站,使用域名来访问百度网站,等等。DNS协议负责将域名解析出IP地址。一个域名下可以有多个主机,域名全球唯一,主机名+域名肯定也是全球唯一的,主机名+域名称为完全限定域名(FullyQualifiedDomainName,FQDN)。例如,一台机器主机名(hostname)是www,域名后缀(domain)是51,那么该主机的FQDN应该是.。FQDN在使用时,最后的“.”经常被省去。2.6.1域名的结构DNS服务器负责域名解析2.6.2Internet中的域名服务器A服务器是根域名服务器,不负责具体的域名解析,但根域名服务器知道B、C、D服务器分别负责哪个域名的解析。C服务器负责com域名的解析,图2-30中子域名下有主机记录,即“主机名

IP地址”的记录.E服务器属于三级域名服务器,负责域名解析,该服务器记录了域名下的主机。

DNS服务器的层次DNS服务器直接返回查询结果就是权威应答2.6.3域名解析过程域名解析的过程

内网资源域名化访问(最基础场景)加速外网访问与带宽优化2.6.4安装DNS服务器在计算机上配置使用该DNS服务器进行域名解析,在命令行中使用ping命令测试域名解析的结果。C:\Users\hanlg>pingwww.在命令行中使用nslookup命令测试域名解析结果。C:\Users\hanlg>nslookupwww.

nslookup命令能够显示负责域名解析的DNS服务器和该域名对应的全部地址。一个域名有可能对应多个IP地址。Ping命令会选择第一个地址作为解析到的地址。使用nslookup解析抖音网站的域名,可以看到该域名对应的全部IPv4地址和IPv6地址。C:\Users\hanlg>nslookup测试域名解析的命令(ping和nslookup)第03章传输层协议讲师:韩立刚传输层协议TCP首部TCP连接管理(三次握手/四次挥手)TCP可靠传输实现(滑动窗口+ARQ)本章内容3.1传输层协议弥补网络层的不可靠(丢包、乱序),为应用层提供“可靠/高效”传输服务两大核心协议:TCP和UDP传输层协议的功能TCP和UDP对比特性TCPUDP连接性面向连接(需建立/释放)无连接(直接发送)可靠性可靠(重传、排序)不可靠(无重传/排序)有序性保证数据顺序不保证顺序速度较慢(开销大)较快(开销小)核心机制滑动窗口、拥塞控制无额外机制应用场景:可靠传输、分段传输、多次交互多次交互类:电子邮件(SMTP/POP3)、文件传输(FTP)分段传输类:网页访问(HTTP)、QQ文件传输关键功能:流量控制(适配接收方速度)、拥塞避免(适配网络状态)3.1.1TCP应用场景应用场景:实时性、低开销、无需分段典型应用:实时通信类:语音/视频聊天(QQ/微信)、在线游戏简单查询类:域名解析(DNS)一对多通信:组播/广播(多媒体教室屏幕同步)特点:允许少量丢包,优先保证延迟低3.1.2UDP的应用场景3.1.3传输层与应用层的关系通常用传输层协议加一个端口号来标识一个应用层协议。在传输层使用16位二进制标识一个端口,端口号取值范围是0~65535,这个数目对一个计算机来说足够用了。端口号可分为两大类,即服务器使用的端口号和客户端使用的端口号。服务器使用的端口号又分为熟知端口号(0-1023)分配给常用服务(如HTTP=80)和注册端口号(1024-49151):需IANA注册(如RDP=3389)客户端使用的端口号又称为临时端口号(49152-65535):客户端动态分配,通信后释放3.1.3传输层与应用层的关系常用的熟知端口号常见应用层协议-端口映射表应用层协议传输层协议默认端口用途HTTPTCP80网页访问HTTPSTCP443加密网页访问FTPTCP21文件传输SMTPTCP25发送邮件POP3TCP110接收邮件DNSUDP53域名解析MySQLTCP3306数据库连接3.1.4端口与服务的关系Web服务FTP服务网卡8021IP地址定位服务器,端口号定位服务器上的服务Windows查看侦听端口命令工具:netstat-an|find"TCP"3.1.4端口与服务的关系nestat–an查看侦听的端口telnet和端口扫描工具测试远程端口时候能够访问安全原则:仅开放必要端口,关闭冗余端口防护手段:服务器防火墙:如仅开放Web服务的80端口,关闭1433(MSSQL)等端口路由器ACL:控制内网访问Internet,如仅开放UDP53(DNS)、TCP80(HTTP)风险示例:若1433端口开放且密码弱,黑客可入侵数据库→控制服务器3.1.5端口和网络安全控制到服务器的访问保护服务器的安全服务器上的防火墙示意图路由器上的防火墙控制内网到外网的流量实现内网的安全3.2TCP首部结构整体框架:固定部分(20字节)+选项部分(0-40字节,4N字节)首部长度最小20字节,最大60字节TCP首部源/目的端口:标识应用层协议(如80=HTTP)序号:本报文段数据第一个字节的编号(范围0-2³²-1)确认号:期望接收的下一个字节编号(如ack=401表示前400字节已接收)数据偏移:首部长度(单位4字节,值=5→20字节固定首部)TCP核心字段解释(一)理解序号和确认号TCP核心字段解释(二)控制位含义应用场景SYN同步序列号连接建立(三次握手)ACK确认有效连接建立后所有报文FIN释放连接连接释放(四次挥手)RST重置连接处理差错(如主机崩溃)URG紧急数据高优先级数据传输窗口(流量控制,告知对方可发送的字节数)检验和(校验首部+数据)其他字段3.3TCP连接管理TCP协议属于可靠传输协议,运用TCP进行通信的计算机在正式开展通信之前,需要先确认对方的存在,并明确协商通信的参数,例如接收端的接收窗口大小、支持的最大报文段长度(MaximumSegmentSize,MSS)、是否允许选择确认(SelectiveAcknowledgement,SACK)、是否支持时间戳等等。完成连接建立后,便能够进行双向通信,在通信结束后,必须释放连接。TCP连接的建立采用的是客户/服务器模式。主动发起建立连接的应用进程被称为客户端(Client),而被动等待建立连接的应用进程则被称作服务器(Server)。TCP连接管理同步序列号、协商通信参数(如窗口大小、MSS)建立双向会话(客户端→服务器、服务器→客户端)3.3.1TCP连接建立(三次握手)确保双方数据均发送完毕,避免丢失3.3.2TCP连接释放(四次挥手)发送邮件的过程建立连接:3个报文(SYN→SYN+ACK→ACK)数据传输:SMTP/POP3命令交互(如HELO、USER、PASS)释放连接:4个报文(FIN+ACK→ACK→FIN+ACK→ACK)3.3.3实战:抓包查看TCP连接的建立和释放3.4TCP可靠传输的实现

TCP的可靠传输使用的是滑动窗口机制和自动重传请求(AutomaticRepeat-reQuest,ARQ)机制。下面具体介绍滑动窗口机制和ARQ机制的工作过程,以及使用快重传改进ARQ工作过程。接收方告知接收窗口大小,发送方按窗口大小连续发送数据简化分组表示3.4.1滑动窗口和自动重传请求工作过程滑动窗口是面向字节流的,为了方便读者记住每个分组的序号,这里假设每一个分组是100字节。为了方便画图,将分组进行编号简化表示。不过务必需要记住每一个分组的序号。简化分组表示连续ARQ协议和滑动窗口协议发送的每一个数据包都有重传计时器,超时后才会自动重传。快重传机制就是不用等到超时,收到三个连续确认,就立即重传。3.4.2快重传第457、459、461个数据包1发送的三个重复确认数据包。可以看到这三个数据包的Ack值都是563637。第462个数据包是0发送的快重传数据包(TCPFastRetransmission)。3.4.3实战:抓包分析TCP丢包重传第04章IPv4网络层协议讲师:韩立刚IPv4协议(首部、分片、TTL)ICMP(类型、格式、实战)ARP协议(原理、工作过程、抓包)本章内容4.1IPv4协议IPv4协议定义了实现数据包转发所需要的字段,这些字段称为IP首部。网络中的路由器根据IP首部转发处理数据包。IP协议规定数据包封装格式、地址填写、路由转发规则核心功能:封装数据包、填写源/目标IP、设置TTL、协议号等4.1.1IPv4首部首部组成:固定部分(20字节)+可变选项(0-40字节)4.1.2IPv4首部格式4.1.2IPv4首部格式字段位数核心作用版本4标识IP协议版本(IPv4=4)首部长度4单位4字节,默认20字节(0101)区分服务8保障QoS,优先转发带标志数据包总长度16数据包总长度(最大65535字节)标识/标志/片偏移16/3/13用于数据包分片与重组生存时间(TTL)8限制路由器转发次数协议8指示上层协议(TCP=6、ICMP=1)源/目标IP地址32/32数据包的发送端与接收端地址总长度指IP首部和数据之和的长度,也就是数据包的长度,单位为字节。总长度字段为16位,因此数据包的最大长度为213-1=65535字节以太网帧所能封装的数据包最大1500个字节,这是以太网数据链路层最大传输单元(MaximumTransferUnit,MTU)。最大传输单元3820字节,其数据部分为3800字节长(使用固定首部),需要分片为长度不超过1420字节的数据包片。因固定首部长度为20字节,因此每个数据包片的数据部分长度不能超过1400字节。于是分为3个数据包片,其数据部分的长度分别为1400,1400和1000字节。原始数据包首部被复制为各数据包片的首部,但必须修改有关字段的值。分片中的片偏移同一个数据包的分配标识一样协议字段指出此数据包携带的数据是使用何种协议,以便使目的主机的网络层知道应将数据部分上交给哪个处理过程。协议字段防止数据包无限循环转发,每经1个路由器TTL减1,为0则丢弃不同操作系统默认TTL4.1.3数据包TTL详解操作系统默认TTL值WindowsNT/2000/XP/7/10128WindowsServer2008-2019128Linux64UNIX及类UNIX系统255ping看到的TTLC:\Users\han>ping-i1来自54的回复:TTL传输中过期。C:\Users\han>ping-i2来自50的回复:TTL传输中过期。4.1.4实战:指定ping命令发送数据包的TTL值C:\Users\dell>tracert-d08通过最多30个跃点跟踪到08的路由

11ms<1毫秒<1毫秒5427ms5ms7ms503*5ms5msTracert跟踪数据包路径的原理4.2ICMPICMP报文封装在IP数据报中,其基本结构包括:类型(Type):8位,标识报文类型(如请求、应答、错误等)。代码(Code):8位,进一步细分同类型报文的具体场景。校验和(Checksum):16位,用于校验报文完整性。数据部分:根据报文类型不同,包含不同内容(如IP头部、原始数据片段等)。4.2.1ICMP报文类型ICMP报文类型报文类型类型值代码描述请求报文80请求回显报文响应报文00回显应答报文差错报告报文3(终点不可到达)0网络不可到达1主机不可到达2协议不可到达3端口不可到达4需要进行分片但设置了不分片13由于路由过滤,通信被禁止4(源点抑制)0源端被关闭5(改变路由)0对网络重定向1对主机重定向11(时间超时)0生存时间(TTL)为012(参数问题)0坏的IP首部1缺少必要的选项ICMP报文格式,ICMP报文的前4个字节是统一的格式,共有三个字段:即类型、代码和检验和。接着4个字节的内容与ICMP的类型有关。4.2.2ICMP报文格式ICMP差错报告报文的数据字段的内容Ping命令就能够给产生一个ICMP请求报文发送给目标地址,用来测试网络是否畅通,如果目标计算机收到ICMP请求报文,就会返回ICMP响应报文。4.2.3实战:抓包查看ICMP报文格式请求报文类型值为8,报文代码为0

ICMP请求报文ICMP响应报文,类型值为0,报文代码为0

ICMP响应报文4.2.4实战:捕获ICMP差错报告报文--TTL过期4.3ARP地址解析协议(AddressResolutionProtocol,ARP)是IPv4中必不可少的一种协议,它的主要功能是将IP地址解析为MAC地址,维护IP地址与MAC地址的映射关系的缓存,即ARP表项,实现网段内重复IP地址的检测。以太网以太网就是一种广播式数据链路层协议,支持多点接入。交换机组建的网络就是典型的以太网,计算机的网卡遵循的就是以太网标准。在以太网中,每个计算机网卡和网络设备接口(比如路由器接口和三层交换机的虚拟接口)都有一个MAC地址。MAC地址MAC地址也叫物理地址、硬件地址,由网络设备制造商生产时烧录在网卡(NetworklnterfaceCard,NC)的闪存芯片中。MAC地址在计算机里都是以二进制表示的,由48位二进制组成。以太网中的计算机通信必须指明目标MAC地址和源MAC地址。4.3.1以太网和MAC地址在Windows系统上查看计算机网卡的MAC地址输入“ipconfig/all”C:\Users\hanlg>ipconfig/allWindowsIP配置

连接特定的DNS后缀....... :lan描述............... :Intel(R)DualBandWireless-AC3165物理地址............. :00-DB-DF-F9-D3-51本地链接IPv6地址........ :fe80::65d6:9e31:63a0:9dd1%11(首选)IPv4地址............ :61(首选)

子网掩码............ :查看网卡MAC地址ARP实现IP地址→MAC地址的映射局域网内通信需MAC地址,ARP维护ARP缓存表(180秒有效期)网络设备一般有一个ARP缓存(ARPCache)。ARP缓存用来存放IP地址和MAC地址的关联信息。在Windows系统命令行输入arp-a可以查看arp缓存。C:\Users\hanlg>arp-a接口:11---0x7Internet地址

物理地址

类型00-50-56-ee-48-75动态100-50-56-c0-00-08动态900-0c-29-8f-f1-16动态300-0c-29-ea-a7-a4动态查看缓存的MAC地址ARP的工作过程,计算机A发送ARP请求报文,请求解析0的目标MAC地址,因为计算机A不知道0的目标MAC地址,所以该请求将目标MAC地址写成广播地址,即FF-FF-FF-FF-FF-FF,交换机收到后会将该请求转发到全部端口。4.3.2ARP工作过程ARP请求ARP响应同一网段通信计算机发送ARP广播解析目标IP地址的MAC地址4.3.3同一网段通信和跨网段通信跨网段通信计算机发送ARP广播解析网关MAC地址跨网段通信解析网关MAC地址其中Opcode是选项代码,指示当前包是请求报文还是应答报文,ARP请求报文的值是0x0001,ARP应答报文的值是0x0002。4.3.4抓包分析ARP帧第05章IPv6网络层讲师:韩立刚Pv6概述IPv6编址IPv6地址配置实现IPv6地址自动配置本章内容5.1IPv6概述

地址耗尽:32位地址空间(约42亿个)无法满足设备增长(物联网、5G)分配不均:全球地址资源集中,部分地区短缺NAT复杂性:导致P2P等端到端应用故障安全性不足:无内置安全机制,易受攻击路由表膨胀:网络规模扩大导致路由器负担加重不支持新兴技术:难以适配物联网、云计算等新场景5.1.1IPv4面临的困境5.1.2IPv6优势优势具体说明更大地址空间128位地址(2¹²⁸个),彻底解决地址耗尽问题报文结构精简基本首部固定40字节,Option功能转移至扩展首部,路由器处理效率提升内容获取更快地址“聚类”原则,减小路由表规模,转发速度提升层次化网络结构IANA→RIR→ISP分配模式,路由聚合性强更高安全性内置加密、报文校验机制,保障数据完整性和真实性更好QoS支持新增流标记域,精准区分实时流量适配新兴技术支持SRv6、网络切片,满足5G、物联网、工业互联网需求网络层方面,IPv6协议栈的网络层没有ARP协议和IGMP协议。IPv6对ICMP协议的功能做了很大扩展,IPv4中ARP协议的功能被嵌入到IPv6的邻居发现协议(NDP)中,IGMP协议的组播成员管理功能被嵌入到组播侦听器发现(MLD)协议中。功能方面,ICMPV6取代了ICMP,用于测试网络、报告错误等,帮助判断网络故障。NDP取代了ARP,用于管理相邻IPv6节点间的交互,包括自动配置地址和地址解析。MLD取代了IGMP,用于管理IPv6组播组成员的身份。TCP/IPv4协议栈和TCP/IPv6协议栈的比较IPv6数据包在基本首部(BaseHeader)的后面允许有零个或多个扩展首部(ExtensionHeader),再后面是数据。所有的扩展首部都不属于IPv6数据包的首部。所有的扩展首部和数据合起来叫做数据包的有效载荷(Payload)或净负荷。5.1.3IPv6的基本首部

IPv6的基本首部

版本号:长度为4bit。对于IPv6,该值为6。

流类别:长度为8bit。等同于IPv4中的QoS字段,表示IPv6数据包的类或优先级,主要应用于QoS。

流标签:长度为20bit。IPv6中的新增字段,用于区分实时流量,不同的流标签+源地址可以唯一地确定一条数据流,中间网络设备可以根据这些信息更加高效地区分数据流。

有效载荷长度:长度为16bit。有效载荷是指紧跟IPv6基本首部的数据包的其他部分(即扩展首部和上层协议数据单元)。

下一个首部:长度为8bit。该字段可定义紧跟在IPv6基本首部后面的第一个扩展首部(如果存在)的类型,或者上层协议数据单元中的协议类型(类似于IPv4的Protocol字段)。

跳数限制:长度为8bit。该字段类似于IPv4中的TimetoLive字段,它定义了IP数据包所能经过的最大跳数。每经过一个路由器,该数值就减1,当该字段的值为0时,数据包将被

丢弃。

源地址:长度为128bit。表示发送方的地址。目的地址:长度为128bit。表示接收方的地址。基本首部中各字段的作用取消了首部长度字段:IPv6的首部长度是固定的40字节。取消了服务类型字段:其功能由流量类别(TrafficClass)实现。。取消了总长度字段:改用有效载荷长度字段,该字段只表示数据部分的长度,不包括首部。取消了标识、标志和片偏移字段:这些功能已包含在分片扩展首部中。把TTL字段改称为跳数限制字段:作用不变,更强调“可通过路由器个数”的概念,数据过一次路由器就减1,减到0则丢弃数据。取消了协议字段:改用下一个首部字段,当IPv6数据报没有扩展首部时,其作用和IPv4的协议字段一样,用于指出基本首部后面的数据应交付给IP层上面的哪一个高层协议;当出现扩展首部时,该字段的值标识后面第一个扩展首部的类型。取消了检验和字段:加快了路由器处理数据报的速度。取消了选项字段:用扩展首部来实现选项功能,路由器通常不处理扩展首部(除逐跳扩展首部外),提高了处理效率。同时,IPv6首部改为8字节对齐,而IPv4首部是4字节对齐。与IPv4相比Pv6对首部中的某些字段进行的更改扩展首部由源/目的节点处理,中间路由器仅处理“逐跳选项首部”。按固定顺序排列:逐跳选项→目的选项→路由选择→分片→认证→封装安全有效载荷5.1.4IPv6的扩展首部扩展首部类型下一个首部值功能说明逐跳选项首部0为路径上每台路由器指定发送参数目的选项首部60仅目的节点处理的附加信息路由选择首部43强制数据包经过特定设备分片首部44报文超过MTU时分片(替代IPv4的标识/片偏移字段)认证首部51IPsec认证、数据完整性、重放保护封装安全有效载荷首部50IPsec加密+认证功能每一个扩展首部都由若干个字段组成,它们的长度也各不相同。但所有扩展首部的第一个字段都是8位的“下一个首部”字段。如图所示,此字段的值指出了在该扩展首部后面的字段是什么。IPv6的扩展首部包括路由选择首部、分片首部及TCP首部IPv6扩展首部示例5.2IPv6编址长度:128位,格式为xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx(8组4位十六进制)组成:网络前缀(标识网络)+接口ID(标识设备接口)地址数量对比:IPv4:32位(42亿个)IPv6:128位(≈3.4×10³⁸个)5.2IPv6编址长度:128位,格式为xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx(8组4位十六进制)组成:网络前缀(标识网络)+接口ID(标识设备接口)地址数量对比:IPv4:32位(42亿个)IPv6:128位(≈3.4×10³⁸个)5.2.1IPv6地址概述压缩规则:前导0可省略(如2001:0DB8::→2001:DB8::)连续全零组用::代替(仅1次)Pv6地址的简化表示根据IPv6地址网络前缀,可将IPv6地址分为单播(Unicast)地址、组播(Multicast)地址和任播(Anycast)地址。单播地址又分为全球单播地址、唯一本地地址、链路本地地址、特殊地址和其他单播地址。5.2.2IPv6地址分类全球单播地址也被称为可聚合全球单播地址。该类地址全球唯一,用于需要有Internet访问需求的计算机,相当于IPv4的公网地址。通常GUA的网络部分长度为64bit,接口标识也为64bit。IPv6全球单播地址的分配方式如下:顶级地址聚集机构TLA(TopLevelAggregator)(大的ISP或地址管理机构)获得大块地址,TLA负责给次级地址聚集机构NLA(NextLevelAggregator)(中小规模ISP)分配地址,NLA再给站点级地址聚集机构SLA(SiteLevelAggregator)(子网)和网络用户分配地址。全球单播地址全局路由前缀(GlobalRoutingPrefix):由提供商指定给一个组织机构,一般至少为45bit。子网ID(SubnetID):组织机构根据自身网络需求划分子网。

接口标识:用来标识一个设备(的接口)。全球单播地址的结构单播地址用于点对点通信,仅能标识一个接口。常见的单播地址类型有全球单播地址、唯一本地地址和链路本地地址等,其网络前缀和接口标识通常为64位。一个IPv6单播地址可以分为如下两部分网络前缀:nbit,相当于IPv4地址中的网络ID。接口标识:(128-n)bit,相当于IPv4地址中的计算机ID。5.2.3单播地址唯一本地地址是IPv6私网地址,只能够在内网使用。该地址空间在IPv6公网中不可被路由,因此不能直接访问公网。唯一本地地址使用FC00::/7地址块,目前仅使用了FD00::/8地址段,FC00::/8预留为以后扩展用。唯一本地地址IPv6中有种地址类型叫做链路本地地址,该地址用于在同一子网中的IPv6计算机之间进行通信。自动配置、邻居发现以及没有路由器的链路上的节点都可使用这类地址。链路本地地址的有效范围是本地链路。其前缀为FE80::/10。当配置一个单播IPv6地址的时候,接口上会自动配置一个链路本地地址。链路本地地址可以和可路由的IPv6地址共存。链路本地地址IPv6单播地址接口标识可以通过三种方式生成:

手工配置系统自动生成

通过IEEEEEUI-64(64-bitExtendedUniqueIdentifier)规范生成通过EUI-64规范生成最为常用,此规范将接口的MAC地址转换为IPv6接口标识。IEEEEEUI-64规范是在MAC地址中插入FF-FE,MAC地址的第7bit取反,形成IPv64地址的64bit网络接口标识。单播地址接口标识生成方式组播地址用于“一对多”通信,可标识多个接口,仅能作为IPv6报文的目的地址。组播地址以11111111(ff)开头,包含Flags、Scope、Reserved和GroupID等字段。Flags表示永久或临时组播组,Scope表示组播范围,Reserved必须为0,GroupID用于标识组播组。组播源使用某个组播地址发送组播流,

打算接收该组播信息的计算机需要加入该组播组,也就是网卡绑定该组播IP地址,生成对应的组播MAC地址。5.2.4组播地址Flags:表示永久或临时组播组。0000表示永久分配或众所周知的;0001表示临时的。Scope:表示组播的范围。GroupID:组播组ID。Reserved:占80比特,必须为0。组播地址的构成Scope取值范围0表示预留1表示节点本地范围,单个接口有效,仅用于Lookback通信2表示链路本地范围,例如FF02::15表示站点本地范围8组织本地范围E表示全球范围F表示预留被请求节点组播地址用于邻居发现机制和地址重复检测,有效范围为本地链路。当一个节点具备了单播或任播地址,就会对应生成一个被请求节点组播地址,并且加入了这个组播组。其前104位固定,根据节点的单播或任播地址生成,可用于获取邻居节点链路层地址和进行重复地址检测,且不会占用其他非目标节点网络性能。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论