深圳网站建设报价/关于搜索引擎的搜索技巧
路由转发过程
记住路由转发过程结论:报文ip是不变,mac改变。
- mac地址在同一个广播域传输过程中是不变的;在跨越广播域的时候会发生改变的;
- 而IP地址在传输过程中是不会改变的(除NAT的时候)。
ip地址本质上是终点地址,目的ip地址不会变。而mac地址是下一跳地址,每经过一次路由器都会发生变化(mac地址起到了记录下一跳的作用)
mac地址在链路层通过以太网协议封装,链路层只负责设备到设备之间的通信,这层是真正意义上的通信,所以称为物理通信。
路由表
ARP协议:通过报文的目标IP,获得下一跳的目标MAC。完成报文封装。
一个主机如何获取另一个主机的MAC地址呢?
这就需要用到ARP(Address Resolution Protocol)协议,它是一种用于根据IP地址获取MAC地址的协议。ARP协议的工作原理和过程如下:
当一个主机要发送数据给另一个主机时,首先会检查自己的ARP缓存表(ARP cache),看是否已经有目标主机的IP地址和MAC地址的对应关系。如果有,则直接使用该MAC地址封装帧并发送出去。
如果没有,则需要发起ARP请求(ARP request),向局域网内广播一个特殊的帧,其中包含了自己的IP地址和MAC地址,以及目标主机的IP地址。该帧的目标MAC地址为广播地址FF-FF-FF-FF-FF-FF,表示所有设备都要接收该帧。
局域网内的所有设备都会收到该ARP请求帧,并根据其中的目标IP地址判断是否是自己。如果不是自己,则丢弃该帧,并且将发送者的IP地址和MAC地址加入自己的ARP缓存表中。如果是自己,则回复一个ARP应答(ARP reply),向发送者单播一个特殊的帧,其中包含了自己的IP地址和MAC地址,以及发送者的IP地址。该帧的目标MAC地址为发送者的MAC地址。
发送者收到该ARP应答帧后,就知道了目标主机的MAC地址,并将其加入自己的ARP缓存表中。然后就可以使用该MAC地址封装帧并发送出去。
————————————————
原文链接:https://blog.csdn.net/weixin_43025343/article/details/130840277
路由转发过程-案例(有问题,未完善):
假设拓扑图是这个样子,B1和B2是路由器B上的两个接口(LAN、WAN口),C1和C2是路由器C上的两个接口(WAN、LAN口),A和E是PC,由主机A向主机E发送数据包。
A-----(B1-B2)-----(C1-C2)-------E
那么在主机A形成的数据包的目的IP就是E的IP,源IP就是主机A的IP地址,源MAC地址就是A的MAC地址,此时目的(下一跳)MAC还不知道。那么A首先要在局域网中通信(如果目标机在同一局域网最好)。
根据路由转发的宏观思路,A需要先找到目标IP所在的网段。通过网络层,先将报文中目标IP跟自身路由表第一条路径的子网掩码按位与得到网络号,这么做的目的是判断目标IP所处子网(网关路由) 是否等于 当前路由器直接相连的子网。如果是,就通过本机ARP表,获得子网中目标IP机的MAC地址,封装好报文广播在子网中,目标机直接比对MAC就收到包了;依次比对如果都不是,就把网关MAC直接封装到报文,广播到子网中。
该局域网中的每一台主机都会收到这个报文。先对这个报文进行解包取出里面的目的MAC地址,一比对发现MAC地址不对,于是直接将这个报文丢弃。最终只有路由器B在数据链路层解包取出MAC地址,一比对发现这个报文是给自己的。于是再次向上交付,到网络层解析出目的IP。路由器比对自己的路由表,判断下一跳网段,决定要将报文发送给C设备。此时需要再次向下封装,换上新的目的MAC地址,由B发给路由器C。
路由器C接收到数据包后和B做的操作是一样的,路由器比对自己的路由表,发现C的IP与目的IP是一致的,最终源MAC地址变成C2的MAC地址,目标MAC地址变成主机E的MAC地址,然后发送给主机E,这样E就收到了这个数据包。
当E回复数据包的时候,就是把收到的数据包的源IP地址(主机A的IP地址)和源MAC地址(接口C2的MAC地址)作为他的目标IP和目标MAC地址。
转: 路由转发过程的IP及MAC地址变化-chinaltang-ChinaUnix博客
非同一局域网下两台内网设备之间的网络通信
两台电脑都处在自己的一片局域网下,ip地址可能是碰巧“同网段”,也可能不同网段。这种情况下单纯只靠两个内网ip显然是不能准确到达对方主机的。很可能寻到错误的地址。
我们可以很毫无差错的从自己的主机访问到处于公网的一台服务器,因为公网ip地址的唯一性。这个过程中,你的报文会经过自己内网的路由器(报文中把源ip,从你自己的替换成路由器的WAN ip;并且路由器记住一个映射关系,你是哪个LAN的(猜测),你的局域ip是多少。这样将来报文返回的时候,里面的目的ip是你路由器,你应该要知道把这个报文给内网里面的谁),可能会穿过路由器所在的更大的内网,最终到达一个公网节点,最后到达目的服务器。【这样也就实现了我们可以和处在公网中的“中介”服务器互发消息】
这样就可以在上面的方式,通过同一台公网中介转发,同一个端口的方式,实现两个来自不同内网的主机通话。
01、处于不同局域网下的Socket通信(配置)_c++socket可以连接不在一个局域网中的ip地址吗-CSDN博客文章浏览阅读6.7k次,点赞14次,收藏85次。目录原理一、公网IP二、frp配置1、在服务器上配置2、在客户端配置配置安全组参考学习的网站原理拥有一台有公网IP的云服务器作为中转站,将局域网下的电脑将数据信息发送给中转的服务器,然后这个中转的服务器将收到的数据转给另外一台电脑,这样就可以实现两台电脑之间的互相通信。原因:我们可以实现在局域网下的通信而不能在不是同一局域网下的通信是因为,不同的私网之间是无法通信的,我们使用的192.168.x.x都是私网,但是所有的私网却都可以和公网ip直接通信的。所以..._c++socket可以连接不在一个局域网中的ip地址吗https://blog.csdn.net/weixin_44917390/article/details/106685219?ops_request_misc=&request_id=&biz_id=102&utm_term=TCP%E5%AE%9E%E7%8E%B0%E5%9C%A8%E4%B8%8D%E5%90%8C%E5%B1%80%E5%9F%9F%E7%BD%91%E4%B8%8B%E7%9A%84%E4%B8%A4%E5%8F%B0%E7%94%B5%E8%84%91%E7%BD%91%E7%BB%9C%E9%80%9A%E4%BF%A1%20(c/c++)&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-4-106685219.142%5Ev96%5Epc_search_result_base7&spm=1018.2226.3001.4187
家庭路由器的常见组网方式
https://ask.zol.com.cn/x/4745715.html
如果电脑是通过路由器上网,本地连接的IP地址是内网IP,它与路由器的LAN IP 同网段,通过路由器的LAN IP(也叫网关)与上一级路由器通讯。
一、电脑通过路由器上网,基本链路如图:
1、电脑IP地址:192.168.0.100为内网IP
2、路由器LANIP:192.168.0.1同样为内网IP,wanIP :200.200.200.200为公网IP即外网IP
3、电脑在互联网中使用IP :200.200.200.200为出口
二、部分营运商IP资源不足,一般常用搭建城域网共享互联网方式,如图:
1、电脑IP地址:192.168.0.100为内网IP
2、路由器LANIP:192.168.0.1同样为内网IP,wanIP :10.1.2.3为城域网IP。
3、电脑在互联网中使用IP :200.200.200.200为出口,与运营商的其它用户共用IP。
三、路由器做为家庭的桥接设备,链路与第二种相似,只是营运商路由器换成了家庭的主路由器。
主路由器和路由器是一个局域网的。桥接模式(bridge),是把副路由的DHCP功能关闭了的,连接副路由器的设备自然是使用的主路由分配的IP地址,连接副路由的设备的IP和连接主路由的IP它们依旧是一个网段,可以无障碍地互相访问的。
四、宽带为静态IP方式,营运商提供外网IP地址,电脑配置本地连接的IP地址即可上网,那这个IP地址就是外网地址,不再是内网地址。
二层交换机与三层路由器
二三层转发的二三层?
一层交换机:只支持物理层协议。
二层交换机:支持物理层和数据链路层协议。
三层交换机:支持物理层,数据链路层及网络层协议。
也就是说,二层交换机主要执行二层数据链路层(但也参与物理层功能的执行,即一层交换机)的功能,所以叫二层交换机。
如集线器是一层设备,因为只执行物理层的功能。
从ISO/OSI的分层结构上说,交换机可分为二层交换机、三层交换机等,没有一层交换机的说法。
二层交换机指的就是传统的工作在OSI参考模型的第二层--数据链路层上交换机,主要功能包括物理编址、错误校验、帧序列以及流控。
应该不具有分ip功能吧?
三层交换机是一个具有三层交换功能的设备,即带有第三层路由功能的第二层交换机,但它是二者的有机结合,并不是简单地把路由器设备的硬件及软件叠加在局域网交换机上。
虚拟网卡:
虚拟网卡_虚拟网卡是什么-CSDN博客
网络访问防火墙原理?
参考:
以太网帧格式 以及 认识MAC地址(局域网的通信原理)_目的mac地址-CSDN博客
浅谈IP地址和MAC地址的区别,路由转发过程_路由器通信是通过ip还是mac-CSDN博客
既然有了IP地址,为什么还需要MAC地址?两者到底有啥区别,深入分析后终于明白了!_为什么要有mac地址_wljslmz的博客-CSDN博客
【精选】路由转发的过程-CSDN博客
以太网帧格式 以及 认识MAC地址(局域网的通信原理)_目的mac地址-CSDN博客
【精选】认识ARP协议_源mac地址和目的mac地址怎么填-CSDN博客
有空时候消化下这几个 :?
【精选】【虚拟机】桥接模式下,让虚拟机和宿主机相互ping通(对比NAT模式)_桥接模式主机和虚拟机互ping-CSDN博客
ubuntu网络配置(桥接模式, nat模式, host主机模式)_桥接模式和nat模式过程u.untu-CSDN博客
路由模式和桥接模式的区别_道系 青年的博客-CSDN博客
20张图说清楚什么是 IP 协议 - 知乎
相关文章:

