NAT学习手册
NAT(Network Address Translation,网络地址转换)是一种在局域网(LAN)内部使用私有地址,而在连接到互联网时将这些私有地址转换为全球唯一且有效的公网地址的技术。这种技术的主要目的是解决IPv4地址空间不足的问题,以及增加网络的安全性
目录
1、静态NAT
2、动态NAT
3、NAPT
4、Easy NAT
1、静态NAT
静态NAT的参数主要包括以下几个方面:
内部IP地址(Inside IP Address):私有网络中的IP地址,通常位于内部网络或局域网(LAN)中。
外部IP地址(Outside IP Address 或 Global IP Address):公有网络中的IP地址,通常位于外部网络或广域网(WAN)中,用于与外部网络通信。
转换类型:指示是否仅对IP地址进行转换,或者是否涉及协议转换。
接口或外部IP选择:指定流量通过的接口或外部IP地址。
端口号(可选):当进行协议转换时,需要指定外部访问的服务端口号以及内部服务器提供的服务端口号。
转换方向:指定是内部网络到外部网络的转换,还是外部网络到内部网络的转换
[AR1]nat static global 1.1.1.10 inside 192.168.1.1 建立1.1.1.10与内部地址192.168.1.1 的映射
[AR1]int g0/0/1
[AR1-GigabitEthernet0/0/1]nat static enable 在出接口开启静态nat
应为服务器的IP是私网,外部设备无法访问,通过静态nat将公网固定的IP地址与内部服务器的IP地址形成映射关系,这样外部设备就可以通过这个公网地址来访问服务器了
2、动态NAT
“NAT地址池”实现“私有地址”和“公有地址”之间的随机转换,一个公有地址在不同的时间可以为多个私有地址进行转换,但在同一时间一个公有地址只能为一个私有地址进行转换。
动态NAT的主要参数
NAT地址池:由多个公有地址组成的地址集合,用于动态分配给内部网络的主机。当内部主机访问外部网络时,会从地址池中临时分配一个未使用的公有地址给该主机。
ACL(访问控制列表):用于匹配需要进行NAT地址转换的源地址范围。通过配置ACL规则,可以限制哪些内部地址可以进行NAT转换,哪些地址则不能。
接口:在连接外部网络的接口上配置动态NAT,以便将内部网络的私有地址转换为公有地址。
[AR1]ip route-static 0.0.0.0 0.0.0.0 200.1.1.60 默认路由
[AR1]nat address-group 2 200.1.1.2 200.1.1.10 创建nat地址池 2-10
[AR1]acl number 2000
[AR1-acl-basic-2000]rule 10 permit source 192.168.10.0 0.0.0.255 匹配规则
[AR1-acl-basic-2000]int g0/0/1
[AR1-GigabitEthernet0/0/1]nat outbound 2000 address-group 2 no-pat 在出接口应用 nat 匹配规则2000 地址池1
3、NAPT
NAPT(Network Address Port Translation),也称为NAT-PT或PAT(Port Address Translation),表示网络地址端口转换,即同时对IP地址和端口号进行转换。
NAPT参数
NAPT需要定义地址池,且不能直接使用出接口的地址。在实际配置中,NAPT的参数可能涉及以下几个方面:
地址池配置:需要为NAPT配置一个或多个公网地址作为地址池,供内部私有地址转换使用。这些地址通常是从ISP(互联网服务提供商)处获得的。
访问控制列表(ACL):用于定义哪些内部地址需要被转换。ACL可以基于源IP地址、目的IP地址、协议类型等条件来匹配流量。
NAPT策略:将ACL与地址池关联起来,形成NAPT策略。当流量匹配到ACL时,就会根据NAPT策略将其源IP地址和端口号转换为地址池中的公网地址和对应的新端口号。
[AR4]nat address-group 1 1.1.1.10 1.1.1.20
[AR4]acl 2000
[AR4-acl-basic-2000]rule permit source 10.1.1.0 0.0.0.255
[AR4]int g0/0/1
[AR4-GigabitEthernet0/0/1]nat outbound 2000 address-group 1
4、Easy NAT
是一种网络地址转换(NAT)技术,它允许多个私有网络地址通过一个动态获取的公网地址的不同端口进行转换,从而访问Internet。这种技术提高了公网地址的利用率,尤其适用于公网IP地址资源有限的环境。
Easy NAT的主要参数
ACL(访问控制列表):用于定义哪些私有网络地址可以进行NAT转换。通过配置ACL规则,可以精确控制哪些流量将被NAT转换。
接口:Easy NAT通常配置在路由器的出口接口上。该接口需要配置一个动态获取的公网地址(如通过DHCP、PPPoE等方式获取)。
NAT方向:通常为出站方向(outbound),即私有网络地址转换为公网地址以访问Internet。
无需地址池:与传统的NAT技术不同,Easy NAT不需要预先配置地址池。它直接使用出口接口的公网地址和动态分配的端口进行NAT转换。
[AR7]nat address-group 1 198.76.28.10 198.76.28.20
[AR7]acl 2000
[AR7-acl-basic-2000]rule permit source 10.0.0.0 0.0.0.255
[AR7]int g0/0/1
[AR7-GigabitEthernet0/0/1]nat outbound 2000 address-group 1
相关文章:
NAT学习手册
NAT(Network Address Translation,网络地址转换)是一种在局域网(LAN)内部使用私有地址,而在连接到互联网时将这些私有地址转换为全球唯一且有效的公网地址的技术。这种技术的主要目的是解决IPv4地址空间不足…...
python -从文件夹批量提取pdf文章的第n页,并存储起来
python -从文件夹批量提取pdf文章的第n页,并存储起来 废话不多说,看下面代码 讲解一下下面代码 reader PyPDF2.PdfReader (file) 将文件转化为PdfReader 对象,方便使用内置方法。 first_page reader.pages[0] 提取第一页 writer PyPDF…...
RPC中定时器制作思路
定时器设计 time_event time_event 类用来封装定时时间,内部需要包含一个任务执行时间,是否重复标记、是否取消标记,对于重复任务,还需要一个重复间隔时间。以及一个回调函数,用来执行任务到期后需要执行的动作。 构…...
Flutter简单实现滑块验证
现在实现一个 Flutter 滑动验证组件,类似于许多网站和应用程序中常见的“滑动以验证”功能。它通过滑动一个滑块来完成验证操作,用户需要将滑块拖动到指定位置以完成验证。 前置知识点整理 StatefulWidget 在 Flutter 中,StatefulWidget 是…...
第33周:运动鞋识别(Tensorflow实战第五周)
目录 前言 一、前期工作 1.1 设置GPU 1.2 导入数据 1.3 查看数据 二、数据预处理 2.1 加载数据 2.2 可视化数据 2.3 再次检查数据 2.4 配置数据集 2.4.1 基本概念介绍 2.4.2 代码完成 三、构建CNN网络 四、训练模型 4.1 设置动态学习率 4.2 早停与保存最佳模型…...
C#中switch语句使用
编写一个程序,使用switch语句将用户输入的分数转换成等级,如表 private static void Main(string[] args) { Console.WriteLine("请输入分数:"); int score int.Parse(Console.ReadLine()); switch (score) …...
2024.11.28(作业)
思维导图 功能函数声明文件 #ifndef _FUN_H__ #define _FUN_H__ #include <myhead.h>#define MAX 50 //数组大小 #define QAZ 20 //长度和字符串大小typedef int datatype; //数据元素类型//2.1 定义顺序表类型 typedef struct {datatype data[MAX];int len; }S…...
充分统计量(Sufficient Statistic)概念与应用: 中英双语
充分统计量:概念与应用 在统计学中,充分统计量(Sufficient Statistic) 是一个核心概念。它是从样本中计算得出的函数,能够完整且无损地表征样本中与分布参数相关的信息。在参数估计中,充分统计量能够帮助我…...
2. STM32_中断
中断 中断是什么: 打断CPU执行正常的程序,转而处理紧急程序,然后返回原暂停的程序继续运行,就叫中断。 中断的意义: 中断可以高效处理紧急程序,不会一直占用CPU资源。如实时控制、故障处理、处理不确定…...
CAD 文件 批量转为PDF或批量打印
CAD 文件 批量转为PDF或批量打印,还是比较稳定的 1.需要本地安装CAD软件 2.通过 Everything 搜索工具搜索,DWG To PDF.pc3 ,获取到文件目录 ,替换到代码中, originalValue ACADPref.PrinterConfigPath \ r"C:…...
明明的随机数
题目描述 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉ÿ…...
2024金盾信安杯线上赛 MISC ezpng[wp]
下载题目发现给了个password和png 图片发现损坏的 password丢随波逐流一键解 base64 给出解码的结果是 cimbar搜索发现在Github有工具 然后对附件中的图片进行小厨房xor 得到一张新图片 利用工具进行跑出答案...
C与指针。
目录 1_指针理解 1.1变量的值 1.2变量的地址 1.3指针 1.4取变量的地址 2_分析指针 2.1分析指针变量的要素 2.2根据需求定义指针变量 3_指针的使用 3.1指针对变量的读操作 3.2指针对变量的写操作 4_指针占用空间的大小与位移 4.1指针占用空间的大小 4.2指针的位移…...
使用 Selenium 和 Python 爬取腾讯新闻:从基础到实践
使用 Selenium 和 Python 爬取腾讯新闻:从基础到实践 在这篇博客中,我们将介绍如何利用 Selenium 和 Python 爬取腾讯新闻的内容,并将结果保存到 CSV 文件中。本教程包含以下内容: 项目简介依赖安装实现功能的代码实现中的关键技…...
ElasticSearch的下载和基本使用(通过apifox)
1.概述 一个开源的高扩展的分布式全文检索引擎,近乎实时的存储,检索数据 2.安装路径 Elasticsearch 7.8.0 | Elastic 安装后启动elasticsearch-7.8.0\bin里的elasticsearch.bat文件, 启动后就可以访问本地的es库http://localhost:9200/ …...
处理HTTP请求的两种常见方式:多个处理器(Handler)、多个处理函数(HandleFunc),两者有什么区别
一、多个处理器(Handler)、多个处理函数(HandleFunc),两者的区别: 在Go语言中,处理HTTP请求的两种常见方式是使用http.Handler接口和http.HandleFunc函数。它们都用于定义如何处理HTTP请求,但它们之间有一些关键的区别࿱…...
在oracle下载jdk显示400 Bad Request Request Header Or Cookie Too Large
下载JDK17,官网地址:【https://www.oracle.com/cn/java/technologies/downloads/#jdk17-windows】 问题: 出现 400 Bad Request: Request Header Or Cookie Too Large 错误,通常是由于浏览器存储的 Cookies 或请求头过大所导致的…...
机器学习与深度学习-2-Softmax回归从零开始实现
机器学习与深度学习-2-Softmax回归从零开始实现 1 前言 内容来源于沐神的《动手学习深度学习》课程,本篇博客对于Softmax回归从零开始实现进行重述,依旧是根据Python编程的PEP8规范,将沐神的template代码进行简单的修改。近期有点懒散哈哈哈…...
Vue3之弹窗
文章目录 第一步、引入JS第二步、弹框 在前端开发语言Vue3,在管理端如何进行弹窗?下面根据API实现效果。 Element API文档: Element-plus文档 搭建环境可参考博客【 初探Vue3环境搭建与nvm使用】 第一步、引入JS <script lang"ts&…...
计算机的错误计算(一百七十一)
摘要 探讨 MATLAB 中秦九韶(Horner)多项式的错误计算。 例1. 用秦九韶(Horner)算法计算(一百零七)例1中多项式 直接贴图吧: 这样,MATLAB 给出的仍然是错误结果,因为准…...
利用Python爬虫精准获取淘宝商品详情的深度解析
在数字化时代,数据的价值日益凸显,尤其是在电子商务领域。淘宝作为中国最大的电商平台之一,拥有海量的商品数据,对于研究市场趋势、分析消费者行为等具有重要意义。本文将详细介绍如何使用Python编写爬虫程序,精准获取…...
_C#_串口助手_字符串拼接缺失问题(未知原理)
最近使用WPF开发串口助手时,遇到一个很奇怪的问题,无论是主线程、异步还是多线程,当串口接收速度达到0.016s一次以上,就会发生字符串缺失问题并且很卡。而0.016s就一切如常,仿佛0.015s与0.016s是天堑之隔。 同一份代码…...
volcano k8s 部署
下载volcano-development文件 官网 https://volcano.sh/zh/docs/installation/volcano-development.yaml wget https://raw.githubusercontent.com/volcano-sh/volcano/master/installer/volcano-development.yaml部署volcano 查下需要下载的镜像 grep vc- volcano-develo…...
Linux---对时/定时服务
文章目录 目录 文章目录 前言 一.对时服务 服务端配置 客户端配置 二.定时服务 单次定时任务 循环定时任务 前言 在当今信息化高速发展的时代,时间的准确性和任务的定时执行对于各种系统和服务来说至关重要。Linux操作系统,凭借其强大的功能和灵活的…...
13 设计模式之外观模式(家庭影院案例)
一、什么是外观模式? 1.定义 在日常生活中,许多人喜欢通过遥控器来控制家中的电视、音响、DVD 播放器等设备。虽然这些设备各自独立工作,但遥控器提供了一个简洁的界面,让用户可以轻松地操作多个设备。而这一设计理念正是 外观模…...
spring boot整合ArtemisMQ进行手动消息确认
1、SpringBoot整合ArtemisMQ进行手动消息确认使用的是: factory.setSessionTransacted(false); factory.setSessionAcknowledgeMode(ActiveMQJMSConstants.INDIVIDUAL_ACKNOWLEDGE); 2、SpringBoot整合ActiveMQ进行手动消息确认使用的是: factory.setSe…...
dpwwn02靶场
靶机下载地址:https://download.vulnhub.com/dpwwn/dpwwn-02.zip 信息收集 ip add 查看kali Linux虚拟机的IP为:10.10.10.128 https://vulnhub.com/entry/dpwwn-2,343/中查看靶机的信息,IP固定为10.10.10.10 所以kali Linux添加仅主机网卡…...
展示和添加篮球队信息--laravel与elementplus
之前使用laravel与inertia来做过一样的功能,感觉不满意,因此再结合elementplus重做一遍,先展示下重做后的效果。重写后的代码相比之下比较优雅。 球队首页 球队添加页 球员首页 很明显的改变,我新增了侧栏菜单来控制局部模块(这里是指NBABasketba…...
K8S疑难概念理解——Pod,应该以哪种Kind来部署应用,为什么不直接Pod这种kind?
文章目录 一、Pod概念深度理解,为什么一般不直接以kindPod资源类型来部署应用?二、究竟应该以哪种资源类型来部署应用 一、Pod概念深度理解,为什么一般不直接以kindPod资源类型来部署应用? Pod是Kubernetes中的最小部署单元,可以包含一个或…...
centos7怎么安装keepalive+nginx
在CentOS 7上安装Keepalived和Nginx,可以按照以下步骤进行: 安装Nginx 添加Nginx到Yum源: rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm安装Nginx: yum install -y ng…...
DevOps工程技术价值流:Jenkins驱动的持续集成与交付实践
一、Jenkins系统概述 Jenkins:开源CI/CD引擎的佼佼者 Jenkins,作为一款基于Java的开源持续集成(CI)与持续交付(CD)系统,凭借其强大的插件生态系统,成为DevOps实践中不可或缺的核心…...
el-select 修改样式
这样漂亮的页面,搭配的却是一个白色风格的下拉框 ,这也过于刺眼。。。 调整后样式为: 灯红酒绿总有人看着眼杂,但将风格统一终究是上上选择。下面来处理这个问题。 分为两部分。 第一部分:是修改触发框的样式 第二部…...
文本内容处理命令和正则表达式
文本内容处理命令 grep 用来过滤文本内容,以匹配要查询的结果。 -m 数字 匹配几次后停止: grep -m 1 /root/etc/passwd #查找包含root的行 -v 取反 -i 忽略字符的大小写,默认的,可以不加 -n 显示匹配的行号 -c 统计匹配的…...
【PlantUML系列】类图(一)
目录 一、类 二、接口 三、抽象类 四、泛型类 五、类之间的关系 六、添加注释 七、包图 八、皮肤参数 一、类 使用class关键字定义类,类名后跟大括号,声明类的属性和方法。 属性:格式为{visibility} attributeName : AttributeType…...
【Leetcode Top 100】21. 合并两个有序链表
问题背景 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 数据约束 两个链表的节点数目范围是 [ 0 , 50 ] [0, 50] [0,50] − 100 ≤ N o d e . v a l ≤ 100 -100 \le Node.val \le 100 −100≤Node.val≤100 l 1 l_1 …...
【真正离线安装】Adobe Flash Player 32.0.0.156 插件离线安装包下载(无需联网安装)
网上很多人声称并提供的flash离线安装包是需要联网才能安装成功的,其实就是在线安装包,而这里提供的是真正的离线安装包,无需联网即可安装成功。 点击下面地址下载离线安装包: Adobe Flash Player 32.0.0.156 for IE Adobe Fla…...
UG NX二次开发(C#)-如何进行NX多版本的编译
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1、前言2、以删除对象为例3、解决方案1、前言 由于UG NX的版本不同,新版本与旧版本开发过程中,如果是在一个工程中,其会出现低版本不能编译高版本NX的问题,这是因为高版本会引入新的函数,或者…...
Spark优化--开发调优、资源调优、数据倾斜调优和shuffle调优等
针对Spark优化,我们可以从多个角度进行,包括开发调优、资源调优、数据倾斜调优和shuffle调优等。以下是一些具体的优化方法: 1. 开发调优 避免创建重复的RDD:对于同一份数据,只应该创建一个RDD,避免创建多…...
911事件反思:灾难通信和ddos之间的取舍
流量分析与监控 建立基线流量模型:在正常情况下监控和记录网络流量,建立正常流量的基线。这样,当突发请求发生时,可以更容易地识别出流量的异常变化。 实时流量监控:使用流量分析工具实时监控网络流量,快速…...
网络安全之IP伪造
眼下非常多站点的涉及存在一些安全漏洞,黑客easy使用ip伪造、session劫持、xss攻击、session注入等手段危害站点安全。在纪录片《互联网之子》(建议搞IT的都要看下)中。亚伦斯沃茨(真实人物,神一般的存在)涉…...
算法笔记:力扣24. 两两交换链表中的节点
思路: 本题最简单的就是通过递归的形式去实现 class Solution {public ListNode swapPairs(ListNode head) {if(head null || head.next null){return head;}ListNode next head.next;head.next swapPairs(next.next);next.next head;return next;} } 对于链…...
Shell脚本小练习
学习了这么长时间Shell脚本,总得来一次小小的练习吧,那么请看下文! 1.用Shell写一个小计算器。 通过read命令获取用户输入的表达式,表达式的格式设定为操作数1 运算符 操作数2,例如53,然后利用设计的脚本…...
Fastify装饰器:增强你的路由处理功能加入日志
Fastify以其出色的性能和扩展性脱颖而出。装饰器是Fastify提供的一个强大功能,它允许开发者在不修改核心代码的情况下,向请求(Request)和响应(Response)对象添加自定义属性和方法。本文将通过一个简单的示例…...
node.js基础学习-url模块-url地址处理(二)
前言 前面我们创建了一个HTTP服务器,如果只是简单的http://localhost:3000/about这种链接我们是可以处理的,但是实际运用中一般链接都会带参数,这样的话如果我们只是简单的判断链接来分配数据,就会报404找不到链接。为了解决这个问…...
Vue如何加载十万条数据
加载十万条数据到 Vue 应用中是一个相对复杂的问题,主要因为渲染大量数据可能会导致性能瓶颈,尤其是在前端性能较低的设备上。为了确保加载大量数据时,页面不会卡顿或崩溃,我们通常采取一些优化手段,以下是几种常用的方…...
重生之我在异世界学编程之C语言:二维数组篇
大家好,这里是小编的博客频道 小编的博客:就爱学编程 很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!! 本文目录 引言正文一 二维数组的创建1. 二维数组的…...
linux——进程间通信及管道的应用场景
linux进程的控制-CSDN博客 liunx——进程间通信(管道通信)-CSDN博客 文章目录 文章目录 前言 二、管道的应用 1.创建子进程 1、描述: 2.创建进程及管理 3、子进程接受任务 4、控制子进程 总结 前言 上篇博客我们学习了进程间通信&…...
深度学习基础3
目录 1.过拟合与欠拟合 1.1 过拟合 1.2 欠拟合 1.2 解决欠拟合 1.2.1 L2正则化 1.2.2 L1正则化 1.2.3 Dropout 1.2.4 简化模型 1.2.5 数据增强 1.2.6 早停 1.2.7 模型集成 1.2.8 交叉验证 2.批量标准化 2.1 实现过程 2.1.1 计算均值和方差 2.1.2 标准化 2.1.3…...
靶机dpwwn-01
靶机下载地址:https://download.vulnhub.com/dpwwn/dpwwn-01.zip 信息收集 扫描靶机的IP地址 arp-scan -l 获得靶机的IP地址:192.168.200.130 查看靶机的服务类型,端口信息 nmap -sS -sV -T4 -A -p- 192.168.200.130 开启了22…...
Python毕业设计选题:基于django+vue的智慧社区可视化平台的设计与实现+spider
开发语言:Python框架:djangoPython版本:python3.7.7数据库:mysql 5.7数据库工具:Navicat11开发软件:PyCharm 系统展示 管理员登录 管理员功能界面 养老机构管理 业主管理 社区安防管理 社区设施管理 车位…...