网络原理(7)——以太网数据帧和DNS协议(数据链路层和应用层)

目录

一、以太网数据帧(数据链路层)

二、DNS协议(域名解析系统,应用层协议)


一、以太网数据帧(数据链路层)

        以太网横跨了数据链路层和物理层,这里只做简单介绍,因为普通程序员用不到这一块,除非是做交换机开发的;下图是数据帧的格式。

目的地址和源地址:和IP协议上表达意思差不多,但这里是mac地址。

数据:以太网数据帧的载荷最小46字节,最大1500字节;这里的大小限制是因为受到了物理设备的特性46字节是因为ARP1500字节是因为硬件的限制(和以太网的网口 / 网线这些物理设备有关系),称为“MTU”在IP数据报拆包组包的过程中,原因往往不是因为自身大小超过64KB了,而是因为MTU的原因。(数据链路层不仅仅只有以太网这种协议,还有许多其他的协议,不同的协议,MTU也会有所差异)。

类型:标识了载荷数据的含义。有以下三种(上图的三种):

        IP数据报:如果载荷类型是这个,此时以太网数据帧大概率是能够携带业务数据的报文(大概率携带的是业务数据,也可能携带的是syn这种)。

ARP和RARP可以认为这两个横跨了 网络层 和 数据链路层 的协议。

        ARP:效果是让路由器 / 交换机 建立一个内部的结构,可以通过映射,找到mac的地址,映射关系:IP -> mac(类似哈希表这种)。

        RARP:效果也是让路由器 / 交换机 建立一个内部的结构,也是映射,不过找到的是IP地址,映射关系:mac -> IP

        前面通过路由表,可以拿着IP查询下一步走哪个网络接口(通常指路由器的 WAN / LAN口);但也还需要根据当前环境,获取当前对应要转发的mac地址(需要知道通向的设备具体的mac地址)。

        数据链路层这里,引用的地址协议和IP协议不一样,它有它自己的独立的一套地址体系:mac地址(或物理地址)mac地址 和 IP地址是独立的两条地址体系

        其实这两个地址协议是可以合并在一起的,但是因为历史的原因,这两个地址协议是两伙人搞出来的,而且既然搞出来了,就拿出来用了。

        之前说的IP协议 侧重于 全局的转发,从起点到终点,这整个转发过程,是通过IP协议完成的;而mac协议 侧重于 局部的转发,两个相邻的设备之间的转发(一个电脑连着路由器,电脑和路由器就是相邻的关系)。

        因为mac地址是6个字节的地址,所以可以表示的地址的个数比IP地址多很多,大概是:42亿9000万 * 65535,所以mac地址还是很充足够用的,这里用的就是静态地址硬件设备网卡,在出厂的时候就已经把mac地址给写死,所以每个电脑设备上的mac地址都是唯一的网卡和mac地址也是一对一绑定的;基于mac地址,有些程序,可以通过mac地址来作为你机器的身份表示,例如外挂,只有在你电脑上插u盘才能用,其他电脑插上就不能用,原因就是制作外挂者这里的服务器,用户这边的客户端,服务器利用mac地址就知道哪些人是从自己这买的外挂,然后允许他用外挂(声明:制作外挂、售卖外挂均为违法行为,请遵纪守法,做好合法公民)

        mac地址是用16进制方式表示的,字节之间则是用 “-” 或 “:” 来分隔的,如图是我电脑上的mac地址(Windows系统的物理地址就是mac地址):

        这里的mac地址和IP地址也有其他方面的不同,如图是以太网数据帧:

        源 / 目的mac地址类似一个小阶段的目标,而源 / 目的IP是类似终极目标这种。举个例子:

我要去陕西,途中我要经过:广东 -> 湖南 -> 湖北 -> 陕西。

        这里有不同的阶段,对应不同的mac地址,但IP地址一直都是相同的,如下:

        广东 -> 湖南        源IP:广东,目的IP:陕西        源mac:广东,目的mac:湖南

        湖南 -> 湖北        源IP:广东,目的IP:陕西        源mac:湖南,目的mac:湖北

        湖北 -> 陕西        源IP:广东,目的IP:陕西        源mac:湖北,目的mac:陕西

        mac地址和IP地址的不同如上(还有其他的不同),mac地址这里侧重的是局部(相邻)的转发(两个相邻的设备)IP地址这里侧重的是全局的转发,从起到到终点,这转发的整一个过程。        