报文的路由过程
路由转发过程 记住路由转发过程结论:报文ip是不变,mac改变。 mac地址在同一个广播域传输过程中是不变的;在跨越广播域的时候会发生改变的;而IP地址在传输过程中是不会改变的(除NAT的时候)。 ip地址本质上是…...

【CPP】类和对象
1- Classes and Objects Structures A struct in C is a type consisting of a sequence of data membersSome functions/Statements are needed to operate the data members of an object of a struct type 不不小心操作错误,不小心越界 Classes You should b…...

【多线程面试题二十】、 如何实现互斥锁(mutex)?
文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:如何实现互斥锁…...

hypercube背景设置为白色,绘制高光谱3D立方体
import scipy pip install wxpython PyOpenGL和Spectral需要本地安装 可参考链接https://blog.csdn.net/qq_43204333/article/details/119837870 参考:https://blog.csdn.net/Tiandailan/article/details/132719745?spm1001.2014.3001.5506Mouse Functions:left-cl…...

Visual Studio(VS)C++项目 管理第三方依赖库和目录设置
发现很多程序员存在这种做法:把项目依赖的第三方库的lib和dll放在项目目录下,或者复制到输出目录,因为每种配置都有不同的输出目录,所以要复制多份(至少包括Debug和Release两个输出目录),这些做…...

