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

网络2--MAC地址,IP地址的理解

引入:

每一张主机都会有一张网卡,每一张网卡都有一个48bit位的序列号

8ded3a7d141b4c4bbe2264850d3821a4.jpeg

当我们的热点被连上,你查看时,就会出现MAC地址,IP地址

那么他们两个是什么呢???

MAC地址

在同一个局域网中,有很多个主机,两个主机数据相互传输时,可以直接传输,凭的就是每个主机MAC地址不同,当报文到达链路层时,会凭借目的地址(接收的主机的MAC地址)找到相应的主机。

cc5009ac94dc48fc8770e07ea24ea581.png

在同一个局域网中,会有很多个主机,将数据发到局域网之前:

bcddedafa24a4545847dfb3e68ba72ae.png

发出之后在同一个局域网上的网卡都收到了,在硬件层次上收到了,

8b86dea39b0b4995a758633e23bfa297.png

发出去之后的包文在局域网中每一个主机都能收到,只不过会判断是否发送正确(在链路层),对包文进行分析,如果目标mac地址不是目标地址,就会直接将该包文丢弃

 

mac地址保证在局域网中的唯一性

在这个时候就有可能发生数据碰撞问题

以太网发生数据碰撞问题:多个主机在同一个局域网上发送消息

问题的提出

在一个局域网中只允许一个主机,发送越多的主机碰撞的概率就越大,我们看起来这个怎么可能。

可是,任何时刻只允许一个主机发消息,这个时刻特别短

问题的解决

为了解决这个问题时,我们发明了交换机,他的作用是交换机:划分碰撞域,把发生碰撞的主机放到和目标主机的不同层(目的是为了减少碰撞)

局域网可以看作共享资源,多台主机所共享的临界资源,一台主机发送时候,其他主机不能访问

IP地址

fffc1fcb0ebd4f789bb2bb5c250ac48d.png

 

这里的令牌环网和以太网一样,只不过是用令牌来控制主机发送数据的,令牌相当于一个锁,有令牌的主机才可以发送消息,只不过我们不叫锁罢了。

ip地址保证在全网中的唯一性(公网ip是唯一的,私有ip可能重复)

ip地址是一个32位比特位,4个字节大小的,整数,风格类似于192.166.1.1

8de1a6e5bc88429390e4698bd38708f3.png

深入理解

先来讲一个故事没让我们了解ip地址和mac的差异和特点

当我们旅游时候,假设我们从吉林到云南,这个是我们终极计划,这个就是ip地址,第二步我们到达河北,下一步是从河北到陕西。再从陕西到四川,再从四川到云南,在这个过程中,只有我们的终极计划没有改变,这就是IP地址,这些变化的小计划一直在变化,就是MAC地址。

情景再现

让我们再在特定场景中看一下12148abd37e242cbb54425efb141143b.png

 

从图中我们看出,两个主机传输数据,为什么会用到路由器呢?我们讲过,在同一个局域网下,我们可以直接传输,但我们两个主机在不同的局域网下,该怎样传输呢,这就该我们的路由器登场了。

 

一个局域网中有多个主机,路由器也是其中的一个设备,为什么不交给其他的主机,(目的ip判定要交给路由器)两个主机之间传输信息,靠路由器传输,路由器相当于中介。

情景解析:

主机a是以太网下的,主机b是令牌环网下的,主机a传输数据给b,将数据传到链路层,最后到达路由器,路由器解包(以太网中协议),再将有效载荷封装(令牌环网协议),到达b的链路层,再解包到达b的网络层,此时,b的网络层的有效载荷和a的有效载荷一样。即是链路层往上的层的有效载荷一样。

得出结论:

1.ip协议屏蔽了底层网络(链路层)的差异化,靠的是工作在ip层的路由器

2.ip实现了全球主机的软件虚拟层,一切皆是ip报文

3.ip地址,尤其是目的ip,一般都是不会改变的,协助我们进行路径选择,

4.mac地址,出局域网之后,源和目的都要被丢弃,让路由器重新封装

 

 

