通俗的理解网关的概念的用途(二):不同区域的网络之间的访问方式

两个不同区域的网络互相访问,一般可以通过一种叫做“三层”的网络设备来进行通信:

一、网关方式:

本机A(192.168.1.1)访问目标 T10(10.10.10.10)时,由于根据本地网络的设置,操作系统通过计算得知目标T10并不在本机所处的本地网络环境中,就会把访问数据包打包,保留 源地址(192.168.1.1)和目标地址(10.10.10.10),将数据包丢到本机设置的距离本机最近的并且数据包可以直达的网关设备中,由网关设备根据源地址和目标地址来将数据包进行转发。

在发送过程中均保留源地址和目标地址的完整信息,直到数据包到达目标地址中。目标地址机器接收到数据包后,目标机器根据源地址在其本机中的路由表中查找返回路径,将回应数据包按其设定的路径返回。

如果目标机器的路由表中设置的返回路径与源地址的路径不一致时,一般来说数据包就没法得到正确的返回,在此不述。

在此方式中,如果访问策略允许,双方都可以直接发起对对方的访问。

二、源地址转换方式:

本机A(192.168.1.1)访问目标T10(10.10.10.10)时,数据包到达网关设备G后,网关设备会将源地址转换为网关设备中可以与目标T10进行通信的端口IP(sNat10.10.10.1)。

在此方式中,目标T10并不知道A的存在,与T10进行通信的是网关设备中的sNat这个IP地址。

管理人员只需要保证A与G是可以正常通信的,然后由 T10所在的区域来保证T10是可以与sNat进行通信的。

几乎所有的家用路由器等都是采用这种方式来上网。

家用的网络连接上网后一般仅能分配到一个动态分配的IP地址,为了能实现家里所有的设备(多台电脑/手机等)可以同时上网,就必须要采用这种方式来上网。

在IPV4的互联网世界中,IPV4地址是有限的,主干道中的一个IPV4地址就可以让其所在的子网络的多台设备进行上网,且会有一个非常大的好处,就是外面的互联网络是无法主动攻击到家里的设备的。

自从网关设备实现了sNat(源地址转换)方式之后,可以说所谓的IPV4地址是有限的这一概念其实是一个伪命题。在此不述。

为了解决所谓的IPV4地址“不够用”,人们就设计了IPV6,IPV6地址可以表达的数量非常非常非常非常的多,多到可以给地球上的每一粒沙子分配一个IPV6地址。个人观点:可以有,但其实至少在当今的世界是是还没有必要的(截止2024年的今天)。

由于IPV6地址非常。。。的多,网关设备就可以弱化“源地址转换”的这一种网络互相访问的方式,让每一台设备在与其它设备互通的时候,都是通过实际双方都可以互相访问的地址来进行访问。看起来好像是没什么问题,但其实是比较危险的,因为在这种方式下,你的手机在连接家里的IPV6地址的WIFI时,其实你的手机已经完全暴露在全世界所有人的网络之下,此时,虽然外人一般无法得知你的手机的IPV6地址,但主干道上是可以“不安全”的,在不安全的主干道上通信的时候,有人可以“监听”到你手机与其它人的通信,然后就能得知你的手机的IPV6地址,然后就可以主动对你的手机进行攻击!如果你的手机的系统或APP有漏洞时就会非常的危险!

而在IPV4中的“源地址转换”方式中,你手机的IP地址是被你的网关(WIFI)设备给转换成网关的地址了,默认情况下所有的网关设备在运行时是不能接受被外部网络主动访问和攻击的,这会非常有效的保护你家里的电脑和手机等设备。

当然,这并不表示你们的通信就是“安全”的,因为在主干道上的监听者虽然不能对你发起主动攻击,但可以解密你们之间的通信,同时可以伪造数据包对你的手机等设备进行“攻击”,这是另一层面的东西,在此不述。

三、目标地址转换方式:

一般的“防火墙”等设备,第一道门槛就是使用此方式对目标地址和资源进行精细控制。

A访问到的T10实际上是一个安全设备,在T10上设定一个端口转换,让其转换到T10所在的子网中的服务器设备中。

