NAT笔记

NAT 用于实现私网和公网之间的互访。

静态NAT

静态NAT实现私网地址和公网地址的一对一转换。

有2种配置方法:

全局模式下设置静态NAT

[R1]nat static global 172.10.10.10 inside 192.168.10.10
[R1]int g0/0/1 #外网出口
[R1-GigabitEthernet0/0/1]nat static enable

直接在接口上声明静态NAT

[R1]int g0/0/1 #外网出口
[R1-GigabitEthernet0/0/1]nat static global 172.10.10.10 inside 192.168.10.10[R1]dis nat static #查看NAT静态配置信息

动态NAT

有地址池的概念,多个私网IP地址对应多个公网IP地址,基于地址池一对一映射。

配置方法:

定义合法IP地址池
[R1]nat address-group 1 100.0.0.100 100.0.0.200 定义ACL
[R1]acl 2000
[R1-acl-basic-2000]rule permit source 192.168.10.0 0.0.0.255在外网出口配置动态IP地址转换,no pat表示不做端口转换,只做IP地址转换,默认为pat
[R1-acl-basic-2000]int g0/0/1
[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1 no-pat     查看NAT Outbound的信息
[R1]dis nat outbound

PAT端口多路复用

PAT引入了端口的概念,可以将多个私网IP映射到同一个外网IP的不同端口上。

PAT的类型有以下:

  1. 动态PAT,包括NAPT和Easy IP。
  2. 静态PAT,包括NAT Server。
NAPT

多个私网I P对应外网地址池IP,配置方法与动态NAT类似。

定义合法IP地址池
[R1]nat address-group 1 100.0.0.100 100.0.0.200 定义ACL
[R1]acl 2000
[R1-acl-basic-2000]rule permit source 192.168.10.0 0.0.0.255在外网出口配置PAT转化
[R1-acl-basic-2000]int g0/0/1
[R1-GigabitEthernet0/0/1]nat outbound 2000 address-group 1     查看NAT Outbound的信息
[R1]dis nat outbound
EasyIp 

EasyIp实现多个私网IP对应外网出口的公网IP地址

定义ACL
[R1]acl 2000
[R1-acl-adv-2000]rule permit ip source 192.168.10.0 0.0.0.255 在外网出口上设置IP地址转换
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]nat outbound 2000      查看NAT的流表信息   
[R1]display nat session all 
NATServer

端口映射,将私网地址端口映射到公网地址,实现内网服务器供外网用户访问。

在外网接口,将私网服务器地址和公网地址做IP映射绑定
[R1]int g0/0/1
[R1-GigabitEthernet0/0/1]nat server protocol tcp global 12.12.12.12 www inside 10.1.1.1 www在外网接口,将内网服务器地址和外网接口做端口映射绑定
[R1-GigabitEthernet0/0/1]nat server protocol tcp global current-interface 8080 inside 10.1.1.1 www

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

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

相关文章

③【Docker】Docker部署Nginx

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ ③【Docker】Docker部署Nginx docker拉取nginx…

Linux环境下安装DGL及其CUDA

前段时间看到一篇AAAI2024的论文Patch-wise Graph Contrastive Learning for Image Translation,它采用GNN的思想来进行image-to-image translation的任务,非常的新颖,但我进行复现的时候,发现直接下载它里面需要的DGL库是无法运行…

MyBatis 之三:配置文件详解和 Mapper 接口方式

配置文件 配置文件中常用的元素: configuration 配置 properties 可以配置在Java 属性配置文件中 settings 修改 MyBatis 在运行时的行为方式 typeAliases 为 Java 类型命名一个别名(简称) typeHandlers 类型处理器 objectFactory 对象工厂 p…

第一次vp蓝桥杯

最失败的一集,这是学了个什么? 果然是一个很失败的人呢,第一次逃晚自习就被辅导员发现了呢,还给我打电话,虽然知道可能他也没办法。但这就更体现我很失败了。 题也不会写,其他的方面也不是很如意。嘻嘻嘻…

【Flutter 面试题】Flutter如何处理响应式布局?

【Flutter 面试题】Flutter如何处理响应式布局? 文章目录 写在前面口述回答补充说明完整代码示例运行结果详细说明 写在前面 🙋 关于我 ,小雨青年 👉 CSDN博客专家,GitChat专栏作者,阿里云社区专家博主&am…

QT--对象模型(对象树)

对象模型 在qt中创建对象的时候会提供一个parent对象指针Q0bject是以对象树的形式组织起来的。当你创建一个Q0bject对象时,会看到Q0bject的构造函数接收一个Q0bject_指针作为参数,这个参数就是parent,也就是父对象指针。这相当于&#xff0c…

NB-IoT模块