相关文章:

网络2--MAC地址,IP地址的理解

引入: 每一张主机都会有一张网卡,每一张网卡都有一个48bit位的序列号 当我们的热点被连上,你查看时,就会出现MAC地址,IP地址 那么他们两个是什么呢??? MAC地址 在同一个局域网中…...

类型的转换

首先我们要了解java中的数据类型转换是指将一种数据类型转换成另一种数据类型的过程。 什么时候会用到?我觉得两种情况会用到 等号左右两边类型不一致(一般发生在赋值时)不同类型的数据参与运算(一般发生在计算时) 转…...

memset函数

让我们先看两个代码 memset(dp, 0x3f, sizeof(dp)); for (int i 0; i < 5; i)cout << dp[i] << " "; memset(dp, 127, sizeof(dp)); for (int i 0; i < 5; i)cout << dp[i] << " "; 代码结果如下&#xff1a; 现在我们来分…...

Java面向对象——多态

即同一个方法可以根据发送对象的不同而采用多种不同的行为方式。 一个对象的实际类型是确定的&#xff0c;但可以指向对象的引用的类型有很多&#xff08;父类&#xff0c;有关系的类&#xff09;。 多态存在的条件&#xff1a; 1. 有继承关系&#xff1b; 2. 子类重写父类…...

python 对矩阵与矩阵之间对应位置的元素,做softmax操作,代码实战

1.对矩阵中对应位置的元素&#xff0c;做softmax 对于一个向量&#xff0c;softmax函数会对其中每一个元素进行指数运算&#xff0c;然后除以所有元素指数和的结果。当将其应用到多个矩阵的相应位置上时&#xff0c;我们实际上是在对每个位置的一组数&#xff08;从各个矩阵的同…...

Angular前端项目在Apache httpd服务器上的部署

Apache Httpd和Tomcat主要区别&#xff1a;Tomcat是一个Java Servlet容器&#xff0c;用于运行Java Servlet和JavaServer Pages&#xff08;JSP&#xff09;&#xff0c;而Apache HTTP服务器是一个通用的Web服务器&#xff0c;用于提供静态和动态内容。 Apache httpd安装&#…...

Oracle 更改数据文件位置的几种常用方式

Oracle 更改数据文件位置的几种常用方式 A.归档模式下 1、offline 表空间&#xff1a;alter tablespace tablespace_name offline&#xff1b; 2、复制数据文件到新的目录&#xff1b; 3、rename 修改表空间&#xff0c;并修改控制文件&#xff1b; 4、online 表空间&#xf…...

【opencv】图像畸变校正

接上篇文章&#xff1a;【鱼眼&#xff0b;普通相机】相机标定 附代码&#xff1a; 方法一&#xff1a; 使用cv2.undistort """Create May 11, 2024author Wang Jiajun """import cv2 import numpy as npdef correct(img,camera_fileE:/cali…...

Charger之二输入电压动态电源原理(VIN-DPM)

主要内容 Charger的VIN-DPM 前篇内容&#xff1a;电池管理IC&#xff08;Charger&#xff09;了解一下&#xff1f; 领资料&#xff1a;点下方↓名片关注回复&#xff1a;粉丝群 正文 一、 VIN-DPM概念 VIN-DPM是指输入电压动态电源管理&#xff08;Input voltage dynamic…...

【半夜学习MySQL】表结构的操作(含表的创建、修改、删除操作,及如何查看表结构)

&#x1f3e0;关于专栏&#xff1a;半夜学习MySQL专栏用于记录MySQL数据相关内容。 &#x1f3af;每天努力一点点&#xff0c;技术变化看得见 文章目录 创建表查看表结构修改表删除表 创建表 语法&#xff1a; create table table_name(field1 datatype,field2 datatype,fiel…...

曲线救国:window 安装 docker