在此方式中,服务器仅做为资源提供者,隐藏在T10所在的其中一个外部无法访问到的子网中,服务器对于网络的防护功能一般都比较弱,所以都需要在它的前面加一个“防火墙”,让防火墙打开一个受到策略控制的端口转换到服务器中的资源中,安全防护功能都实现在“防火墙”中,以此来实现安全的资源提供,同时还可以实现更多的功能,包括资源的均衡等。

在一个复杂的网络中,三种方式都是可以同时存在的,可以达到资源有效利用和安全防护等功能。

能实现网络转换的方式不仅限于这几种方式,方式非常多,由于不熟悉,在此不述。

本人仅对以上几种方式比较熟悉,所以仅列举以上三种。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UE4BeginPlay执行流程

文章目录 UE4 BeginPlay执行流程源代码UGameInstance::StartPlayInEditorGameInstance:UWorld::BeginPlayAGameModeBase::StartPlayAGameStateBase::HandleBeginPlayAWorldSettings::NotifyBeginPlayAActor::DispatchBeginPlay UE4 BeginPlay执行流程 Created with Raphal 2.3.…

算法第63天 单调栈3

84 柱状图中最大的矩形 给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。 求在该柱状图中,能够勾勒出来的矩形的最大面积。 def largestRectangleArea(heights):res0for i in range(len(heights)):left…

【Linux】如何查看Linux命令的使用方法

man cd | col -b > cdhelp.txt #查询帮助文档 man 命令用于查看 Linux 系统的在线帮助文档(man page)。man 是 “manual” 的缩写,通过它,你可以访问关于各种命令、函数、配置文件等的详细文档。 cd 是一个常用的命令&#xf…

YOLO数据集制作(一)|Labelme标注的矩形框json文件转txt

以下教程用于将使用Labelme软件标注生成的json格式文件转成YOLO使用的txt格式,适用场景:矩形框 使用方法:将json文件夹路径填到json_dir后, 将保存转化后txt的路径填入txt_dir后,运行即可转化。 运行完成后会生成label…

io流、字节流字符流区别

想象你正在做一道菜,需要准备材料和烹饪步骤。IO流就像是你在做菜时使用的工具,而字节流和字符流则是不同类型的工具,适合不同的操作。 首先,字节流就像是你使用的普通厨具,比如刀、砧板等。它们可以处理任何类型的食…

Linux-解压缩文件命令(gzip、zip、unzip、tar、jar)

目录 1、压缩解压命令 1.1 gzip、gzcat、gunzip 1.2 bzip2、bzcat、bunzip2 1.3 zip和unzip 2、tar命令 3、jar命令 1、压缩解压命令 1.1 gzip、gzcat、gunzip gzip 命令 压缩文件后缀.gz gzcat 用来显示压缩的文本文件内容 gunzip 用来解压文件 把/home目录下的t…

使用向量数据库 Zilliz Cloud 时常用到的术语和概念

AUTOINDEX 为满足用户不同需求,Zilliz Cloud 提供 2 种类型的集群 CU:性能型和容量型。但是,为不同类型 CU 集群中的 Collection 创建索引时,通常需要根据所选择的 CU 类型调整索引参数。为了方便创建索引,免去调节参数的麻烦,Zilliz Cloud 使用 AUTOINDEX 的索引类型。…

OpenAI 正在开发一种可以防止版权诉讼的工具

OpenAI 正在开发一种名为 Media Manager 的工具,该工具将使内容创建者和所有者能够确定他们是否愿意将自己的内容用于 ML 研究和 AI 模型训练。 Media Manager 将做什么? 明年推出的 Media Manager 将使内容创作者和所有者能够更好地控制他们的工作是否…

Oracle体系结构初探:闪回技术

在Oracle体系结构初探这个专栏中,已经写过了REDO、UNDO等内容。觉得可以开始写下有关备份恢复的内容。闪回技术 — Oracle数据库备份恢复机制的一种。它可以在一定条件下,高效快速的恢复因为逻辑错误(误删误更新等)导致的数据丢失…

岩点×数说故事×小红书 | 发布《中国攀岩行业分析报告》

