(*长期更新)软考网络工程师学习笔记——Section 9 应用层

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
简介: (*长期更新)软考网络工程师学习笔记——Section 9 应用层

一、DNS


(一)DNS的组成


域名系统是用于将主机域名解析为IP地址的系统,由解析器和域名服务器组成,DNS主要基于UDP协议,较少情况下使用TCP协议,端口号均为53。


可从三部分来解释域名系统:DNS名字空间、域名服务器和DNS客户机。

1、DNS名字空间

DNS名字空间是树状结构,连接在Internet上的主机或路由器都有唯一的层次结构名称,也称为域名。

不同级别的域名通过“.”隔开,根域处于Internet三域名结构的最高,提供根域名服务,其中根域名也是通过“.”来表示,域名的完整结构如下:

主机.三级域名.二级域名.顶级域名.

1667138826829.jpg

主机属于最低层域名,处于域名树的叶子端,代表各类主机提供的服务,而顶级域名处于根域名之下,它可分为国家顶级域名、通用顶级域名和国际顶级域名三大类。

2、域名服务器

域名服务器运行模式为客户机/服务器模式(C/S模式),以下通过域名空间层次和域名服务器的作用可分类如下:

(1)按域名空间层次可分为根域名服务器、顶级域名服务器、权限域名服务器和本地域名服务器四种。

(2)按域名服务器的作用可分为主域名服务器、辅域名服务器、缓存域名服务器和转发域名服务器。

名称 作用
主域名服务器 具有域名数据库,一个域只有一个主域名服务器
辅域名服务器 具有域名数据库,可进行主域名服务器备份,使负载均衡
缓存域名服务器 无域名数据库,有高速缓冲,其获取解析结果耗时最短
转发域名服务器 具有域名数据库,负责非本地和缓存中无法查到的域名转发


其中缓存域名服务器没有域名数据库,它向其他域名服务器进行域名查询,将查询的结果保存在缓存中的域名服务器。


(二)DNS的资源记录类型


1、资源记录的格式

域名数据库中包括DNS服务器所使用的一个或多个区域文件,每个区域都有一组结构化的资源记录,DNS的资源记录格式为:


[引用的域对象名][TTL生存时间记录字段][指定网络的地址类][记录类型][资源记录有关的数据]


其中TTL通常为空,表示生存周期在授权资源记录开始中指定,指定网络的地址类时对于TCP/IP网络使用IN。

2、常见的资源记录