你好&#xff0c;我是 shengjk1&#xff0c;多年大厂经验&#xff0c;努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注&#xff01;你会有如下收益&#xff1a; 了解大厂经验拥有和大厂相匹配的技术等 希望看什么&#xff0c;评论或者私信告诉我&#xff01; 文章目录 一…...

番外篇 | 利用PyQt5+YOLOv5来搭建目标检测系统(附可视化界面+功能介绍+源代码)

前言:Hello大家好,我是小哥谈。PyQt5是一个Python绑定的Qt库,是用于创建图形用户界面(GUI)和其他应用程序组件的工具包。PyQt5提供了许多GUI元素,如按钮、文本框、标签等,也提供了许多Qt的功能,如网络、数据库、XML等。通过PyQt5可以在Python中使用Qt的丰富功能和强大的工…...

Pascal Content数据集

如果您想使用Pascal Context数据集&#xff0c;请安装Detail&#xff0c;然后运行以下命令将注释转换为正确的格式。 1.安装Detail 进入项目终端 #即 这是在我自己的项目下直接进行克隆操作&#xff1a; git clone https://github.com/zhanghang1989/detail-api.git $PASCAL…...

【Unity】使用Resources.LoadAll读取文件的顺序问题

最近在做客户的一个项目&#xff0c;其中的一个模块使用到了照片&#xff0c;但是发现了一个很严重的问题。当你在使用Unity的时候&#xff0c;它竟然不按照顺序读取&#xff1f;这个机器人是不是逻辑有问题&#xff1f;如下图&#xff1a; 名字脱敏了哈。。。 照片比较多&…...

pdf怎么标注红色方框?五种PDF标注红色方框方法

pdf怎么标注红色方框&#xff1f;在当今数字化时代&#xff0c;PDF文档已成为我们日常工作和学习中不可或缺的一部分。然而&#xff0c;如何在海量的PDF文件中快速、准确地标注出重要信息&#xff0c;让内容更加醒目呢&#xff1f;今天&#xff0c;我将向大家介绍五种PDF标注红…...

C++字符串细节,面试题06

文章目录 22. 字符串22.1. 字符数组 vs 字符指针 vs 常量字符指针 vs string22.2. strcpy vs sprintf vs memcpy22.3. strlen vs length vs size vs sizeof22.4. 字符串之间的转换22.5 其他数据类型与字符串之间的转换22.6 字符串分割 22. 字符串 22.1. 字符数组 vs 字符指针 …...

AutoModelForCausalLM.from_pretrained 函数调用本地权重报错

文章目录 1、代码报错的位置&#xff08;前情提要&#xff09;finetune_lora.shfintune_clm_lora.py 2、报错截图2.1、huggingfaces上的 meta-llama/Llama-2-7b-chat-hf2.2、服务器上模型文件路径 3、特别注意事项 1、代码报错的位置&#xff08;前情提要&#xff09; 在终端直…...

【qt】动态属性

这里写目录标题 一.属性1.属性的好处2.添加属性3.使用属性 二.只读属性 一.属性 1.属性的好处 说到属性&#xff08;property&#xff09;&#xff0c;你们会想到什么&#xff1f;我会联想到特点&#xff0c;就是一类对象所特有的&#xff0c;在C中&#xff0c;成员数据就是这…...

Git知识点总结

目录 1、版本控制 1.1什么是版本控制 1.2常见的版本控制工具 1.3版本控制分类 2、集中版本控制 SVN 3、分布式版本控制 Git 2、Git与SVN的主要区别 3、软件下载 安装&#xff1a;无脑下一步即可&#xff01;安装完毕就可以使用了&#xff01; 4、启动Git 4.1常用的Li…...

【数据库】数据库指令

一。数据库打开 1.命令行 2.进入mysql mysql -uroot -p密码 3.退出 exit&#xff1b; 二。针对数据库的操作 1.创建数据库&#xff08;有分号&#xff09; create database student; 2.使用数据库 use student 3.删除数据库&#xff08;有分号&#xff09; drop database…...

MAX17043电量计驱动开发:嵌入式电池管理实战指南

