当前位置: 首页 > news >正文

计算机网络笔记-韩立刚-第六章-应用层

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

121.域名解析过程

DNS服务的作用:将域名解析为IP

域名


顶级域名 com edu net cn org gov …
二级域名 91xueit inhe
www.91xueit.com
mail.91xueit.com
ftp.91xueit.com
三级域名 dba
www.dba.91xueit.com
域名解析测试
ping www.91xueit.com
nslookup www.91xueit.com

122.安装和配置DNS服务

123.DHCP(Dynamic host configuration protocol)服务

动态主机分配

静态IP

服务器,教室里的台式机

动态IP

笔记本在不同教室,由DHCP服务器分配

DHCP客户端请求IP地址的过程

  • 客户端进行广播请求(此MAC地址对应的IP地址,与ARP协议作用相反)
  • 若干个DHCP服务器进行响应,并传回待选的IP地址
  • 客户端选择一个IP地址并返回DHCP服务器确认信息,其他DHCP服务器收回待选的IP地址
  • 被选择的DHCP服务器将DNS,网关,子网掩码等设置发回客户端
DHCP服务器的地址必须是静态地址
释放租约

ipconfig /release

跨网段租约分配

路由器接口处设置IP help adress,可使主机跨网段获取DHCP服务
在这里插入图片描述

125.FTP(File Transfer Protocol)协议主动模式

在这里插入图片描述
在这里插入图片描述

TCP控制连接 使用21端口

TCP数据连接

主动模式

FTP客户端告诉FTP服务器使用什么端口侦听,FTP服务器与客户端建立连接

被动模式

FTP服务器告诉客户端使用特定端口并打开,等待客户端与自己建立连接

FTP服务器的防火墙设置

FTP服务器端如果有防火墙,需要开21和20端口,使用主动模式进行数据连接
在这里插入图片描述
在这里插入图片描述

126. 安装和配置FTP服务器

127.远程终端协议TELNET

可以用telnet远程调试路由器,交换机,pc

128.远程桌面协议RDP(Remote Desktop Protocol)

在这里插入图片描述

本地硬盘映射到远程

129.HTTP(Hyper Text Transfer Protocol)超文本传输协议

在这里插入图片描述
HTTP定义了浏览器(万维网客户进程)怎样向万维网服务器请求万维网文档,以及服务器怎样把文档传送给浏览器。
从层次的角度看,HTTP是面向事务的(Transaction-oriented) 应用层
协议,它规定了在浏览器和服务器之间的请求和响应的格式与规则,是万维网上能够可靠地交换文件(包括文本、声音、图像等各种多媒体文件)的重要基础。

URL

URL是对可以从因特网上得到的资源的位置和访问方法的一种简洁表示。URL相当于一个文件名在网络范围的扩展。
在这里插入图片描述

  • URL的一般形式是: <协议>://<主机>:<端口>/<路径>。
  • 常见的<协议>有http、ftp 等;
  • < 主机>是存放资源的主机在因特网中的域名,也可以是IP地址;
  • <端口>和<路径>有时可以省略,端口一般默认80。
  • 在URL中不区分大小写。

HTTP操作过程

在浏览器和服务器之间的请求与响应的交互,必须遵循规定的格式和规则,这些格式和规则就是HTTP。
因此HTTP有两类报文:

  • 请求报文(从Web客户端向Web服务器发送服务请求)
  • 响应报文(从Web服务器对Web客户端请求的回答)。
    在这里插入图片描述
    用户单击鼠标后所发生的事件按顺序如下(以访问清华大学的网站为例):
1)浏览器分析链接指向页面的URL (http://www.tsinghua edu.cn /chn/index.htm)2)浏览器向DNS请求解析www.tsinghua.edu.cn的IP地址。
3)域名系统DNS解析出清华大学服务器的IP地址。
4)浏览器与该服务器建立TCP连接(默认端口号为80)5)浏览器发出HTTP请求: GET /chn/index.htm.
6)服务器通过HTTP响应把文件index.htm 发送给浏览器。
7) TCP连接释放。
8)浏览器解释文件index.htm,并将Web页显示给用户。

HTTP的特点

在这里插入图片描述

HTTP报文

在这里插入图片描述
HTTP是面向文本的(Text-Oriented), 因此报文中的每个字段都是一一些ASCII码串,并且每个字段的长度都是不确定的。有两类HTTP报文:
●请求报文: 从客户向服务器发送的请求报文
●响应报文: 从服务器到客户的回答

  • HTTP请求报文和响应报文都由三个部分组成。
    这两种报文格式的区别是开始行不同。
  • 开始行:用于区分是请求报文还是响应报文。
    在请求报文中的开始行称为请求行;
    响应报文中的开始行称为状态行;
    开始行的三个字段之间都以空格分隔,最后的“CR"和“LF”分别代表“回车”和“换行”。
    请求报文的“请求行”有三个内容:方法、请求资源的URL及HTTP的版本

HTTPS

HTTP(Hypertext Transfer Protocol)和HTTPS(Hypertext Transfer Protocol Secure)是用于在网络上传输数据的两种协议。

