一、DNS
(一)DNS的组成
域名系统是用于将主机域名解析为IP地址的系统,由解析器和域名服务器组成,DNS主要基于UDP协议,较少情况下使用TCP协议,端口号均为53。
可从三部分来解释域名系统:DNS名字空间、域名服务器和DNS客户机。
1、DNS名字空间
DNS名字空间是树状结构,连接在Internet上的主机或路由器都有唯一的层次结构名称,也称为域名。
不同级别的域名通过“.”隔开,根域处于Internet三域名结构的最高,提供根域名服务,其中根域名也是通过“.”来表示,域名的完整结构如下:
主机.三级域名.二级域名.顶级域名.
主机属于最低层域名,处于域名树的叶子端,代表各类主机提供的服务,而顶级域名处于根域名之下,它可分为国家顶级域名、通用顶级域名和国际顶级域名三大类。
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条。
2、迭代查询
当主机有域名解析的需求时,和递归查询一样,也是首先查询本地域名服务器,如果成功,由本地域名服务器反馈结果;如果查询失败,则本地域名服务器直接向根域名服务器发起查询请求,然后本地域名服务器直接向顶级域名服务器发起查询请求,依次迭代下去,直到得到结果IP,这种查询方式发送的域名请求有多条。
3、DNS服务器在解析过程中的查询顺序
DNS域名查询的顺序如下:
客户机首先查找本地DNS缓存,若无法找到,则根据本机的配置确定查找hosts文件,然后是本地DNS服务器,最后是根域名服务器。
(四)DNS安全
DNS系统的是网络运行的前提,可以通过设置防火墙控制对DNS的访问、避免DNS的主机信息被窃取、限制区域传输等方式确保DNS的安全。
另外,DNS通知是一种安全机制,即只有被通知的辅助服务器才能进行区域复制,从而防止未授权的服务器非法区域复制,它也是一种推进机制,用于辅助服务器及时更新区域的信息。
二、DHCP
(一)DHCP的基本概念
动态主机配置协议是基于BOOTP上的改进所来的主机配置协议,通过该协议,DHCP服务器为DHCP客户端进行动态IP地址分配,即不必指明DHCP服务器的IP地址就能获得DHCP服务。
(二)DHCP的相关端口
当需要跨越多个网段提供DHCP服务时,要通过DHCP中继代理获取外网IP地址,从而在DHCP客户和服务器之间转发DHCP消息的主机或路由器。
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)。
(二)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
统一资源标识符是为万维网上资源定位的系统,它由四个部分组成:
<协议>://表示使用的哪种协议来获取文档,比如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)三项组成,它是进行网络设备间通信的管理协议,可以进行网络状态监视、网络参数设定、网络流量统计与分析、发现网络故障等等。
(五)SNMP PDU
SNMP规定了五个重要的协议数据单元PDU,也称为SNMP报文,可分为从管理站到代理的SNMP报文和代理到管理站的SNMP报文。
如下表,两种SNMP报文:
(六)SNMP版本
SNMP版本由SNMPv1、SNMPv2、SNMPv3三个版本,SNMPv1易于实现,同一团体的管理站和代理才能互相作用;SNMPv2可以实现分布和集中两种方式的管理,它较于SNMPv1增加管理站之间的信息交换,且增加多协议支持,引入了信息模块的概念;SNMPv3采用模块化设计,提供安全的支持,基于用户的安全模型。
(七)管理信息库(MIB)
目前的管理信息库版本为MIB-2,每个MIB-2信息包括若干个MIB变量,常见的MIB-2信息类别有:
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、报文确认