二、DNS协议(域名解析系统,应用层协议)

        如果使用IP地址来描述设备的地址,又长又难记,如果访问某个服务器,需要记住它的IP地址的话,就很难记住,也可能记混的现象;所以,有更好的方法:使用域名(word),通过域名,把域名转换成对应的IP地址,就好记很多,也不容易错。

        DNS协议就是域名解析的一个协议,在上古时期,那时候是通过host文件把域名和IP一一对应起来,每一行都有域名和IP每次访问某个域名,就会通过这个域名,在host文件中查找对应的IP,从而找到这个访问设备在网络中位置

        但是随着互联网发展的越来越快,域名和服务器都越来越多,此时维护的成本就很大,所以大佬们就干脆 搭建一个服务器,提供域名解析的功能(之前的host内容也放到服务器上了),你的设备想要访问某个域名,就会先到域名解析服务器(DNS服务器)上查一下,找到对应的IP,拿着这个IP访问即可。

        但是,全世界那么多人,如果都访问这个DNS服务器,那不会很容易挂了,它能抗住这么多请求吗?显然是不能的,其实DNS服务器并非只有一份,而是有很多份。如下解释:

        最开始的DNS服务器称为根域名服务器这里的内容最全然后各个国家的运营商,就根据这个根域名服务器的内容,搭建出镜像服务器网民上网时,一般就是访问你附近的运营商搭建的镜像DNS服务器,而镜像服务器也会定期从根DNS服务器中同步数据

        域名还分为一级,二级,三级.....,这样就可以控制每个服务器管理的数据都差不多,如图:

        上图的com是一级域名,sogou是二级域名,www是三级域名其中根域名服务器里的内容非常重要,如果把其中一部分内容删除掉,就可能会导致一个地区 / 一整个国家网络瘫痪,无法上网。而根域名服务器一共有13个,大部分都是美国人维护的,所以,这也是我国迫切要升级IPv6的原因。

        有时候会出现一种情况,QQ、微信能等的上去,但是网页却打不开,可能就是你附近的运营商的DNS服务器挂了,这时候我们可以换个DNS服务器地址,如:8.8.8.8,这是谷歌搞得一套DNS镜像服务器,换完后,可能就可以打开网页了。


都看到这了,点个赞再走吧,谢谢谢谢谢

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/489667.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

canvas画带透明度的直线和涂鸦

提示&#xff1a;canvas画线 文章目录 前言一、带透明度的直线和涂鸦总结 前言 一、带透明度的直线和涂鸦 test.html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content…

#GIT|Git Flow#Gitflow工作流程

Gitflow是一种使用功能分支和多个主分支的Git分支模型&#xff0c;它适用于有预定发布周期的项目&#xff0c;也适用于DevOps最佳实践中的持续交付。这个工作流程不会添加任何新的概念或命令&#xff0c;而是为不同的分支分配了非常具体的角色&#xff0c;并定义了它们应该如何…

利用Python和IP技术实现智能旅游情报系统

文章目录 引言一、系统架构设计1. 数据采集模块2. 数据处理模块3. 用户界面模块 二、数据获取技术应用三、系统功能展示四、亮数据采集工具介绍五、总结六、号外 引言 随着旅游行业的不断发展&#xff0c;人们对旅游信息的需求也越来越大。为了帮助旅行者更好地规划行程&#…

PTA-练习8

目录 实验5-3 使用函数求Fibonacci数 实验5-4 输出每个月的天数 实验5-9 使用函数求余弦函数的近似值 实验5-11 空心的数字金字塔 实验6-6 使用函数验证哥德巴赫猜想 实验6-7 使用函数输出一个整数的逆序数 实验6-8 使用函数输出指定范围内的完数 实验8-1-7 数组循环右…

javascript三要素核验身份证号、姓名和人像是否匹配的身份证实名认证接口

在开发的过程中&#xff0c;总会用到各种各样的API接口来实现各种各样的功能。互联网信息时代&#xff0c;为确保注册用户身份信息的正确性&#xff0c;无论是手机端还是电脑端应用都需要进行实名认证来防止虚假身份的使用&#xff0c;维护公共利益和个人权益的安全&#xff0c…

云原生安全

云安全 https://wiki.teamssix.com 云服务安全 云服务&#xff0c;顾名思义就是云上的服务&#xff0c;简单的来说就是在云厂商&#xff08;例如 AWS、阿里云&#xff09;那里买的服务 云服务 S3 对象存储Simple Storage Service&#xff0c;简单的说就是一个类似网盘的东…

消息预知在线客服系统php网站源码

安装教程 服务器环境&#xff1a; 宝塔面板 &#xff0c;Nginx1.16-1.18&#xff0c;7.2.23<php<7.3&#xff08;因为升级了客服系统&#xff09;&#xff0c;Mysql5.6- Mysql5.7 网站运行目录为./public/ 访问网址http://你的域名/install.php进入安装程序即可 源码免…

制作小程序需要多少钱?成本分析与效益预测

在当今数字化时代&#xff0c;微信小程序已成为企业和个人拓展业务的重要工具。然而&#xff0c;许多人在考虑进入这一领域时&#xff0c;都会面临一个关键问题&#xff1a;制作一个小程序需要多少钱&#xff1f;下面和你一起探讨小程序开发的成本因素&#xff0c;帮助你更好地…

LGBM算法 原理

