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

通俗的理解网关的概念的用途(三):你的数据包是如何到达下一层的

其实,这一章我写不好,因为这其中会涉及到一些计算和一些广播等概念,本人不善于此项。在此略述,可以参考。

每台设备的不同连接在获得有效的IP地址后,会根据IP地址的规则和掩码的规则,在操作系统和交换机(也有集线器)(一般叫二层交换设备)层面将此设备定义到各自的“本地网络”区域中。

比如,当你有一个IP 地址是 192.168.1.1/24时,网络系统会设置成所有在 192.168.1.1-192.168.1.255这个范围的地址都当成是本地网络的设备,此时,如果你访问的目标地址是 T10(10.10.10.10)时,通过IP地址的计算规则,得知此目标地址并不在你的本地网络当中,于是就会把数据包打包后丢到你设备的网关设备中。如果你设置有多个不同的网关设备时,会根据你的路由表来查找最小的匹配的目标路由项(我不知道这样的描述是否正确,我就是这么理解的),然后将数据包丢到该项目中的网关中。

比如你的路由表有三项:

目标:0.0.0.0/0,网关:192.168.1.250

目标:10.10.0.0/16,网关:192.168.1.254

目标:10.10.10.0/24,网关:192.168.1.253

如果访问目标是 10.10.10.10时,数据包就会丢到 192.168.1.253中;

如果访问目标是10.10.11.10时,数据包就会丢到 192.168.1.254中;

如果访问目标是 10.0.0.10时,数据包就会丢到 192.168.1.250中;

关于这其中涉及到的一些关于IP地址段(范围)的计算,请自行百度参考。至于什么叫做A类、B类、C类地址之类的,我的概念是只需要简单了解即可,有经验了过后,一般也都不会因此而造成困扰。

如果同时存在多个目标相同,但网关不同的列表项目,不同的系统会有不同的处理方式,如网络设备中会有“自动均衡”这样的概念、或者是“优先级”、“度量”、“距离”等概念来处理,在此不述。

一般的可以简单的可以理解成:如果目标是在本机的本地网络范围中,那么数据包就会在“二层”的交换设备中收发,如果目标不在本地网络范围中,那么就会经过“三层”设备来携带打包好的数据包进行传递。

http://www.lryc.cn/news/345543.html

相关文章:

  • 基于Springboot的校运会管理系统(有报告)。Javaee项目,springboot项目。
  • USP技术提升大语言模型的零样本学习能力
  • 前端安全防护实战:XSS、CSRF防御与同源策略详解(react 案例)
  • 2024C题生物质和煤共热解问题的研究 详细思路
  • 智慧旅游引领未来风尚,科技助力旅行更精彩:科技的力量推动旅游业创新发展,为旅行者带来更加便捷、高效和智能的旅行服务
  • 十.吊打面试官系列-Tomcat优化-通过压测Tomcat调优实战
  • JVM调优—减少FullGC
  • 力扣 256. 粉刷房子 LCR 091. 粉刷房子 python AC
  • C++STL细节,底层实现,面试题04
  • Linux查看Oracle数据库的环境变量
  • pg数据库学习知识要点分析-1
  • 【Web】CTFSHOW 七夕杯 题解
  • react native 设置屏幕锁定
  • 探索 IPv6 协议:互联网的新一代寻址
  • Ubuntu意外断电vmdk损坏--打不开磁盘“***.vmdk”或它所依赖的某个快照磁盘。
  • 202466读书笔记|《一天一首古诗词》——借问梅花何处落,风吹一夜满关山
  • 如何调用本地ollama的http请求接口
  • 【C】190 颠倒二进制位
  • 蓝桥杯备战5.图书管理员
  • 微型显示器可以实时监测大脑活动
  • 移动端适配方案
  • 【Ajax零基础教程】-----第一课 Ajax简介
  • 大型医疗挂号微服务“马上好医”医疗项目(5)Swagger的使用
  • C语言从头学04——介绍占位符和输出格式
  • 写爬虫代码抓取Asterank中小行星数据
  • leetCode81. 搜索旋转排序数组 II
  • 在Ubuntu上怎么查看安装了哪些包?
  • Navicat连接远程数据库时,隔一段时间不操作出现的卡顿问题
  • 修改页签标题 + 页签图表
  • QT---day5,通信