leetCode 2578. 最小和分割 + 排序 + 贪心 + 奇偶分组(构造最优解)
2578. 最小和分割 - 力扣(LeetCode) 给你一个正整数 num ,请你将它分割成两个非负整数 num1 和 num2 ,满足: num1 和 num2 直接连起来,得到 num 各数位的一个排列。 换句话说,num1 和 num2 中所…...

自定义实现图片裁剪
要实现这个功能,首先需要创建一个自定义的View,然后在该View中绘制背景框和裁剪后的图片。以下是一个简单的实现: 1. 创建一个名为CustomImageView的自定义View类,继承自View: import android.content.Context; impor…...

开发语言工具编程系统化教程入门和初级专辑课程上线
开发语言工具编程系统化教程入门和初级专辑课程上线 学习编程捷径:(不论是正在学习编程的大学生,还是IT人士或者是编程爱好者,在学习编程的过程中用正确的学习方法 可以达到事半功倍的效果。对于初学者,可以通过下面…...

【Truffle】二、自定义合约测试
一、准备测试 上期我们自己安装部署了truffle,并且体验了测试用例的整个测试流程,实际开发中,我们可以对自己的合约进行测试。 我们首先先明白自定义合约测试需要几个文件 合约文件:既然要测试合约,肯定要有合约的源码…...

场景交易额超40亿,海尔智家三翼鸟开始收获
文 | 螳螂观察 作者 | 余一 随着双十一的到来,国内的消费情绪再次被点燃。在这类大促之下,品牌们就像一个个天体,不断引动着市场潮汐,期待自己能触发更大的“海潮效应”。 所谓“海潮效应”是指,海水因天体的引力而…...

众和策略可靠吗?股票扛杆怎么玩?
可靠 股票扛杆是一种出资战略,经过假贷资金来增加出资金额,从而进步出资收益。这种战略在股票商场中被广泛运用,但一起也伴随着一定的危险。在本文中,咱们将从多个视点来剖析股票扛杆怎么玩。 首要,扛杆出资的原理是…...

解决连接Mysql出现ERROR 2013 (HY000): Lost connection to MySQL server at ‘waiting
在上一篇中解决Mysql ER_ACCESS_DENIED_ERROR: Access denied for user ‘root‘‘localhost‘ (using password: YES)-CSDN博客 写了mysql的密码报错问题,在执行 mysql -u root -p 出现了这个错误, ERROR 2013 (HY000): Lost connection to MySQL se…...

Hadoop YARN功能介绍--资源管理、调度任务
Hadoop YRAN介绍 YARN是一个通用资源管理系统平台和调度平台,可为上层应用提供统一的资源管理和 调度。 他的引入为集群在利用率、资源统一管理和数据共享等方面带来了好处。 1.资源管理系统 集群的硬件资源,和程序运行无关,比如内存、cu…...

从AlexNet到chatGPT的演进过程
一、演进 AlexNet(2012): AlexNet是深度学习领域的重要突破,包括5个卷积层和3个全连接层。使用ReLU激活函数和Dropout正则化,获得了ImageNet图像分类比赛的胜利。引入了GPU加速训练,大幅提高了深度神经网络…...

Unity如何实现bHaptics TrackSuit震动衣的SDK接入
前言 TrackSuit是bHaptisc公司旗下的一款震动衣,包括X16,X40等不同型号,是一款尖端的无线高级触觉背心,采用人体工程学设计,具有40个精确的触觉反馈点。通过无缝的跨平台支持和无限制、无滞后的游戏体验,增强您的VR冒险体验。用于PC或者VR游戏中高度还原真实射击触感。官…...

识别flink的反压源头
背景 flink中最常见的问题就是反压,这种情况下我们要正确的识别导致反压的真正的源头,本文就简单看下如何正确识别反压的源头 反压的源头 首先我们必须意识到现实中轻微的反压是没有必要去优化的,因为这种情况下是由于偶尔的流量峰值,Task…...

Spring是如何解决bean循环依赖的问题的
在Spring框架中,循环依赖是指两个或多个Bean之间相互依赖,形成了一个闭环的依赖关系。当存在循环依赖时,Bean的创建过程会陷入死循环,导致应用程序无法启动或出现异常。 说到循环依赖,首先我先说说bean的三级缓存 在S…...

[移动通讯]【Carrier Aggregation-9】【 Radio Resource Control (RRC) Aspects】
前言: CA 分析辅助工具: UE Capabilities 目录: 总体流程 Radio Resource Control (RRC) Aspects SCell addition and removal Handover 一 总体流程 1.1 CA 总体流程 1.2 CA 和 NSA 区别 NSA 我理解也是一种特殊的CA 方案&…...

故障预测与健康管理(PHM)的由来以及当前面临的挑战
故障预测与健康管理(PHM)作为一项关键技术,旨在帮助企业在事故发生之前较长时间内实现故障预测与健康管理,达到“治未病”的效果。PHM的发展源于对设备可靠性和安全性的追求,以及对预测性维护的需求。然而,…...

【ChatGPT瀑布到水母】AI 在驱动软件研发的革新与实践
这里写目录标题 前言内容简介作者简介专家推荐读者对象目录直播预告 前言 计算机技术的发展和互联网的普及,使信息处理和传输变得更加高效,极大地改变了金融、商业、教育、娱乐等领域的运作方式。数据分析、人工智能和云计算等新兴技术,也在不…...

【Django】项目模型
Django的基本命令 django-admin 命令含义startproject启动Django项目startapp启动Django应用check检查项目完整性runserver本地运行项目shell进入Django项目的Python Shell环境test 进行Django用例测试makemigrations创建模型变更的迁移文件migrate执行makemigrations…...

字符集详解
常见字符集介绍 字符集基础知识: 计算机底层不可以直接存储字符的。 计算机中底层只能存储二进制(0、1) 。 二进制是可以转换成十进制的。 结论:计算机底层可以表示成十进制编号。计算机可以给人类字符进行编号存储,这套编号规则就是字符…...

Vert.x学习笔记-什么是Vert.x
Vert.x介绍 用官网的一句话来总结:Vert.x是用于在JVM上构建响应式应用程序的工具包,项目初期的目标是成为“JVM版的Node.js”,但是后续的发展逐渐偏离了初期的目标,变成了一个给JVM提供量身定制的异步编程基础框架的工具包。 Ver…...

AcWing 第127场周赛 构造矩阵
构造题目,考虑去除掉最后一行最后一列先进行考虑,假设除了最后一行和最后一列都已经排好了(你可以随便排),那么分析知最后一个数字由限制以外其他都已经确定了,无解的情况是k为-1 并且n,m的奇偶…...

Seata入门系列【15】@GlobalLock注解使用场景及源码分析
1 前言 在Seata 中提供了一个全局锁注解GlobalLock,字面意思是全局锁,搜索相关文档,发现资料很少,所以分析下它的应用场景和基本原理,首先看下源码中对该注解的说明: // 声明事务仅在单个本地RM中执行 //…...

Dubbo 路由及负载均衡性能优化
作者:vivo 互联网中间件团队- Wang Xiaochuang 本文主要介绍在vivo内部针对Dubbo路由模块及负载均衡的一些优化手段,主要是异步化缓存,可减少在RPC调用过程中路由及负载均衡的CPU消耗,极大提升调用效率。 一、概要 vivo内部Java…...

Python数据可视化入门指南
Matplotlib和Plotly是两个在Python中广泛使用的数据可视化库,它们具有丰富的API和功能,用于创建各种类型的图表和图形。在本篇博客中,我们将介绍它们的主要特点和基本用法。 Matplotlib 主要特点: 高度自定义: Matp…...

我的ChatGPT的几个使用场景
示例一,工作辅助、写函数代码: 这里展示了一个完整的代码,修正,然后最终输出的过程。GPT具备足够丰富的相关的小型代码生成能力,语法能力也足够好。这类应用场景,在我的GPT使用中,能占到65%以上…...

3 — NLP 中的标记化:分解文本数据的艺术
一、说明 这是一个系列文章的第三篇文章, 文章前半部分分别是: 1 — NLP 的文本预处理技术2 — NLP中的词干提取和词形还原:文本预处理技术 在本文中,我们将介绍标记化主题。在开始之前,我建议您阅读我之前介绍…...

C++-类与对象(上)
一、 auto关键字 1.自动识别数据类型 2.auto的初始化 3.auto简化for循环 nullptr的使用 二、类与对象 1.c中类的定义 2.c语言与c的比较 3.类的访问限定符以及封装 3.1访问限定符 3.2封装 3.3类的作用域 3.4类的声明与定义分离 🗡CSDN主页:d1ff1cult.&…...