简介 GBDT (Gradient Boosting Decision Tree) 是机器学习中一个长盛不衰的模型&#xff0c;其主要思想是利用弱分类器&#xff08;决策树&#xff09;迭代训练以得到最优模型&#xff0c;该模型具有训练效果好、不易过拟合等优点。GBDT不仅在工业界应用广泛&#xff0c;通常被…

机器学习模型及其使用方法——《机器学习图解》

本书教你两件事——机器学习模型及其使用方法 机器学习模型有不同的类型&#xff0c;有些返回确定性的答案&#xff0c;例如是或否&#xff0c;而另一些返回概率性的答案。有些以问题的形式呈现&#xff1b;其他则使用假设性表达。这些类型的一个共同点是它们都返回一个答案或…

【Linux】文件系统

文章目录 1. 理解文件系统2. inode3. 软硬链接3.1 硬链接3.2 软链接3.3 软硬链接的原理 1. 理解文件系统 我们使用 ls -l 的时候看到的除了看到文件名&#xff0c;还看到了文件元数据。 [rootlocalhost linux]# ls -l 总用量 12 -rwxr-xr-x. 1 root root 7438 "9月 13 1…

第十三届蓝桥杯省赛真题 Java 研究生 组【原卷】

文章目录 发现宝藏【考生须知】试题 A: 排列字母试题 B: 灭鼠先锋试题 C: 质因数个数试题 D: 数位排序试题 E: 蜂巢试题 F : \mathrm{F}: F: 爬树的甲壳虫试题 G: 重新排序试题 H \mathrm{H} H : 技能升级试题 I: 最优清零方案试题 J : \mathrm{J}: J: 推导部分和 发现宝藏 …

Mysql数据库函数【Mysql】

Mysql数据库函数【Mysql】 前言版权Mysql数据库函数常用函数排序与分页排序分页 单行函数2.数值函数2.1基本函数2.2角度与弧度2.3三角函数2.4指数与对数函数2.5进制间的转换 3.字符串函数4.日期和时间函数4.1获取日期、时间4.2日期与时间戳的转换4.3获取月份、星期、星期数、天…

在视频号上如何开店?个人玩家可以来做吗?过来人经验分享!

大家好&#xff0c;我是电商小布。 随着视频号小店这个项目的发展&#xff0c;整个体系越来越成熟&#xff0c;数据也在逐渐上升。 就去年来看&#xff0c;视频号带货的GMV值已经超过了3000亿&#xff0c;整个订单的数量增长了244%。 那么作为一个电商新手&#xff0c;想要在…

代码随想录算法训练营第三十天| 回溯算法总结

回溯算法核心&#xff1a;for循环横向遍历&#xff0c;递归纵向遍历&#xff0c;回溯不断调整结果集。对于startIndex&#xff08;startIndex来控制for循环的起始位置&#xff09;的使用&#xff1a; 如果是一个集合来求组合的话&#xff0c;就需要startIndex&#xff0c;例如…

计算机领域热门技术词汇

文章目录 计算机领域热门技术词汇1、机器学习 machine learning2、神经网络 neural network3、深度学习 deep learning4、自然语言处理 natural language processing5、计算机视觉 computer vision6、大数据 big data7、数据挖掘 data mining&#xff08;DM&#xff09;8、云计…

图像变换(python)

前言 这个Python没学过&#xff0c;写的是真的不方便&#xff0c;有很多问题还没解决&#xff0c;暂时不想写了&#xff0c;感兴趣的同学可以完善一下。设计的思路就是摆几个控件然后将对应的函数实现&#xff0c;这个Python的坐标放置以及控件的大小我没弄懂&#xff0c;算出…

Prometheus(六):Blackbox监控安装配置

目录 1 Blackbox Exporter安装配置1.1 Blackbox Exporter简介1.2 安装1、安装-使用源码包安装下载安装blackbox.yml文件配置快速启动文件 2、安装-使用docker 1.3 Prometheus配置1、http监控2、ping探测-ip3、https probe-DNS解析4、metrics配置5、TCP监控-探测端口 总结 1 Bla…

词曲创作只需几秒,「AI作曲家」Suno引爆音乐圈,第一手体验和攻略来了

ChatGPT狂飙160天&#xff0c;世界已经不是之前的样子。 新建了人工智能中文站https://ai.weoknow.com 每天给大家更新可用的国内可用chatGPT资源 发布在https://it.weoknow.com 更多资源欢迎关注 有了 Suno 这个「作曲助手」&#xff0c;人人都可以创建自己想听的歌曲。 自…

【在FastAPI应用中嵌入Gradio界面的实现方法】如何在有一个Fastapi应用的基础上,新加一个gradio程序

官网教程&#xff1a;https://www.gradio.app/guides/sharing-your-app#mounting-within-another-fast-api-app 实践&#xff1a; import gradio as gr from fastapi import FastAPI from starlette.middleware.cors import CORSMiddlewareCUSTOM_PATH "/gradio"a…