NAT地址转换+多出口智能选路,附加实验内容

本章主要讲:基于目标IP、双向地址的转换    

注意:基于目标NAT进行转换  ---基于目标IP进行地址转换一般是应用在服务器端口映射;

NAT的基础知识

1、服务器映射

服务器映射是基于目标端口进行转换,同时端口号也可以进行修改;

服务器映射可能会触环:

条件:

当服务是http时,防火墙上有缺省指向外界,路由器有该接口的IP指向防火墙

我们的服务器映射是做在虚拟IP上的(虚拟接口也可以做端口映射,且这个虚拟IP的网段和边界接口IP不是在同一个网段

情况:

--1、那么当我们从右边路由器访问这个服务时,正常访问80端口完全ok;

--2、当我们从右边外界访问这个服务时,访问的端口不是80端口,就会发生环路;

如:外界数据包发过来,我们的防火墙就会首先尝试进行一个nat地址转换;这里因为端口号不一样,而服务器映射是需要看端口号是否符合要求才会进行转换的;

显然这里端口号不一样就不会进行相应的转换;即使IP一样也不行,需要看端口和IP

而这里转换不了之后,下一步就是匹配路由表;一旦匹配路由表就会匹配上缺省,然后又将数据包丢回路由器了,而路由器匹配上路由发现边界接口的IP是在防火墙上,所以又会丢回来;------触环

解决办法:在缺省路由那个设备上设置空接口,也叫空接口路由;

提问:如果端口映射的接口IP是属于防火墙边界的直连网段的,那么还会不会触环?

不会,因为你看,老样子;

当数据包过来防护墙后,防火墙会先尝试NAT地址转换;显然端口不一样,转换不了;

然后会匹配路由表,因为这边路由表是有缺省和直连路由,这里显然就会匹配上直连路由,而他知道刚刚这个数据包就是从那边直连网段所在接口进来的;

所以他不会再传进去了,那么他会干嘛;当然是最后尝试发送一个ARP,最后再挣扎一下,看是否还有本网段内还有没有漏的;

---空接口也是路由,他叫空接口路由,只是子网掩码比较长

空接口一般是设置在缺省路由所在设备上;

2、NAT和路由谁先谁后

当然是NAT先,进行转换之后再路由;

安全策略的先后:安全策略是必须要一个区域和另一个区域的匹配;所以安全区域的先后取决于数据包刚刚进来的时候源和目标是否是同一个区域;

是同一个区域就需要先NAT转换;

不是同一个区域就先安全策略再nat;

当NAT地址转换设置成出接口转换时,且数据包也是从这个接口出去的,此时其实转换的地址可以是别的边界接口的地址;

我想说的是:nat地址出去的时候怎么转换的,回来的时候肯定也是用相同地址进行转换,即使出去和回来的接口不一样且nat还是出接口转换也不会改变这个规则;

如:

当这里做了一个服务器映射,是21 IP接口上做的

数据包从路由器发向防火墙,且防火墙的两个边界接口都是设置成的出接口地址转换;

当数据包是从21接口进来的,所以数据包在公网的时候,数据包的目标IP肯定就是21;

当数据包又从12接口出去的时候,这时做地址转换其实还是会按着进来的那两个地址进行转换;

所以出去的时候,即使我们是从12接口出去的,但是我们的源地址依然是进来的时候的目标地址21;

nat地址转换规则不会变,即使进来和出去的接口不一致也不会改变

出接口的地址转换可以用其他的出接口地址进行转换

注意:地址转换是首选nat,但是如果没有nat,server map表在老化之前也用来给防火墙用作地址转换;

3、策略路由

抓取目标流量,同时设置路由,然后让抓取的流量往我单独设置的这条路由上走;

---就是修改流量的轨迹,让他按我指定的方向走;

4、双向地址转换:源IP和目标IP都进行转换,端口是否需要转换看需求设置的nat策略

当我们的内部pc想通过公网访问内部服务器时,那么我们的数据包首先从pc来到我们的防洪墙,

--1、如果此时我们的防洪墙做的是基于源IP进行地址转换:显然这样是访问不到内部的服务器的;因为一旦转换,两个都是公网IP,防火墙通过缺省就会丢到路由器,路由器找不到就会直接丢包;

--2、如果我们此时是基于目标进行地址转换:我们的数据包就会把目标修改为内部服务器的真实IP,然后数据包成功来到这个服务器;但是服务器回包的时候,发现目标就是本网段的(因为我们的源IP一直没变,一直是私网的),所以此时我们的服务器就会直接向pc回包,不会去防火墙;

因为前面我的目标IP是服务器公网IP,现在回来的数据包发送者,即源IP不是公网IP,所以这个tcp连接会建立失败,因为前后对不上;这样我们就不能在这个服务器上面进行资源获取;   ---但是ping可以通,因为ping只管发送和回复,所以他才不会管回来的包的源IP是谁,他才不会管回来的包发送者是谁;

--3、如果我们此时是基于双向nat进行地址转换:我们的数据包首先还是会去到防火墙,然后防火墙就会把我的源IP和目标IP进行转换,注意此时的源IP转换之后必须不是在本网段的,不然还是会出现2的问题;当然,为了还满足上网需求,我们应该将源IP转换之后的IP变成公网的IP,所以最后源IP转换成了公网IP,目标IP转换成了私网IP;

发送给服务器后,服务器回包,发现目标IP是不属于本网段的,是公网的,然后也是发送给防火墙,然后防火墙再重新转换回来;服务器发送的源私网IP变成了开始的服务器的公网IP,目标公网IP变成了开始的私网IP;这样回复给了pc,这样pc看是目标发送给我的,就会成功建立tcp连接;

补充:服务器端口映射可以不用真实接口IP,因为数据包进来就会被端口地址映射,所以不是说要必须要外界能和这个IP进行通信,才能用这个IP地址;

5、多出口智能选路:    ---全局选路策略;当边界设备上面有多个出口可以去公网,我们 进行择优选择

--1、基于链路带宽进行负载分担:

如果一条链路超过了过载保护阈值,则该链路不再参加智能选路(如果已经创建了会话

表的流量,则将依然走该链路。),将在剩下链路中继续进行智能选路。

基于源IP的会话保持---来自同一个源IP或者同网段源IP的流量将始终使用同一个出接口转发,适用于对链路切换敏感的场景

基于目的IP的会话保持---访问同一个目标或者相同的目标网段,流量将始终使用同一个出接口转发,适用于对链路切换敏感的场景

--2、基于链路质量进行负载分担

---1,丢包率---防火墙会连续发送若干个(默认5个)探测报文,去计算丢包的比

例。(丢包个数/探测报文个数)---丢包率是最主要的链路质量参数

---2,时延---防火墙会连续发送若干个(默认5个)探测报文,取五次往返时间的平均值

作为时延参数。

---3,延时抖动---防火墙会连续发送若干个(默认5个)探测报文,取两两之间时延差值

的绝对值的平均值。

--3、基于链路权重的负载分担

权重值由网路管理员手工指定

--4根据链路优先级的主备备份

--优先级也是由网络管理员手工指定

--如果没有配置过载保护,则优先级最高的先工作,当该链路故障,则次高的开始工作,其余继续备份,以此类推;

--如果配置了过载保护,则优先级最高的先工作,当超过保护阈值,则次高的开始工作,其余继续备份,相当于此时两条链路同时工作,以此类推。

6、DNS透明代理    ---去的时候修改目标dns,回来的时候又修改回来

举例:百度,其实电信给百度设置的公网IP和移动对百度设置的IP是不一样的;所以一旦选择电信的dns服务器,那么解析出来的IP肯定就是电信对百度设置的IP,那么就会通过电信的线路对百度进行访问;

有时电信的网络链路质量已经很差了,那么我们就应该让后续找想找电信dnf服务器解析的数据包变成去找移动;

---这就是dns透明代理:就是让边界设备,如防火墙修改数据包想访问的dns服务器;

回来的时候又将源IP修改回来;

这样客户端就不会发现;

如:去的时候因为电信的数据链路质量太差了,所以我们的边界就修改了数据包中目标dns的IP,让他去访问移动dns,回来的时候,又将本来源IP是移动dns,修改为电信的dns;提高网络质量的同时不能让客户端知道我修改了他的目标dns

上实验:

前面6题上一个文章见过,我们这次主要讲后面5个;

问题7:办公区可以通过移动和电信进行上网,且是多对多

        在配置时候,我们此时可以直接写一个既不属于电信又不属于移动的地址池的动态nat,这样就可以避免分开写电信和移动的地址此了;减少代码量

问题8:分公司可以访问总公司的服务器

        从题目中我们可以看出,题目是想让公网访问我们内部的服务器,所以我们应当做一个服务器映射,即基于目标的IP的nat;

这里面需要注意的点是:

        1、我们的安全区域是指:哪个区域能访问我们的这个服务器,其实就是用来匹配的源区域;

        2、我们的端口地址转换是可选,这里如果写两个80,那么就代表公网访问80端口,转换之后的端口号还是80,即我的http服务;

其实我们可以看出,既然目标nat可以做,那我们的双向地址转换肯定也可以做

问题9:这里无非就是对链路选路进行一个策略;

        --1、首先在接口里面把接口的带宽配置欧克

        再通过接口创建一个链路接口,链路接口和接口基本一样,只是作用对象不同,链路接口是作用于选路策略的

--2、创建链路接口    ---这里应当选择源进源出,保证网络的稳定性

--3、选择智能选路

这里就是来选择智能选路的方式,同时把接口添加进智能选路机制里面来,让系统进行合理的选路

问题10:翻译一下:分公司内部可以通过公网IP访问内部服务器,公网也可以通过公网IP访问内网服务器;这里后半截问题很简单,公网访问内部服务器,基于目标地址转换即可;

主要是前半截问题:这里只能用双向nat,具体原因请思考包的发送过程!!

选择双向nat转换

配置转换后的源IP、目标IP、源服务、目标端口号(也是目标服务);

注意这里的源服务和目标服务(目标端口号)的个数必须相同

问题11:游客只能通过移动电路访问公网,可以看出这里我们需要写策略路由

策略路由:对抓取到的目标数据包进行一个针对性的转发,就像是为抓取到的数据包专门设置一个针对性的路由

这个出接口:就是针对我们抓取的数据包,我们需要选择哪条路进行一个转发;让你选择是移动这个出口还是电信这个出口

----------------------------------我们只讲思路,不讲详细过程;

                                          过程是背,思路是理解;

                                           想要走多远,10%背+90%理解

祝你年薪百万,成绩辉煌!!!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

力扣每日一题:3011. 判断一个数组是否可以变为有序

力扣官网:前往作答!!!! 今日份每日一题: 题目要求: 给你一个下标从 0 开始且全是 正 整数的数组 nums 。 一次 操作 中,如果两个 相邻 元素在二进制下数位为 1 的数目 相同 &…

Manim的代码练习02:在manim中Dot ,Arrow和NumberPlane对象的使用

Dot:指代点对象或者表示点的符号。Arrow:指代箭头对象,包括直线上的箭头或者向量箭头等。NumberPlane:指代数轴平面对象,在Manim中用来创建包含坐标轴的数学坐标系平面。Text:指代文本对象,用来…

WEB前端02-HTML5基础(02)

7.表格标签 在基本表格结构中&#xff0c;表格标题、项目表头和数据资料构成了表格基本结构三个要素。 table标签&#xff1a;定义表格整体 <caption>我的标题</caption>&#xff1a;表格的标题tr标签&#xff1a;定义表格的行 height&#xff1a;设置行的高度…

探索 Prompt 的世界:让你的 AI 更智能

探索 Prompt 的世界&#xff1a;让你的 AI 更智能 引言什么是 Prompt&#xff1f;Prompt 的重要性如何编写有效的 Prompt1. 清晰明确2. 包含关键细节3. 提供上下文 实践中的 Prompt 技巧1. 多次迭代2. 实验不同风格3. 结合实际应用 总结 引言 随着人工智能&#xff08;AI&…

卸载wps office的几种方法收录

​ 第一种方法: 1.打开【任务管理器】&#xff0c;找到相关程序&#xff0c;点击【结束任务】。任务管理器可以通过左下角搜索找到。 2.点击【开始】&#xff0d;【设置】&#xff0d;【应用】&#xff0d;下拉找到WPS应用&#xff0c;右键卸载&#xff0c;不保留软件配置 …

Java 设计模式系列:解释器模式

简介 解释器模式是一种行为型设计模式&#xff0c;它提供了一种构建抽象语法树的机制&#xff0c;并定义了如何解释这棵树。解释器模式属于编译原理中的语法制导翻译的范畴。 如上图&#xff0c;设计一个软件用来进行加减计算。我们第一想法就是使用工具类&#xff0c;提供对应…

【微信小程序知识点】getApp()全局数据共享,页面间通信,组件间通信

getApp()-全局数据共享 在小程序中&#xff0c;可以通过getApp()方法获取到小程序全局唯一的App实例。因此在App()方法中添加全局共享的数据&#xff0c;方法&#xff0c;从而实现页面&#xff0c;组件的数据传值。 // app.js App({//全局共享的数据globalData: {token: &qu…

prompt第二讲-langchain实现中英翻译助手

文章目录 prompt模板 (prompt template)langchain 中的prompt模板 (prompt template)langchain实现中英翻译助手 prompt模板 (prompt template) 开篇我介绍了在llm中&#xff0c;通常输入的那个字符串会被我们称之为prompt&#xff0c;下面就是一个中英文翻译助手的prompt例子…

从“Hello,World”谈起(C++入门)

前言 c的发展史及c能干什么不能干什么不是我们今天的重点&#xff0c;不在这里展开&#xff0c;有兴趣的朋友可以自行查阅相关资料。今天我们主要是围绕c的入门程序&#xff0c;写一个“hello&#xff0c;world”&#xff0c;并且围绕这个入门程序简单介绍一下c和c的一些语法&…

windows USB 设备驱动开发-USB 功能控制器驱动开发(二)

USB 功能客户端驱动程序使用的 UFX 对象和句柄 USB 函数类扩展 (UFX) 使用 WDF 对象功能来定义这些特定于 USB 的 UFX 对象。 重要的 API UfxDeviceCreateUfxEndpointCreate USB 函数类扩展 (UFX) 使用 WDF 对象功能来定义这些特定于 USB 的 UFX 对象。 这些对象是 WDF 对…

Facebook 开源计算机视觉 (CV) 和 增强现实 (AR) 框架 Ocean

Ocean 是一个独立于平台的框架&#xff0c;支持所有主要操作系统&#xff0c;包括 iOS、Android、Quest、macOS、Windows 和 Linux。它旨在彻底改变计算机视觉和混合现实应用程序的开发。 Ocean 主要使用 C 编写&#xff0c;包括计算机视觉、几何、媒体处理、网络和渲染&#x…

sentinel源码分析: dashboard与微服务的交互、pull模式持久化

文章目录 原始方式微服务端规则如何保存规则如何加载进内存微服务端接收控制台请求控制台推送规则总结 pull拉模式官方demo如何整合Spring Cloud整合Spring Cloud 前置知识 SentinelResource的实现原理、SphU.entry()方法中ProcessorSlotChain链、entry.exit() 建议先会使用se…

鸿蒙系统在服装RFID管理中的应用:打造智能零售新时代

​随着物联网技术的迅速发展&#xff0c;服装零售行业正面临着新的变革与挑战。鸿蒙系统作为新一代智能操作系统&#xff0c;结合RFID技术&#xff0c;为服装行业提供了高效、智能的管理解决方案。常达智能物联&#xff0c;作为RFID技术的领先企业&#xff0c;致力于将鸿蒙系统…

基于JavaSpringBoot+Vue+uniapp微信小程序校园宿舍管理系统设计与实现

基于JavaSpringBootVueuniapp微信小程序实现校园宿舍管理系统设计与实现 目录 第一章 绪论 1.1 研究背景 1.2 研究现状 1.3 研究内容 第二章 相关技术介绍 2.1 Java语言 2.2 HTML网页技术 2.3 MySQL数据库 2.4 Springboot 框架介绍 2.5 VueJS介绍 2.6 ElementUI介绍…

7-1、2、3 IPFS介绍使用及浏览器交互(react+区块链实战)

7-1、2、3 IPFS介绍使用及浏览器交互&#xff08;react区块链实战&#xff09; 7-1 ipfs介绍7-2 IPFS-desktop使用7-3 reactipfs-api浏览器和ipfs交互 7-1 ipfs介绍 IPFS区块链上的文件系统 https://ipfs.io/ 这个网站本身是需要科学上网的 Ipfs是点对点的分布式系统 无限…

如何在 Android Studio 中导出并在 IntelliJ IDEA 中查看应用的 SQLite 数据库

在 Android 应用开发过程中&#xff0c;调试和查看应用内的数据库内容是常见的需求。本文将介绍如何使用 Android Studio 导出应用的 SQLite 数据库&#xff0c;并在 IntelliJ IDEA 中查看该数据库。 步骤一&#xff1a;在设备上运行您的应用 首先&#xff0c;确保您的应用已…

5G-A通感融合赋能低空经济-RedCap芯片在无人机中的应用

1. 引言 随着低空经济的迅速崛起&#xff0c;无人机在物流、巡检、农业等多个领域的应用日益广泛。低空飞行器的高效、安全通信成为制约低空经济发展的关键技术瓶颈。5G-A通感一体化技术通过整合通信与感知功能&#xff0c;为低空网络提供了强大的技术支持。本文探讨了5G-A通感…

未来互联网的新篇章:深度解析Facebook的技术与战略

随着科技的飞速发展和社会的不断变迁&#xff0c;互联网作为全球信息交流的重要平台&#xff0c;正经历着前所未有的变革和演进。作为全球最大的社交媒体平台之一&#xff0c;Facebook不仅是人们沟通、分享和互动的重要场所&#xff0c;更是科技创新和数字化进程的推动者。本文…

自己动手写一个滑动验证码组件(后端为Spring Boot项目)

近期参加的项目&#xff0c;主管丢给我一个任务&#xff0c;说要支持滑动验证码。我身为50岁的软件攻城狮&#xff0c;当时正背着双手&#xff0c;好像一个受训的保安似的&#xff0c;中规中矩地参加每日站会&#xff0c;心想滑动验证码在今时今日已经是标配了&#xff0c;司空…

数据结构——考研笔记(二)线性表的定义和线性表之顺序表

文章目录 二、线性表2.1 定义、基本操作2.1.1 知识总览2.1.2 线性表的定义2.1.3 线性表的基本操作2.1.4 知识回顾与重要考点 2.2 顺序表2.2.1 知识总览2.2.2 顺序表的定义2.2.3 顺序表的实现——静态分配2.2.4 顺序表的实现——动态分配2.2.5 知识回顾与重要考点2.2.6 顺序表的…