HTTP是一种用于在客户端和服务器之间传输超文本数据的协议。它使用明文传输数据,不提供加密和身份验证机制。HTTP在Web浏览器和服务器之间传输网页、图像、音频、视频和其他资源,并且是Web应用程序的基本通信协议。

HTTPS是在HTTP基础上添加了安全性的协议。它使用TLS(Transport Layer Security)或其前身SSL(Secure Sockets Layer)来加密HTTP通信,确保数据在传输过程中的机密性和完整性。HTTPS在客户端和服务器之间建立加密的通信通道,防止数据被窃听、篡改和伪装。

主要区别:

  1. 安全性:HTTP不提供数据加密和身份验证,数据在传输过程中可能被窃听或篡改。而HTTPS使用加密技术,确保数据的机密性和完整性,防止中间人攻击和数据泄露。

  2. 默认端口:HTTP使用端口号80进行通信,而HTTPS使用端口号443。

  3. 证书:使用HTTPS的网站需要获得数字证书,由受信任的证书颁发机构(CA)签发。证书用于验证网站的身份,并确保通信的安全性。HTTP不需要使用证书。

  4. URL前缀:在URL中,HTTP使用"http://“作为前缀,而HTTPS使用"https://”。

综上所述,HTTPS是HTTP的安全版本,通过使用加密和身份验证机制,保护了数据在传输过程中的安全性。对于处理敏感信息和保护用户隐私的网站,使用HTTPS是非常重要的。

130.Web代理服务器

可以节省内放访问Internet的带宽

可以通过Web代理绕过防火墙

131.收发电子邮件协议

SMTP(Simple Mail Transfer Protocol)

PoP3(Post Office Protocol 3)

IMAP(Internet Message Access Protocol)

邮件发送(中继)

发件到邮局(实名),再到目标邮局(匿名),均使用SMTP协议

邮件接收

使用PoP3或IMAP协议(实名)
在这里插入图片描述

132-133.邮件服务器实验

相关文章:

  • Go语言 相关概念深入分析
  • 2-高可用-负载均衡、反向代理
  • 系列十一(面试)、如何查看JVM的参数?
  • pycharm git 版本回退
  • 先进制造身份治理现状洞察:从手动运维迈向自动化身份治理时代
  • 智能优化算法应用:基于卷尾猴算法3D无线传感器网络(WSN)覆盖优化 - 附代码
  • NPM介绍与使用
  • 导入conda虚拟环境的lib
  • 166. 数独(DFS之剪枝与优化:位运算优化,优化搜索顺序,.可行性剪枝)
  • GLTF/GLB模型在线预览、编辑、动画查看以及材质修改
  • 4.3 C++对象模型和this指针
  • Linux: 常见工具、命令使用集锦
  • C语言—每日选择题—Day54
  • 机器视觉兄弟们,出身寒微,不是耻辱,能屈能伸,方为丈夫
  • 分布式编译distcc
  • 【140天】尚学堂高淇Java300集视频精华笔记(86-87)
  • HTTP那些事
  • in typeof instanceof ===这些运算符有什么作用
  • java第三方包学习之lombok
  • linux安装openssl、swoole等扩展的具体步骤
  • Nacos系列:Nacos的Java SDK使用
  • orm2 中文文档 3.1 模型属性
  • PHP 7 修改了什么呢 -- 2
  • Spring Cloud Feign的两种使用姿势
  • Vue 重置组件到初始状态
  • 动手做个聊天室,前端工程师百无聊赖的人生
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 数据结构java版之冒泡排序及优化
  • 通过npm或yarn自动生成vue组件
  • 一天一个设计模式之JS实现——适配器模式
  • 在electron中实现跨域请求,无需更改服务器端设置
  • nb
  • No resource identifier found for attribute,RxJava之zip操作符
  • raise 与 raise ... from 的区别
  • 湖北分布式智能数据采集方法有哪些?
  • ​LeetCode解法汇总2670. 找出不同元素数目差数组
  • ​软考-高级-系统架构设计师教程(清华第2版)【第1章-绪论-思维导图】​
  • !!【OpenCV学习】计算两幅图像的重叠区域
  • (27)4.8 习题课
  • (SpringBoot)第二章:Spring创建和使用
  • (zhuan) 一些RL的文献(及笔记)
  • (附源码)计算机毕业设计SSM教师教学质量评价系统
  • (含react-draggable库以及相关BUG如何解决)固定在左上方某盒子内(如按钮)添加可拖动功能,使用react hook语法实现
  • (转)EOS中账户、钱包和密钥的关系
  • (转)h264中avc和flv数据的解析
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • .Net CoreRabbitMQ消息存储可靠机制
  • .NET delegate 委托 、 Event 事件
  • .NET MVC、 WebAPI、 WebService【ws】、NVVM、WCF、Remoting
  • .net MySql
  • .xml 下拉列表_RecyclerView嵌套recyclerview实现二级下拉列表,包含自定义IOS对话框...
  • /etc/fstab 只读无法修改的解决办法
  • @require_PUTNameError: name ‘require_PUT‘ is not defined 解决方法
  • @Valid和@NotNull字段校验使用