资源记录名称 作用
A 指明一个域名对应的IP地址(将DNS域名映射到IPv4的32位地址
AAAA 指明一个域名对应的IP地址(将DNS域名映射到IPv6的128位地址
CNAME 规范名资源记录,也就是别名记录允许多个名称对应同一个主机(常见别名记录之前必须先创建A记录)
MX 指明邮件服务器的IP地址和优先级
NS 定义区域的授权服务器指明域名由哪台服务器来解析
PTR 指针,定义了区域的反向搜索,用于将一个IP地址映射为一个主机名


通常不需要设置NS记录,因为域名解析是通过ISP提供的域名服务器解析的,若用户需要自己用DNS服务器来解析自己的域名,则需创建NS记录,并将域名服务器的IP地址告诉给ISP进行登记。


(三)域名解析


将域名解析为IP地址,也就是域名解析,域名解析分为递归查询和迭代查询两种。

1、递归查询

递归查询是主要的域名查询方式,当主机有域名解析的需求时,首先查询本地域名服务器,如果成功,则由本地域名服务器反馈结果;如果查询失败,则查询上一级域名服务器,然后由上一级域名服务器完成查询,即通过该查询方式,发送的域名请求只有1条。

1667138912149.jpg


2、迭代查询

当主机有域名解析的需求时,和递归查询一样,也是首先查询本地域名服务器,如果成功,由本地域名服务器反馈结果;如果查询失败,则本地域名服务器直接向根域名服务器发起查询请求,然后本地域名服务器直接向顶级域名服务器发起查询请求,依次迭代下去,直到得到结果IP,这种查询方式发送的域名请求有多条。



3、DNS服务器在解析过程中的查询顺序

DNS域名查询的顺序如下:

1667138929187.jpg


客户机首先查找本地DNS缓存,若无法找到,则根据本机的配置确定查找hosts文件,然后是本地DNS服务器,最后是根域名服务器。


(四)DNS安全


DNS系统的是网络运行的前提,可以通过设置防火墙控制对DNS的访问、避免DNS的主机信息被窃取、限制区域传输等方式确保DNS的安全。


另外,DNS通知是一种安全机制,即只有被通知的辅助服务器才能进行区域复制,从而防止未授权的服务器非法区域复制,它也是一种推进机制,用于辅助服务器及时更新区域的信息。


二、DHCP


(一)DHCP的基本概念


动态主机配置协议是基于BOOTP上的改进所来的主机配置协议,通过该协议,DHCP服务器为DHCP客户端进行动态IP地址分配,即不必指明DHCP服务器的IP地址就能获得DHCP服务。


(二)DHCP的相关端口


当需要跨越多个网段提供DHCP服务时,要通过DHCP中继代理获取外网IP地址,从而在DHCP客户和服务器之间转发DHCP消息的主机或路由器。


1667138977622.jpg

DHCP服务端使用UDP(用户数据报协议)的67号端口来监听和接收客户请求消息,而客户端通过UDP的68号端口接收来自DHCP服务器的消息回复,而当DHCP客户端无法找到对应的服务器、获取合法IP地址失败的前提下,此时获取的IP地址为169.254.X.X(window系统中)。


(三)DHCP的优点


通过采用DHCP分配IP地址可以合理地分配IP地址资源(超过租约或由用户释放的IP地址会被服务器收回,并重新分配给其它的主机)、减少网络管理人员的工作量(由于其自动获取服务器提供的配置参数)和减少IP地址分配出错的可能(服务器对地址池的管理防止出错)等等,但不能提高域名解析的速度。


(四)DHCP的工作流程


客户端发送DHCPDISCOVER广播消息的等待时间为1s,若1s内无回应则会进行第二次DHCPDISCOVER广播,若一直没有得到回应,则客户端会有4次DHCPDISCOVER广播【第一次等待时间为1s,第二次等待时间为9s,第三次等待时间为13s,第四次等待时间为16s】。若四次都没有得到DHCP服务器的回应,则客户端显示错误信息。

1、第一步,DHCP客户端发送IP租用请求(发送一个DHCPDISCOVER广播消息,采用广播方式发送),其封包的源地址为0.0.0.0,目标地址为255.255.255.255,即DHCP客户端在启动时会向网络发出一个DHCPDISCOVER包来请求IP地址为0.0.0.0。

2、第二步,收到后,DHCP服务器提供IP租用服务,通过UDP的67号端口向DHCP客户端回应一个DHCPOFFER信息,其中包括一个还没被分配的有效IP地址。

3、第三步,IP租用选择,由于同一子网中可能有多台DHCP服务器,在一般情况下,客户端会采用最先到达的DHCP服务器并分配IP地址,即此时不止一台DHCP服务器收到DHCPOFFER信息,所以客户端选择最先到达的DHCPOFFER并发送DHCPREQUEST消息包。

4、第四步,IP租用确认,DHCP服务器向客户端发送一个DHCPACK确认信息,其中包括IP地址、子网掩码、默认网关、DNS服务器地址以及IP地址的租约期限(默认为8天)。

5、第五步,获取后DHCP客户端重新登录(即重新联网),直接发送包含之前分配的地址信息的DHCPREQUEST请求(依然是通过广播方式),DHCP服务器收到请求后,若该地址可用,则返回DHCPACK信息确认,若不可用则发送DHCPNACK信息否认(此时客户端就需从头开始申请IP地址)。


(五)DHCP的更新租约和管理


1、DHCP的更新租约

DHCP服务器向DHCP客户端发送的IP地址都有一个租用期限(默认为8天),在期限到达时,DHCP会收回出租的IP地址,若想延长租约则需更新IP租约,而若没有延长租约从而超过租约期限或由用户自己释放的IP地址会被DHCP服务器收回,并重新分配给其它的主机。

在DHCP客户端启动时和IP租约期过一半(50%)时,DHCP客户端会自动向DHCP服务器发送更新IP租约的信息,若没有响应,则在IP的使用时间到达租约期的87.5%时会再次请求更新。

2、DHCP的管理

通过使用DHCP可将所有获取IP地址的主机划分为不同的类别进行管理,对于频繁变化的、使用远程访问的笔记本和移动设备则需提供较短的租约时间,例如移动用户适合划分到租约期较短的类别,固定用户适合划分到租约期较长的类别,远程访问用户适合划分到默认路由类别,服务器适合划分到固定IP地址的类别。


三、FTP和TFTP


(一)FTP的基本概念和相关端口


文件传输协议(FTP),用于在Internet上控制文件的传输。FTP的默认传输层端口号为21号,其中通过TCP(传输控制协议)的20号端口建立的连接是数据连接,通过TCP的21号端口建立的连接是控制连接,若客户端应用进程的命令端口为N,则数据传输端口为N+1(N≥1024)。

1667139036326.jpg


(二)FTP的工作方式


FTP有两种工作方式,分为主动式和被动式。

1、主动式

当需要传输数据时,客户端从一个任意的非系统端口N(N≥1024)连接到FTP服务器的21号端口(控制连接),随后开始监听端口N+1发送FTP命令至FTP服务器,服务器会从20号数据端口向客户端指定的N+1号端口发送连接请求,并建立一条数据链路来传输数据。

2、被动式

当需要传输数据时,被动式与主动式一样,连接到FTP服务器的21号端口,随后客户端发送PASV命令,且服务器响应,然后服务器开启一个任意的非系统端口Y(Y≥1024),客户端从端口N+1连接到FTP服务器的Y号端口。


(三)TFTP


TFTP与FTP类似,相对于FTP其小而简单,基于UDP协议,一般用于路由器、交换机、防火墙配置文件传输。


四、WWW、HTTP和HTTPS


(一)WWW的构成


WWW,即万维网,基于URL进行定位,通过HTTP(超文本传送)协议传送给用户,由HTML(超文本标记语言)进行文档的展现。

1、URL

统一资源标识符是为万维网上资源定位的系统,它由四个部分组成:

1667139075156.jpg

<协议>://表示使用的哪种协议来获取文档,比如http、https、ftp等等;主机表示资源主机的域名,端口表示主机服务端口(有时候可省略),路径表示资源在主机中的具体位置(有时候可省略)。

2、HTTP

HTTP是一种网络传输协议,所有的 WWW 文件都必须遵守这个标准。

3、HTML

HTML语言用于描述网页文档,WWW采用客户机/服务器(C/S)的工作模式,首先用户使用浏览器或其它程序建立客户机与浏览器的连接,并发送浏览请求,Web服务器接收到请求后返回信息到客户机,通信完成后关闭连接。


(二)HTTP


1、HTTP协议的相关端口

HTTP协议通过使用TCP的80号端口提供服务,它工作在客户机/服务器(C/S)的模式下,客户端发起一个到服务器上指定端口(默认端口为80)的HTTP请求,收到请求后服务器向客户端发回响应消息,其中客户端请求和连接端口需大于1024。

HTTP使用TCP协议的原因是,通过TCP协议提供传输控制,可用对数据进行顺序组织且可以对错序数据进行纠正。

2、HTTP报文

HTTP报文分为请求报文和响应报文,前者是客户端向服务器发送的请求报文,而后者是服务器应答客户端的报文。

常见的请求报文如下:

名称 作用
GET 读网页,请求读取URL标识的信息
HEAD 读网页头,请求读取URL标识的信息首部
POST 推送网页信息,将消息加载到指定网页上
PUT 指明URL常见或修改资源,用于上传资源
DELETE 删除URL所指定的资源
OPTION 请求一些参数信息
TRACE 进行环路测试
CONNECT 用于代理服务器


(三)HTTPS


HTTP有很大的安全缺陷,由于其数据的明文传送和消息完整性检测的缺乏,所以在HTTP 的基础上加入SSL(安全套接层协议),通过传输加密和身份认证,相比于HTTP,HTTPS(安全超文本传输协议)保证了传输过程的安全性,可防止数据在传输过程中被窃取、改变,确保数据的完整性。

HTTPS使用SSL对信息内容进行加密,使用TCP的443端口发送和接收报文。


HTTPS的安全机制工作在传输层,是由于SSL/TLS位于传输层,而S-HTTP的安全体制工作在应用层(S-HTTP是HTTP协议的扩展)。


五、电子邮件协议


常见的电子邮件协议有:简单邮件传输协议(SMTP)、邮局协议(POP,目前版本是POP3)和Internet邮件访问协议(IMAP,目前版本是IMAP4)三种协议。


(一)SMTP


简单邮件传输协议(SMTP)负责底层的邮件系统,将邮件从一台主机发送至另一台主机,它基于TCP协议的25号端口。


(二)POP


邮局协议是将邮件从邮件服务器中传输至用户计算机的协议,它基于TCP协议的110号端口,客户端软件与POP3服务器建立TCP连接,由于使用了客户端软件,所以可看作采用C/S模式。


例如某公司的域名为pq.com,其POP服务器的域名为pop.pq.com,SMTP服务器的域名为smtp.pq.com,当配置Foxmail邮件客户端时,在发送邮件服务器栏应该填写__________,在接收邮件服务栏应该填写__________。


解:发送邮件采用的是SMTP协议,所以在发送邮件服务器栏应该填写smtp.pq.com,而接收邮件采用的是POP协议,所以接收邮件服务栏应该填写pop.pq.com。


(三)IMAP


Internet邮件访问协议是POP的一种替代协议,提供了邮件检索和邮件处理的新功能,它增强了电子邮件的灵活性,它基于TCP协议的143号端口。


六、SNMP


(一)OSI定义的网络管理


OSI定义的网络管理有五大功能域:性能管理、配置管理、故障管理、安全管理和计费管理。


(二)CMIS/CMIP


公共管理信息服务/协议是OSI模型提供的网络管理协议簇,CMIS定义了每个网络组成部件提供的网络管理服务,而CMIP是实现CMIS服务的协议。


(三)网络管理系统


网络管理系统主要包括四大部分:至少一个网络管理站、多个被管代理、网管协议(如SNMP、CMIP),以及至少一个网管信息库。一个代理由多个管理站管理,一个管理进程可以联系多个代理,一个代理也可以给多个管理进程提供信息。

在SNMPv3中,网络管理站和代理统一叫做SNMP实体,SNMP实体由一个SNMP引擎和一个或多个SNMP应用程序组成。

1、网络管理站

网络管理站位于网络系统主干或靠近主干的工作站,是网络管理系统的核心,驻留在网络管理的服务器上,负责管理代理和管理信息库,实施网络管理功能,作为网络管理员与网络管理系统的接口。

2、代理

代理位于被管理设备内部,在网络管理系统中,主机、网桥、路由器及集线器可作为被管代理工作,负责收集被管理设备的各种信息和响应管理站的命令或请求,并将其传输至MIB数据库中。

3、管理信息库(MIB)

一个虚拟数据库,提供有关被管理网络各类系统和设备的信息,属于分布式数据库。

4、网络管理协议

网络管理协议用于在管理站和代理之间传递、交互信息,比如SNMP和CMIS/SMIP。


(四)SNMP的组成


简单网络管理协议是一组标准,它基于UDP协议,SNMP协议实体发送请求和应答报文的默认端口号是161,SNMP代理发送陷阱报文(Trap)的默认端口号是162,由SNMP协议、管理信息库(MIB)和管理信息结构(SMI)三项组成,它是进行网络设备间通信的管理协议,可以进行网络状态监视、网络参数设定、网络流量统计与分析、发现网络故障等等。

1667139269360.jpg


(五)SNMP PDU


SNMP规定了五个重要的协议数据单元PDU,也称为SNMP报文,可分为从管理站到代理的SNMP报文和代理到管理站的SNMP报文。

1667139282583.jpg

如下表,两种SNMP报文:

1667139292646.jpg


(六)SNMP版本


SNMP版本由SNMPv1、SNMPv2、SNMPv3三个版本,SNMPv1易于实现,同一团体的管理站和代理才能互相作用;SNMPv2可以实现分布和集中两种方式的管理,它较于SNMPv1增加管理站之间的信息交换,且增加多协议支持,引入了信息模块的概念;SNMPv3采用模块化设计,提供安全的支持,基于用户的安全模型。


(七)管理信息库(MIB)


目前的管理信息库版本为MIB-2,每个MIB-2信息包括若干个MIB变量,常见的MIB-2信息类别有:

1667139301981.jpg

MIB中被管对象的访问方式有只读、读写、只写和不可访问四种方式。


七、Telnet远程登陆协议


Telnet即TCP/IP终端仿真协议,它是一种基于TCP协议端口号为23的虚拟终端通信协议,采用的工作方式也是C/S(客户端/服务器)的工作方式,通过网络虚拟终端(NVT)实现客户端和服务器的数据传输,NVT代码中包含了标准ASCII字符集和Telnet命令集,是本机终端和远程主机之间的网络接口,从而实现远程登录、远程管理交换机和路由器等功能。

建立连接后,由于其数据和口令是以明文发送的,所以这种通信协议并不安全。


八、SSL


(一)SSL的定义


SSL(安全套接层)协议是一种可靠的、为远程登录会话以及其他网络服务提供安全性的协议,,它是位于应用层和传输层基础之间的安全协议,通过SSH协议阔以对所有传输的数据进行加密,同时防止DNS欺骗和IP欺骗,所以通过SSL协议可以实现安全网站访问,另外它由于传输的数据是经过压缩的所以可以加快传输的速度。

SSL工作在TCP的默认端口443,它主要包括SSL记录协议、SSL握手协议、SSL告警协议、SSL修改密文协议等等。


(二)SSL协议的工作流程


SSL协议的工作流程可分为以下几步:

1、发送请求信息

2、返回请求信息

3、检查可信CA表

4、产生对称密钥

5、报文确认


相关文章
|
2月前
|
负载均衡 网络协议 算法
|
13天前
|
网络协议 安全 测试技术
Nping工具详解:网络工程师的瑞士军刀
### Nping工具详解:网络工程师的瑞士军刀 Nping是Nmap项目的一部分,支持TCP、UDP、ICMP和ARP等多种协议,用于生成和分析网络数据包。它提供灵活的命令行界面,适用于网络探测、安全测试和故障排除。本文介绍Nping的基础与高级用法,包括发送不同类型的网络请求、自定义TCP标志位、路由跟踪等,并通过实战案例展示其应用。掌握Nping有助于更好地理解和管理网络环境。 (239字符)
46 8
|
2月前
|
网络协议 网络架构
网络工程师必知:什么是OSPF多区域?如何配置?
网络工程师必知:什么是OSPF多区域?如何配置?
116 2
网络工程师必知:什么是OSPF多区域?如何配置?
|
2月前
|
负载均衡 网络协议 算法
|
2月前
|
域名解析 网络协议 安全
|
2月前
|
安全 网络安全 网络虚拟化
什么是划分子网?网络工程师划分子网有啥技巧?
在网络工程中,划分子网是将大网络分割成多个小子网的技术,旨在优化网络性能、提升安全性和管理效率。本文介绍了子网的基本概念、划分子网的方法与步骤、网络工程师的技巧及实际应用案例,强调了合理规划的重要性。
242 4
|
2月前
|
存储 网络协议 安全
30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场
本文精选了 30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场。
140 2
|
1月前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
73 17
|
1月前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将介绍网络安全的重要性,分析常见的网络安全漏洞及其危害,探讨加密技术在保障网络安全中的作用,并强调提高安全意识的必要性。通过本文的学习,读者将了解网络安全的基本概念和应对策略,提升个人和组织的网络安全防护能力。
|
1月前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
59 10