1. MAX17043 电量计库深度解析&#xff1a;面向嵌入式工程师的底层驱动开发指南1.1 芯片级功能定位与工程价值MAX17043 是 Maxim Integrated&#xff08;现为 Analog Devices&#xff09;推出的高精度单节锂离子/锂聚合物电池电量计 IC&#xff0c;采用 12 引脚 TDFN 封装&…...

基于深度学习的隧道缺陷检测系统(YOLO12/11/v8/v5模型+django)(源码+lw+部署文档+讲解等)

摘要随着城市化进程的加快&#xff0c;隧道的建设和维护日益重要。隧道缺陷的及时检测与修复不仅关系到交通安全&#xff0c;也涉及到基础设施的耐久性和经济效益。传统的隧道缺陷检测方法依赖人工巡检&#xff0c;效率低且容易遗漏细微缺陷。本文提出了一种基于深度学习的隧道…...

ParquetViewer:Windows平台最友好的Parquet文件查看与查询工具

ParquetViewer&#xff1a;Windows平台最友好的Parquet文件查看与查询工具 【免费下载链接】ParquetViewer Simple Windows desktop application for viewing & querying Apache Parquet files 项目地址: https://gitcode.com/gh_mirrors/pa/ParquetViewer 还在为Wi…...

基于stm32单片机的智能导盲系统的设计与实现

一、摘要 为提高视障人群出行的安全性与便捷性&#xff0c;设计并实现一套基于STM32F103C8T6单片机的智能导盲系统。系统集成多种传感器与功能模块&#xff0c;能够实现环境感知、位置信息反馈、跌倒检测与紧急求助等功能。通过SR04超声波传感器实时监测前方障碍物&#xff0c;…...

软件开发常见骗局有哪些?

虚假高薪招聘陷阱以“零经验高薪入职”“包就业”为噱头&#xff0c;要求求职者付费培训。实际培训内容质量低下&#xff0c;承诺的就业机会无法兑现&#xff0c;甚至诱导贷款支付培训费用。外包项目诈骗谎称有高额预算项目外包&#xff0c;要求开发者支付“保证金”或“预付款…...

douyin-downloader:从素材焦虑到创作自由的抖音内容获取方案

douyin-downloader&#xff1a;从素材焦虑到创作自由的抖音内容获取方案 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback…...

EVA-01应用实战:5个场景教你用Qwen2.5-VL处理工作学习中的图片难题

EVA-01应用实战&#xff1a;5个场景教你用Qwen2.5-VL处理工作学习中的图片难题 1. 引言&#xff1a;当视觉理解遇上机甲美学 想象一下&#xff0c;你正在处理一份满是手写笔记的文档照片&#xff0c;或者需要快速理解一张复杂的数据图表。传统方法可能需要你手动输入文字、反…...

告别驱动臃肿:Radeon Software Slimmer轻量优化实现显卡性能释放

告别驱动臃肿&#xff1a;Radeon Software Slimmer轻量优化实现显卡性能释放 【免费下载链接】RadeonSoftwareSlimmer Radeon Software Slimmer is a utility to trim down the bloat with Radeon Software for AMD GPUs on Microsoft Windows. 项目地址: https://gitcode.co…...

解锁流媒体世界:如何用N_m3u8DL-RE轻松下载加密视频与直播内容

解锁流媒体世界&#xff1a;如何用N_m3u8DL-RE轻松下载加密视频与直播内容 【免费下载链接】N_m3u8DL-RE Cross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文. 项目地址: https://gitcode.com/GitHub_Trending/nm3/N_m3u8…...

OpenMS终极指南:如何快速掌握专业质谱数据分析的完整方案

OpenMS终极指南&#xff1a;如何快速掌握专业质谱数据分析的完整方案 【免费下载链接】OpenMS The codebase of the OpenMS project 项目地址: https://gitcode.com/gh_mirrors/op/OpenMS 蛋白质组学、代谢组学、质谱数据分析、OpenMS开源平台、生物信息学工具 在生命科…...