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

以太网协议和DNS

目录

🐕今日良言:跨过困难,去迎接更好的自己.

🐳一、以太网桢格式

🐳二、DNS


🐕今日良言:跨过困难,去迎接更好的自己.

🐳一、以太网桢格式

数据链路层考虑的是相邻两个节点(通过网线/光纤/无线直接相连的两个设备)之间的传输

数据链路层的典型协议也很多,其中最知名的就是"以太网".

以太网协议规定了数据链路层,也规定了物理层的内容.

我们使用的网线就叫做"以太网线"(遵守以太网协议的网线)

接下来,先来看一下以太网桢的格式:

 

以太网数据帧 = 桢头+载荷+桢尾

桢头:包括目的地址 源地址 类型

这里的不是使用IP表示地址了,而是使用了一个mac地址(物理地址),这个是和IP地址完全独立的另外一套地质体系.

mac地址:6个字节(比IPv4地址要大很多)当前每个设备都会有一个唯一的mac地址.

这个mac地址不是动态分配的,而是网卡出厂的时候就会被设置好的.

类型:帧协议类型字段有三种值,分别对应IPARPRARP

 IP:普通的以太网数据帧的载荷部分就是一个完整的IP数据报.

ARP:载荷部分是一个ARP报文

        这是另外的一个协议:ARP协议,通过这个协议,就可以让路由器/转发机可以认识局域网里面的其它设备.

        ARP不是一个单纯的数据链路层的协议,而是一个介于数据链路层和网络层之间的协议;
       ARP协议建立了主机 IP地址 和 MAC地址 的映射关系:

       通过ARP协议会在交换机/路由器 里面建立一个表,这个表相当于一个hash表,能够建立出IP和mac之间的映射关系.

RARP:载荷部分是一个RARP报文

载荷:一个完整的IP数据报.

既然有了IP地址,为什么还要有mac地址呢?

假设只有一套地址体系(比如IP地址和以太网都使用IP地址/mac地址)完全可以.

但是,在最初大佬们研发初代的协议栈的时候,研发网络层协议的大佬和研发数据链路层协议的大佬是两伙人,于是就各自研发除了一套地址体系.所以当前就演化成了两套地址体系相互配合的现状.

IP用来描述整个传输过程中的起点和终点.

mac用来描述两个相邻节点(起点和终点).

数据链路层考虑的是两个相邻节点之间怎么走.

接下来介绍一下MTU:

MTU是一个数据链路层的数据帧能够承载数据的最大长度(载荷的长度)

 载荷具体多长,和使用的物理介质有很大关系,当然也和数据链路层使用的协议有很大关系.

比如以太网协议 MTU 1500字节.

 正是这个MTU引起了IP协议来进行分包组包,IP的分包组包通常不是根据这个IP最大长度64Kb来分的, 大概率情况下,数据链路层的MTU都比64kb要小.

 

🐳二、DNS

这里补充一个应用层的协议:DNS  域名解析系统

这个协议也是当前互联网的基石.

什么是域名呢?

实际上就是网址.比如:www.baidu.com

要访问网络上的服务器需要使用的是IP地址,但是IP地址不好记,于是使用一些简单的单词构成字符串来表示这个地址.

每个域名都对应了一个/N个 IP地址.

所以说,就需要将域名和IP地址给对应上.

1).最原始的做法:使用hosts文件.

像hash表一样,建立了IP和域名的映射关系.

早期的时候,互联网上的服务器寥寥无几,此时每个用户手动维护自己的hosts文件够用了,

但是,后来互联网蓬勃发展,现在的网站成千上万,每天都有新的网站诞生,也有旧的网站消亡,此时再使用手工维护已经不靠谱了.

于是,大佬们搞了个DNS服务器.

2).DNS服务器

当用户想访问某个域名的时候,就自动请求一下DNS服务器,DNS服务器就进行查询,把得到的结果返回给用户(这个返回的结果就是一个具体的IP地址).

如果电脑的DNS服务器的配置不对,或者DNS服务器挂了,此时就会出现一种情况:

QQ能用,但是网页会打不开...

此时,就可以进行配置:

 

 注意:此处是自动获取的----->从路由器获取.

从路由器上获取到DNS以后,就可以对域名进行正确解析了,如果这里挂了,就会出现上述情况(QQ能用,但是网页打不开)


当前要求网站的域名不能重复(保证唯一).那么全世界这么多网站,如何保证唯一呢?

针对域名进行分级.

一级域名  二级域名   三级域名

 域名分级了,DNS服务器也分级了.

有一级域名的DNS服务器,也有二级、三级的..

域名只要有一级不重复即可.

