华为初级网络工程师(HCIA)(五)——应用层协议(DNS、HTTP、SMTP和POP3/IMAP、Telnet和SSH、FTP和TFTP)

6 篇文章 1 订阅
本文为作者学习文章,按作者习惯写成,如有错误或需要追加内容请留言(不喜勿喷)
本文为追加文章,后期慢慢追加

应用层概述:

  1. TCP/IP模型的最高层
  2. 直接为应用程序提供网络服务
常用的应用层协议:

DNS
HTTP
SMTP和POP3/IMAP
Telnet和SSH
FTP和TFTP

1. DNS协:Domain Name system 域名解析系统

使用大佬的DNS原理总结及其解析过程详解(详解请看大佬文章)

概述:域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换成为IP地址。域名系统其实就是名字系统。为什么不叫“名字”而叫“域名”呢?这是因为在这种因特网的命名系统中使用了许多的“域(domain)”,因此就出现了“域名”这个名词。“域名系统”明确地指明这种系统是应用在因特网中。

我们都知道,IP地址是由32位的二进制数字组成的。用户与因特网上某台主机通信时,显然不愿意使用很难记忆的长达32位的二进制主机地址。即使是点分十进制IP地址也并不太容易记忆。相反,大家愿意使用比较容易记忆的主机名字。但是,机器在处理IP数据报时,并不是使用域名而是使用IP地址。这是因为IP地址长度固定,而域名的长度不固定,机器处理起来比较困难。

因为因特网规模很大,所以整个因特网只使用一个域名服务器是不可行的。因此,早在1983年因特网开始采用层次树状结构的命名方法,并使用分布式的域名系统DNS。并采用客户服务器方式。DNS使大多数名字都在本地解析(resolve),仅有少量解析需要在因特网上通信,因此DNS系统的效率很高。由于DNS是分布式系统,即使单个计算机除了故障,也不会妨碍整个DNS系统的正常运行。

域名到IP地址的解析是由分布在因特网上的许多域名服务器程序共同完成的。域名服务器程序在专设的结点上运行,而人们也常把运行域名服务器程序的机器称为域名服务器。

作用:

  1. 建立IP地址与域名关系(域名:www.baidu.com,为了用户方便记忆,但是网络中不会使用域名做通信,都是使用IP地址做通讯)
  2. 将域名解析为IP地址
  3. 将IP地址解析为域名

下图为DNS通讯的流程:
在这里插入图片描述
每一次访问域名,都会向DNS服务器查询,DNS服务器进行响应,完成目的地址的封装。
DNS大致分为请求报文request和响应报文relay。
常用的DNS服务器:114.114.114.114

系统自带的DNS查询工具
命令 备注
nslookup 进行DNS查询
ipconfig /display DNS 查看DNS缓存
ipconfig /flushDNS 清空DNS缓存
具体看系统的命令选项。
在这里插入图片描述

2.HTTP hypertext transfer protocol 超文本传输协议

http对于https来说没有安全性可言。2020年了,大多数使用的https协议。

  1. 帮助客户端访问万维网 (World Wide Web)。
  2. 网络浏览器通过翻译源代码(HTML超文本标识语言)文件来表示文本、图像、音乐、动作及视频。
    在这里插入图片描述

客户端首先发送get报文给服务器,请求将源代码发送。
服务器将页面文件翻译文本、图像、音乐、动作及视频给客户端。
在这里插入图片描述
HTTP不安全,数据没有经历过加密,抓包可以抓取到账号密码,没有安全性可言。

详情大佬的HTTP和HTTPS详解
http的URL的结构:
使用HTTP协议访问资源是通过URL(Uniform Resource Locator)统一资源定位符来实现的。URL的格式如下:
scheme://host:port/path?query

scheme: 表示协议,如Http, Https, Ftp等;
host: 表示所访问资源所在的主机名:如:www.baidu.com;
port: 表示端口号,默认为80;
path: 表示所访问的资源在目标主机上的储存路径;
query: 表示查询条件;
例如: http://www.baidu.com/search?words=Baidu

HTTP的请求方法:
GET: 获取URL指定的资源;
POST:传输实体信息
PUT:上传文件
DELETE:删除文件
HEAD:获取报文首部,与GET相比,不返回报文主体部分
OPTIONS:询问支持的方法
TRACE:追踪请求的路径;
CONNECT:要求在与代理服务器通信时建立隧道,使用隧道进行TCP通信。主要使用SSL和TLS将数据加密后通过网络隧道进行传输。