目录 一. NB-IoT模块实物图 二. BC20/NB-IoT模块产品规格 三. 指令顺序 1. AT判断BC20模组是否正常 2. ATE0返回OK,已经返回回显 3. ATCSQ 4. AT_CEREG? 5. ATCGATT? 6. ATCGATT? 四. OneNet 连接 1. AT 查看 NB(当前NB),云平台根据这两个…

从顺序表到链表再到队列和栈

1.顺序表 顺序表,简单的说,就是一种用结构体储存的数组。只是一般顺序表还有着记录存入数据个数size和数组总空间位置个数capacity 我们要定义一个顺序表的结构体,就要先确定顺序表的储存的数据,然后假设数组是固定长度&am…

链表的分类有哪些?

1、典型回答 链表 (Linked List) 是一种常见的线性数据结构,由一系列节点(Node)组成。每个节点都包含数据(element) 和一个指向下一个节点的指针 (next) 。通过这种方式,每个节点可以按照顺序链接在一起,形成一个链表。 线性数据结构是一种常…

ArcGIS学习(十五)用地适宜性评价

ArcGIS学习(十五)用地适宜性评价 本任务给大家带来的内容是用地适宜性评价。 用地适宜性评价是大家在平时工作中最常接触到的分析场景之一。尤其是在国土空间规划的大背景下,用地适宜性评价变得越来越重要。 此外,我们之前的任务主要是使用矢量数据进行分析。本案例是主讲…

Java中的 “==” 与 equals 的区别

Java中的 “” 与 equals 的区别 1.“” 在Java中有两大类数据类型,一类是基础数据类型共有八种分别是byte、 short、 int、 long、 float、 double、 char、boolean,另一类则是引用数据类型,例如String、Integer等等。 “ ” 作为比较运算…

电商按关键字搜索temu商品 API

公共参数 名称类型必须描述keyString是免费申请调用key密钥(必须以GET方式拼接在URL中)secretString是调用密钥api_nameString是API接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等]cacheString否[yes,no]默…

切片上的健壮范型函数

在这篇博客文章中,我们将讨论如何通过了解切片在内存中的表示方式以及这对垃圾收集器的影响,更有效地使用slices包中提供的函数。我们还将介绍我们最近如何调整这些函数,使它们变得不那么令人惊讶。 借助类型参数,我们可以为所有…

为什么说PostgreSQL是面向对象的数据库?

PostgreSQL 官方宣称它是世界上最先进的开源对象-关系型数据库管理系统(ORDBMS)。相信大家对于关系型数据库并不陌生,它基于关系模型(由行和列组成的二维表),定义了完整性约束并且使用 SQL 作为操作语言。 …

C++之职工管理系统

1、管理系统需求 职工管理系统可以用来管理公司内所有员工的信息 主要利用C来实现一个基于多态的职工管理系统 公司中职工分为三类:普通员工、经理、老板,显示信息时,需要显示职工编号、职工姓名、职工岗位、以及职责。 普通员工职责:完成经理交给的…

自己写的whoami

一、代码 #include<stdio.h> #include<stdlib.h> #include<proc/readproc.h> int main() {struct PROCTAB *pt;struct proc_t *p;char *cmd;ptmalloc(sizeof(struct PROCTAB));pmalloc(sizeof(struct proc_t));ptopenproc(0x0028);while(readproc(pt,p)!NUL…

手撸dynamic源码详细讲解

本文源码解析基于3.3.1版本。只截了重点代码&#xff0c;如果需要看完整代码&#xff0c;可以去github拉取。 1 自动配置的实现 一般情况下&#xff0c;一个starter的最好入手点就是自动配置类&#xff0c;在 META-INF/spring.factories文件中指定自动配置类入口 org.spring…

CentOS无法解析部分网站(域名)

我正在安装helm软件&#xff0c;参考官方文档&#xff0c;要求下载 get-helm-3 这个文件。 但是我执行该条命令后&#xff0c;报错 连接被拒绝&#xff1a; curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 # curl: (7) Fai…

【linux升级gcc版本教程】

1下载gcc新版本 因为从浏览器下载比较慢&#xff0c;所以直接在服务器下载 cd /opt/soft目录 wget https://ftp.gnu.org/gnu/gcc/gcc-10.1.0/gcc-10.1.0.tar.gz #解压 tar -zvxf gcc-10.1.0.tar.gz --directory/usr/local/2下载gcc需要的依赖 1&#xff09;以下同样在服务器中…

python面向对象思想

面向对象思想是一种程序设计的范式&#xff0c;它以对象作为程序的基本单元&#xff0c;对象包含数据和方法。在Python中&#xff0c;一切皆为对象&#xff0c;包括数字、字符串、函数等。以下是一些关于Python面向对象编程&#xff08;OOP&#xff09;的基本概念&#xff1a; …