从下班健身到下班攀岩,从“鸡娃”到岩馆“溜娃”,被奥运“正名”的攀岩运动,在国内熬过了萌芽阶段,悄然开出了花。2023年,各类重磅攀岩赛事重启、线下岩馆疯狂扩张,小众攀岩正式进入大众视野,风…

249 基于matlab的MED、OMEDA、MOMEDA、MCKD信号处理方法

基于matlab的MED、OMEDA、MOMEDA、MCKD信号处理方法。最小熵反褶积(MED),最优最小熵反卷积调整卷积 (OMEDA),多点最优最小熵解卷积调整(Multipoint Optimal Minimum Entropy Deconvolution Adjusted,MOMEDA),最大相关峭…

Vue2 组件通信方式

props/emit props 作用&#xff1a;父组件通过 props 向子组件传递数据parent.vue <template><div><Son :msg"msg" :pfn"pFn"></Son></div> </template><script> import Son from ./son export default {name: …

winform图书管理系统

winform图书管理系统说明文档 运行前附加数据库.mdf&#xff08;或sql生成数据库&#xff09; 主要技术&#xff1a; 图书管理员 读者管理 图书管理 添加 修改 删除 查看 入库 书册列表 书册管理用户管理退出 借书 还书 系统管理员 修改图书管理权限 项目获取&#xff1a;…

LeetCode 209 长度最小的子数组(滑动窗口and暴力)

、 法一&#xff1a;滑动窗口 //使用滑动窗口来解决问题 //滑动窗口的核心点有&#xff1a; /*1.窗口内是什么&#xff1f;2.如何移动窗口的起始位置&#xff1f;3.如何移动窗口的结束位置&#xff1f;4.两个指针&#xff0c;怎么判断哪个指针是终止指针&#xff0c;哪个指针…

代码随想录算法训练营第六十天| LeetCode647. 回文子串 、516.最长回文子序列

一、LeetCode647. 回文子串 题目链接/文章讲解/视频讲解&#xff1a;https://programmercarl.com/0647.%E5%9B%9E%E6%96%87%E5%AD%90%E4%B8%B2.html 状态&#xff1a;已解决 1.思路 这道题我只想出来了暴力解法&#xff0c;动规解法并没有想出来。根据视频讲解才把它想出来。…

针对macOS上的maven安装配置

这篇博客将向读者介绍如何安装和配置Maven。Maven是一个强大的项目管理工具&#xff0c;广泛用于Java项目的构建、依赖管理和项目报告生成。它可以极大地简化项目的构建过程&#xff0c;并帮助开发人员管理项目的各种依赖项。 什么是Maven&#xff1f; Maven是一个基于项目对…

C++——命名空间

c ——命名空间 前言一.命名空间命名空间的进一步拓展 二.io流特性 前言 ** 好久不见&#xff0c;甚是想念~今天我们讲解的是关于c命名空间的一些知识点&#xff0c;这只是开胃小菜哦&#xff0c;期待我们后面更深入知识的灵魂碰撞吧 ** 一.命名空间 怎么形容呢~命名空间出现…

Rocketmq如何保证消息不丢失和幂等性

生产者 生产者通过RocketMQ提供的事务消息&#xff08;两阶段提交&#xff09;能保证消息的一致性。 第一阶段给Broker发送一个半事务消息&#xff0c;半事务消息是不能消费的消息&#xff0c;broker已经收到生产者发送的消息&#xff0c;但是并未收到生产者的二次确认&#x…

SpringBoot异步接口实现:提高系统的吞吐量

前言 Servlet 3.0之前&#xff1a;每一次Http请求都由一个线程从头到尾处理。 Servlet 3.0之后&#xff0c;提供了异步处理请求&#xff1a;可以先释放容器分配给请求的线程与相关资源&#xff0c;减轻系统负担&#xff0c;从而增加服务的吞吐量。 在springboot应用中&#…

JavaScript使用 BigInt

在 JavaScript 中&#xff0c;最大的安全整数是 2 的 53 次方减 1&#xff0c;即 Number.MAX_SAFE_INTEGER&#xff0c;其值为 9007199254740991。这是因为 JavaScript 中使用双精度浮点数表示数字&#xff0c;双精度浮点数的符号位占 1 位&#xff0c;指数位占 11 位&#xff…