HTTP应答状态码:

状态码类别描述
1xxInformational(信息性状态码)请求正在被处理
2xxSuccess(成功状态码)请求处理成功
3xxRedirection(重定向状态码)需要进行重定向
4xxClient Error(客户端状态码)服务器无法处理请求
5xxServer Error(服务端状态码)服务器处理请求时出错
3.SMTP和POP3 邮件服务
协议备注
SMTPSimple mail transfer protocol 简单邮件传输协议用于发送邮件
POP3Post office protocol v3 邮局协议版本3用于接收邮件
IMAPInternet massage access protocol 互联网邮件访问协议类似于POP3,功能更多

在这里插入图片描述

4. 1 Telnet terminal network 终端网络

远程管理的主要协议(网络设备、服务器、数据库等)
常用终端工具有:SecureCRT、Putty、Xshell
Telnet 不安全,在抓包可以看到账号密码,现在多数使用SSH

telnet:(Telecommunication和Network的联合缩写)
是TCP/IP协议族中的一员,属于应用层协议,是Internet远程登录服务器的标准协议和主要方式。
telnet服务属于典型的客户机/服务器模型,当用telnet登录远程计算机的时候,实际上启动了两个程序:运行在本地计算机的telnet客户端程序;运行在登录的远程计算机上的telnet服务程序。
使用telnet服务的目的:(主要目的可以总结为使用远端计算机/服务器上的资源)

  1. 建立与远程主机的TCP连接。默认端口为23号端口,如果远程主机上的Telnet服务器软件一直在这个端口上侦听到连接请求,则这个连接便会建立起来。
  2. 以终端方式为用户提供人机界面。
  3. 将用户输入的信息通过telnet协议传送给远程主机。
  4. 接受远程主机发送来的信息,并经过适当的转换显示在用户计算机的屏幕上。

telnet远程登录的基本过程:

  1. 本地与远程主机建立连接。该过程实际上是建立一个TCP连接,用户必须知道远程主机的Ip地址或域名;
  2. 将本地终端上输入的用户名和口令及以后输入的任何命令或字符以NVT(Net Virtual Terminal)格式传送到远程主机。该过程实际上是从本地主机向远程主机发送一个IP数据包;
  3. 将远程主机输出的NVT格式的数据转化为本地所接受的格式送回本地终端,包括输入命令回显和命令执行结果;
  4. 最后,本地终端对远程主机进行撤消连接。该过程是撤销一个TCP连接。
4.2 SSH Secure Shell Protocol

由 IETF 网络工作小组(Network Working Group )制定;在进行数据传输之前,SSH先对联机数据包通过加密技术进行加密处理,加密后在进行数据传输。确保了传递的数据安全。

SSH是专为远程登录会话和其他网络服务提供的安全性协议。利用 SSH 协议可以有效的防止远程管理过程中的信息泄露问题,在当前的生产环境运维工作中,绝大多数企业普遍采用SSH协议服务来代替传统的不安全的远程联机服务软件,如telnet(23端口,非加密的)等。

在默认状态下,SSH服务主要提供两个服务功能:

n 一是提供类似telnet远程联机服务器的服务,即上面提到的SSH服务。

n 另一个是类似FTP服务的sftp-server,借助SSH协议来传输数据的.提供更安全的SFTP服务(vsftp,proftp)。

5. FTP和TFTP 文件传输协议
协议备注
FTPFile transfer protocol 文件传输协议,提供可靠的文件传输服务具有认证、权限等功能。
TFTPTrivial file transfer protocol 简单文件传输协议,提供不可靠的文件传输服务消耗资源较小,速度较快常用于网络设备的配置文件和系统文件传输。

ftp承载于tcp之上,提供可靠的面向连接数据流的传输服务,但它不提供文件存取授权,以及简单的认证机制(通过明文传输用户名和密码来实现认证)。ftp在进行文件传输时,客户机和服务器之间要建立两个连接:控制连接和数据连接。首先由ftp客户机发出传送请求,与服务器的21号端口建立控制连接,通过控制连接来协商数据连接。

tftp承载在udp之上,提供不可靠的数据流传输服务,同时也不提供用户认证机制以及根据用户权限提供对文件操作授权;它是通过发送包文,应答方式,加上超时重传方式来保证数据的正确传输。tftp相对于ftp的优点是提供简单的、开销不大的文件传输服务。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值