如果某个用户想要注册一个网站,就需要申请一个域名,然后想要将域名和服务器的IP关联起来就需要将用户的数据写到DNS服务器里.

但是全世界有千千万万个DNS服务器,这些服务器的数据都来自于:根域名服务器.

除了根域名服务器以外,其他的都是"镜像服务器",数据要从根域名服务器这里同步.

这里再补充一个网络层的协议:DHCP协议

这个协议是组网的时候,规定的一个自动分配IP地址的协议.

组网的时候,局域网里面的每个设备的IP地址都是可以手动配置的,但是手动配置太过于麻烦,于是大佬们就制定了这个DHCP协议,用来自动分配IP地址.

电脑上设置自动获取IP地址,此时就是基于DHCP,让路由器来给电脑分配个IP地址. 

相关文章:

以太网协议和DNS

目录 🐕今日良言:跨过困难,去迎接更好的自己. 🐳一、以太网桢格式 🐳二、DNS 🐕今日良言:跨过困难,去迎接更好的自己. 🐳一、以太网桢格式 数据链路层考虑的是相邻两个节点(通过网线/光纤/无线直接相连的两个设备…...

【设计模式】原型模式与建造者模式

原型模式 原型模式是指通过原型实例指定创建对象的种类,然后通过拷贝的方式创建新的对象。属于创建型模式 原型模式的核心在于拷贝原型对象,主要用于对对象的复制。当你需要通过一大段get/set方法去构建对象的时候,就可以考虑使用原型模式了…...

QT之Http请求

今天我们介绍一下QT的http请求,这里有post和get两种方式 一、post请求方式:参数分为网址和具体请求值两个部分,有时候还需要设置头信息,看具体情况定 1 void MainWindow::sendPostRequest()2 {3 QNetworkAccessManager *m_pH…...

何谓dB , dB怎么理解?

dB 是什么单位 ?愈低愈好吗?对于声频 ( 声学及电子声学 ) 方面的单位,它是以分贝(decibel ,dB ) 来做结果的。斯多里一生专注于科学,1876 发明电话,我们都知道贝尔发明了电话,然而重要的是,他发现我们人类耳朵对声音…...

【数据聚类|深度聚类】Unsupervised Deep Embedding for Clustering Analysis(DEC)论文研读

DEC算法由两部分组成 第一部分会预训练一个SDAE模型;第二部分选取SDAE模型中的Encoder部分,加入聚类层,然后最小化KL散度进行训练聚类Absratct 提出了一种利用深度神经网络同时进行表征学习和聚类分配的方法,称之为深度嵌入聚类。该方法学习从数据空间到低纬空间的映射,并…...

Nuxt.js项目开发过程遇到的问题以及对Nuxt.js的学习与总结

文章目录📋前言💻Nuxtjs3快速了解🎯nuxtjs是什么?官网是这样介绍它的。🎯关于nuxtjs的SSR开发🧩SSR应用场景🧩nuxtjs的特性💻nuxtjs的初始目录结构🎯关于各个目录的解释&…...

JavaSE:异常机制

异常概念异常发生的原因用户输入非法数据要打开的文件不存在网络中断/JVM内存溢出(JVM是JRE的一部分。它是一个虚构出来的计算机)除0、非法参数等三种类型的异常,用以理解异常检查性异常【otherException】:程序员无法预见的&…...

Go mockito 使用说明 (github/mockey)

GitHub - bytedance/mockey: a simple and easy-to-use golang mock library Go mockito 是什么? mockey是一个简单易用的golang mock库,可以快速方便的mock函数和变量。目前广泛应用于字节跳动服务的单元测试编写。底层是monkey patch,通过在运行时重…...

Spring Boot+Vue前后端分离项目练习01之网盘项目的搭建

1.前期设计 一般看来,网盘系统主要实体包括:用户、存储信息、用户文件、文件、回收文件等基本功能点。 各实体对应的表结构如下所示: 表名:user(用户表) 字段名属性说明userIdbigint主键usernamevarcha…...

超详细MySQL(免安装版)安装与配置

一、MySQL下载 首先打开MySQL官网,官网首页地址为 MySQL官网首页地址 进入官网后如下图所示,点击DOWNLOADS进入下载页面 下滑页面找到MySQL Community(GPL)Downloads>>并点击 接下来点击MySQL Community Server 若想要安…...

STM32F1,F4,L1系列禁止JTAG和SW引脚方法

STM32F1系列 程序中在使用到JTAG、SWD的某个IO 时,需要禁用掉相关调试方法后,再配置相应的IO方式。在需要相应的接口配置前使用这些代码。 对于F1系列,调用函数进行专门的禁止。 标准库配置方式: RCC_APB2PeriphClockCmd(RCC_A…...

NVIDIA CUDA初级教程视频学习笔记1

周斌老师 课程链接: 目录第一课内容生态环境第一课 CPU体系架构的概述什么是CPU指令存储器架构CPU内部的并行性第一课 预修课程: Cuda c programming guide 参考内容 1,2,3查找一下。 内容 CPU体系架构概述 并行程序设计概述 CUDA开发环境…...

CEC2005:星雀优化算法(Nutcracker optimizer algorithm,NOA)求解CEC2005(提供MATLAB代码)

一、星雀优化算法NOA 星雀优化算法(Nutcracker optimizer algorithm,NOA)由Mohamed Abdel-Basset等人于2023年提出,该算法模拟星雀的两种行为,即:在夏秋季节收集并储存食物,在春冬季节搜索食物的存储位置。 星鸦单独或成对活动&…...

工作实战之密码防重放攻击

目录 前言 一、登录认证密码加密 二、bcrypt加密密码不一样,匹配原理 1.程序运行现象 2.原理解释 三、密码防重放 总结 前言 密码重放攻击:请求被攻击者获取,并重新发送给认证服务器,从而达到认证通过的目的 一、登录认证密…...

如何编写测试用例?

编写测试用例流程 1、确定测试目标:首先,需要明确测试目标,即测试人员需要测试什么,这有助于测试人员了解需要测试哪些方面,以及如何测试。 2、识别测试场景:在确定测试目标后,测试人员需要识…...

5.排序算法之二:选择排序

选择排序(select sort)在无序列表中,把无序列表分成有序区(刚开始有序区元素个数为0)和无序区(刚开始无序区元素个数为n),循环n-1趟,每一趟找到最小或最大的那个元素&…...

Ubuntu18系统安装:node及node版本管理工具nvm部署前端项目

注意在安装之前先安装好Git 如何在Ubuntu 上安装Git与入门教程_ubuntu安装git_飞鹰雪菲的博客-CSDN博客 1、把nvm远程镜像克隆到指定目录 git clone https://gitee.com/mirrors/nvm 1.1在终端指定的文件夹下 drciZwz91oq31508figapkas0Z:~/qiang/tools$ git clone https://…...

统计学 假设检验

文章目录假设检验假设检验的基本原理提出假设作出决策表述决策结果一个总体参数的检验总体均值的检验总体比例的检验总体方差的检验两个总体参数的检验两个总体均值之差的检验两个总体比例之差的检验两个总体方差比的检验总体分布的检验正态性检验的图示法Shapiro-Wilk 和 K-S …...

【C++】哈希

哈希一、unordered系列关联式容器二、哈希原理2.1 哈希映射2.2 哈希冲突2.2.1 闭散列—开放地址法2.2.2 代码实现2.2.3 开散列—拉链法2.2.4 代码实现三、哈希封装unordered_map/unordered_set3.1 基本框架3.2 迭代器实现3.2.3 operator*和operator->和operator!3.2.4 opera…...

「TCG 规范解读」PC 平台相关规范(3)

可信计算组织(Ttrusted Computing Group,TCG)是一个非盈利的工业标准组织,它的宗旨是加强在相异计算机平台上的计算环境的安全性。TCG于2003年春成立,并采纳了由可信计算平台联盟(the Trusted Computing Platform Alli…...

这篇教你搞定Android内存优化分析总结

一、内存优化概念1.1 为什么要做内存优化?内存优化一直是一个很重要但却缺乏关注的点,内存作为程序运行最重要的资源之一,需要运行过程中做到合理的资源分配与回收,不合理的内存占用轻则使得用户应用程序运行卡顿、ANR、黑屏&…...

概率论与数理统计期末小题狂练 11-12两套,12-13-1

11-12第一学期A1 略。2 X服从正态分布N(0,1),X^2服从卡方分布。又考查了卡方分布均值和方差公式。一开始如果对本题无从下手,大概是没看出来是什么分布。3 第二小空本身也可以作为一个结论。4 考查切比雪夫不等式&…...

golang对字符串的处理操作 如何正确理解 rune byte和string

fmt.Printf相关参数介绍 先来看代码的演示 package mainimport ("fmt""unicode/utf8" )func main() {s:"我爱中国人haha!"fmt.Println(len(s))//20个字节 一个中文三个字节 1541fmt.Print("\n echo byte \n")for k,v: range []byte(…...

软件项目管理简答题复习(1)

1.项目:创造唯一的产品,唯一的服务临时性的努力 2.项目特征:不可见性,复杂性,一致性,变更性,特殊性 3.项目和日常活动的区别? 项目具有特殊性,负责人是项目经理&#…...

云Windows Server 2022 Datacenter 安装MySQL8解压缩版 mysql-8.0.32-winx64 230301记录

MySQL Community Downloads MySQL社区版压缩包下载地址 https://dev.mysql.com/downloads/mysql/ 解压到了C盘 没打算设置环境变量 右键点击开始 或 winx 以管理员身份打开 PowerShell 进入到安装目录下的 bin 目录 可以输入cd 后, 拖动 bin 文件夹到控制台&…...

如何使用BeaconEye监控CobaltStrike的Beacon

关于BeaconEye BeaconEye是一款针对CobaltStrike的安全工具,该工具可以扫描正在运行的主动CobaltStrike Beacon。当BeaconEye扫描到了正在运行Beacon的进程之后,BeaconEye将会监控每一个进程以查看C2活动。 工作机制 BeaconEye将会扫描活动进程或Mini…...

STM32开发(17)----CubeMX配置CRC

CubeMX配置CRC前言一、什么是CRC?二、实验过程1.STM32CubeMX配置2.代码实现重载printf3.实验结果总结前言 本章介绍使用STM32CubeMX对CRC进行配置的方法,CRC的目的是保证数据的完整性,所有的STM32芯片都内置了一个硬件的CRC计算模块&#xf…...

【MySQL】基础操作:登录、访问、退出和卸载

一、MySQL简介 MySQL数据库最初是由瑞典MySQL AB公司开发,2008年1月16号被Sun公司收购。2009年,SUN又被Oracle收购。MySQL是目前IT行业最流行的开放源代码的数据库管理系统,同时它也是一个支持多线程、高并发、多用户的关系型数据库管理系统。…...

【算法经典题集】递推(持续更新~~~)

😽PREFACE🎁欢迎各位→点赞👍 收藏⭐ 评论📝📢系列专栏:算法经典题集🔊本专栏涉及到的知识点或者题目是算法专栏的补充与应用💪种一棵树最好是十年前其次是现在递推简单的斐波那契…...

mysql兼容性验证

MySQL是一个关系型数据库管理系统。 一、安装启动 安装mysql相关软件包 yum install mysql-server 启动mysql服务 systemctl start mysqld systemctl status mysqld mysql数据库启动失败问题汇总&#xff1a; <问题1>、start mysqld显示失败&#xff0c;如下所示&…...

馆陶企业做网站推广/关键词排名优化易下拉技巧

1、启动一个WEB项目的时候&#xff0c;WEB容器会去读取它的配置文件web.xml&#xff0c;读取<listener>和<context-param>两个结点。 2、紧急着&#xff0c;容创建一个ServletContext&#xff08;servlet上下文&#xff09;&#xff0c;这个web项目的所有部分都将…...

网站建设培训课程/西安百度竞价托管公司

需求&#xff1a;要创建一个半年生成一次的报表给领导看。现有的做法是在数据库中提取出数据后在Excel中通过filter筛选出最近半年的数据&#xff0c;没错&#xff0c;纯手动操作&#xff08;弊端有二&#xff1a;容易出错&#xff0c;效率低&#xff09;。如何自动化呢&#x…...

建设网站群的好处/aso平台

Javascript语言的执行环境是”单线程”&#xff08;single thread&#xff09;。 所谓”单线程”&#xff0c;就是指一次只能完成一件任务。如果有多个任务&#xff0c;就必须排队&#xff0c;前面一个任务完成&#xff0c;再执行后面一个任务&#xff0c;以此类推。 这种模式…...

雄安做网站的公司/怎样推广自己的网站

今天推出了一款游戏叫《AA》。在最近IOS只是弹出一个游戏。非常心脏的孩子&#xff0c;但有很多乐趣。今天&#xff0c;我们谈论它tangide&#xff08;GameBuilderV2.0&#xff09;用控件UICanvas实现它。 在线执行&#xff1a;http://www.tangide.com/apprun.html?appidprevi…...

修改wordpress后台文字/泰州seo网络公司

urllib 模块提供的 urlretrieve() 函数。urlretrieve() 方法直接将远程数据下载到本地。 >>> help(urllib.urlretrieve) Help on function urlretrieve in module urllib: urlretrieve(url, filenameNone, reporthookNone, dataNone) 参数 finename 指定了保存本地路径…...

东阳网站建设报价/长清区seo网络优化软件

为什么80%的码农都做不了架构师&#xff1f;>>> 一.安装sendmail跟mail 1.安装sendmail yum -y install sendmail* 2.安装mail yum -y install mailx 先start然后再restart service sendmail restart Shutting down sm-client: …...