NAT技术总结与双向NAT配置案例
NAT的转换方式:
1.静态转换:固定的一对一IP地址映射。
interface GigabitEthernet0/0/1
ip address 122.1.2.24
nat static global 122.1.2.1 inside 192.168.1.1 #在路由器出接口 公网地址 私网地址。
2.动态转换:Basic NAT
nat address-group 1 122.1.2.1 122.1.2.3
acl 2000
rule 5 permit source 192.168.1.0 0.0.0.255
quit
interface GigabitEthernet0/0/1
nat outbound 2000 address-group 1 no-pat #定义一个地址组,再定义acl策略进行绑定
3.端口多路复用PAT:复用的端口只能是1025-65535
nat outbound 2000 address-group 1 #和前面一样,最后一句去掉no-pat
4.Easy IP:当你无法知道运营商分配的地址时
acl 2000
rule 5 permit source 192.168.1.0 0.0.0.255
quit
interface GigabitEthernet0/0/1
nat outbound 2000 # 在接口配置,不写公网IP。
5.NAT Server:NAT具有屏蔽内网主机的作用,但有时内网需向外网提供服务。
此时使用NAT Server 以便外网用户随时访问内网服务器。
nat server protocol tcp global 122.1.2.1 www inside 192.168.1.2 www
协议端口可以不写
防火墙上配置NAT
nat-policy
rule name abc
source-zone trust
action source-nat address-group group1# 配置NAT策略规则“abc”的动作,对匹配NAT策略规则的流量做源NAT转换,
并采用地址池“group1”作为转换后的源地址。
案例:
nat环路问题,pc1发送查找202.1.1.10的路由 经过由路由器r1交给防火墙,防火墙30位掩码地址段只有.1和.2两个地址,snat地址不在其中。
根据默认路由规则又交还给r1,两者反复直到包的ttl为0才丢弃。
因此外部主机去访问源公网地址池必须配置黑洞路由直接丢弃,防环。


另外源nat地址与防火墙在同一子网也建议配置黑洞路由,
源nat是为了client通过公网去访问server1,
但是如果pc1请求202.1.1.10 路由器R1会发送arp请求查询此地址的mac地址,防火墙收到后会回应给r1自己的mac地址,
并且继续发送arp广播,但是不会回应,如果多个pc1pc2…发送,会浪费防火墙性能。

去年的经典老题:
为什么内网主机没法通过外网ip访问内网服务器?
可能是nat-server,nat-static没配置好,或者acl策略有限制,但假设这些都已经配置完了。问题还会是?
分析查看流量走向,流量(源1.3 目的11.6)经交换机到达Router后会转换目的ip,此时(源1.3,目的1.2),接下来可以到达内网服务器,内网服务器收到报文后,要返回流量。返回时,源目地址交换(源1.2,目的1.3),流量到达交换机(1.2–1.3)后,因为统一网段可直接发给内网主机。
而主机当初发送的是1.3-11.6?内网主机发现自己没有访问1.2,那么会把这个第三步的报文丢掉,导致内网用户没法通过公网ip访问内网服务器。
此是问题所在,解决方法为配置双向nat。
在第二部配置源地址转换,配置目的地址转换。
例如:
192.168.1.3转换成了13.13.13.13
11.11.11.6转换成了192.168.1.2
可以向内网服务器发送,内网服务器返回时的源地址是1.2,目的地址是12.12。
此时报文会回到路由器,路由器查nat表,再把12.12.12.12转回1.3。
总结为:
配置双向nat,使得内网用户通过公网ip访问内网服务器。
相关文章:
NAT技术总结与双向NAT配置案例
NAT的转换方式: 1.静态转换:固定的一对一IP地址映射。 interface GigabitEthernet0/0/1 ip address 122.1.2.24 nat static global 122.1.2.1 inside 192.168.1.1 #在路由器出接口 公网地址 私网地址。 2.动态转换:Basic NAT nat address-gr…...
mysql的explain
explain可以用于select,delete,insert,update的statement。 当explain用于statement时,mysql将会给出其优化器(optimizer)的执行计划。 通过explain字段生成执行计划表。下面来解析这个执行计划表的每一列…...
SpringBoot+Vue实现图片滑块和文字点击验证码
一、背景 1.1 概述 传统字符型验证码展示-填写字符-比对答案的流程,目前已可被机器暴力破解,应用程序容易被自动化脚本和机器人攻击。 摒弃传统字符型验证码,采用行为验证码采用嵌入式集成方式,接入方便,安全&#…...
每日复盘-20240515
仅用于记录当天的市场情况,用于统计交易策略的适用情况,以便程序回测 短线核心:不参与任何级别的调整,采用龙空龙模式 一支股票 10%的时候可以操作, 90%的时间适合空仓等待 国联证券 (1)|[9:25]|[133765万]|31.12 一…...
【Android】Apk图标的提取、相同目录下相同包名提取的不同图标apk但是提取结果相同的bug解决
一般安卓提取apk图标我们有两种常用方法: 1、如果已经获取到 ApplicationInfo 对象(假设名为 appInfo),那么我们获取方法为: appInfo.loadIcon(packageManager)// 返回一个 Drawable 对象2、 如果还没获取到 Applica…...
高校普法|基于SSM+vue的高校普法系统的设计与实现(源码+数据库+文档)
高校普法系统 目录 基于SSM+vue的高校普法系统的设计与实现 一、前言 二、系统设计 三、系统功能设计 1系统功能模块 2管理员功能模块 3律师功能模块 4学生功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获…...
pytest教程-47-钩子函数-pytest_sessionfinish
领取资料,咨询答疑,请➕wei: June__Go 上一小节我们学习了pytest_sessionstart钩子函数的使用方法,本小节我们讲解一下pytest_sessionfinish钩子函数的使用方法。 pytest_sessionfinish 钩子函数在 Pytest 测试会话结束时调用,…...
如何使用Python下载哔哩哔哩(Bilibili)视频字幕
在本文中,我将向大家展示如何使用Python下载哔哩哔哩(Bilibili)视频的字幕。通过这个方法,你可以轻松地获取你喜欢的视频的字幕文件,方便学习和交流。 准备工作 在开始之前,我们需要安装一些必要的库&…...
IP代理网络协议介绍
在IP代理页面上,存在HTTP/HTTPS/Socks5三种协议。它们都是客户端与服务器之间交互的协议。 HTTP HTTP又称之为超文本传输协议,在因特网使用范围广泛。它是一种请求/响应模型,客户端向服务器发送请求,服务器解析请求后对客户端作出…...
渗透相关面试+流量分析
文章目录 简单自我介绍上一个工作的主要内容Hvv的分组和流程你在hvv/攻防演练中取得了哪些成绩? 二、渗透相关面试题基础端口号以及入侵方式OSI七层协议响应状态码都有哪些?**WAF和IPS的区别**盲注是什么?java内存马类型**内存马有几种类型**…...
Shell之高效文本处理命令
目录 一、排序命令—sort 基本语法 常用选项 二、去重命令—uniq 基本语法 常用选项 三、替换命令—tr 基本语法: 常用选项 四、裁剪命令—cut 基本语法: 常用选项 字符串分片 五、拆分命令—split 基本语法: 六、 文件…...
u3d的ab文件注意事项
//----------------LoadAllAB.cs--------------------- using System.Collections;using UnityEngine;namespace System.IO{public class LoadAllAB : MonoBehaviour{ //读取本地string path "Assets/Actors/lznh/ab/animation/t_bl/";// Use this for initiali…...
Go微服务开源框架kratos的依赖注入关系总结
该文章为学习开源微服务框架kratos的学习笔记!官方文档见:简介 | Kratos Kratos 一套轻量级 Go 微服务框架,包含大量微服务相关框架及工具。 一、Kratos 项目结构简介 通过 Kratos 工具生成的 Go工程化项目模板如下: applicati…...
Linux 第三十二章
🐶博主主页:ᰔᩚ. 一怀明月ꦿ ❤️🔥专栏系列:线性代数,C初学者入门训练,题解C,C的使用文章,「初学」C,linux 🔥座右铭:“不要等到什么都没有了…...
手机号码的正则表达式
手机号码的正则表达式会根据不同的国家/地区有所不同,因为每个国家/地区都有自己特定的手机号码格式。但是,我可以为你提供一个通用的正则表达式模板,并给出一些具体国家/地区的例子。 通用模板 一个基本的手机号码正则表达式模板可能如下所…...
机器学习入门介绍
各位大佬好 ,这里是阿川的博客 , 祝您变得更强 个人主页:在线OJ的阿川 大佬的支持和鼓励,将是我成长路上最大的动力 阿川水平有限,如有错误,欢迎大佬指正 目录 三大方向机器学习产生的原因机器如何学习…...
一文说通用户故事点数是什么?
一文说通用户故事点数是什么? 第26期:一文说通用户故事点数是什么? 用户故事点数是一种采用相对估算法进行估算的一种工具,一般采用斐波那契数列表征用户故事里说的大小,采用0 1 2 3 5 8 13这样的一些数字来表征用户…...
GAME101-Lecture07学习
前言 今天主要讲shading(着色)。在讲着色前,要先讲图形中三角形出现遮挡问题的方法(深度缓存或缓冲)。 先采样再模糊错误:对信号的频谱进行翻译(在这期间会有频谱的混叠)ÿ…...
【一步一步了解Java系列】:了解Java与C语言的运算符的“大同小异”
看到这句话的时候证明:此刻你我都在努力~ 加油陌生人~ 个人主页: Gu Gu Study 专栏:一步一步了解Java 喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努…...
ICSE docker related research
ICSE 2024 Empirical Study of the Docker Smells Impact on the Image Size Docker 气味对镜像大小影响的实证研究 Docker 是一种广泛采用的打包和部署应用程序的工具,它利用 Dockerfile 来构建镜像。然而,创建最佳的 Dockerfile 可能具有挑战性&…...
【亲测免费】 轻松转换:Hex文件转Bin文件工具推荐
轻松转换:Hex文件转Bin文件工具推荐 【下载地址】hex文件转bin文件工具 本仓库提供了一个用于将.hex文件转换为.bin文件的工具。该工具包含源代码,用户只需将.hex文件拖放到hex2bin.exe上,即可自动生成对应的.bin文件 项目地址: https://gi…...
掌握C TCP通信:高效实现服务端与客户端数据交互
掌握C# TCP通信:高效实现服务端与客户端数据交互 【下载地址】CTcp通信实战服务端与客户端的数据交互包括指定终端发送与群发功能 本资源提供了一套完整的C#编程解决方案,用于实现TCP协议下的网络通信。通过此示例,您将学习如何在C#应用中搭建…...
前端开发自救指南:不用写测试代码,5分钟用Playwright录制生成E2E测试脚本
前端开发自救指南:5分钟零代码生成E2E测试脚本的Playwright实战 最近在重构公司后台管理系统时,我遇到了一个典型的前端开发困境:每次修改表单验证逻辑后,都需要手动点击十几个字段组合来验证是否会影响其他功能。直到团队里的测…...
3分钟解决Windows热键冲突:Hotkey Detective完全使用指南
3分钟解决Windows热键冲突:Hotkey Detective完全使用指南 【免费下载链接】hotkey-detective A small program for investigating stolen key combinations under Windows 7 and later. 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective 你是否…...
英雄联盟录像编辑完整教程:5分钟掌握League Director专业工具
英雄联盟录像编辑完整教程:5分钟掌握League Director专业工具 【免费下载链接】leaguedirector League Director is a tool for staging and recording videos from League of Legends replays 项目地址: https://gitcode.com/gh_mirrors/le/leaguedirector …...
convoai-cli:命令行集成AI对话,提升开发效率的自动化利器
1. 项目概述:一个面向对话式AI的命令行利器如果你和我一样,经常需要和各类大语言模型(LLM)打交道,无论是调试一个提示词(Prompt),还是批量处理一堆文档,又或者只是想快速…...
【NotebookLM研究问题生成避坑白皮书】:从0到1构建可复现、可评估、可审计的问题生成工作流
更多请点击: https://intelliparadigm.com 第一章:NotebookLM研究问题生成的定义与核心价值 NotebookLM 是 Google 推出的面向研究者与知识工作者的实验性 AI 工具,其“研究问题生成”(Research Question Generation, RQG&#x…...
STR912评估板UART0通信故障排查与解决方案
1. MCBSTR9评估板UART0通信故障排查指南最近在调试STR912芯片的串口通信时,发现一个硬件设计上的"坑"值得分享。使用Keil MCBSTR9评估板V2版本时,UART0(COM1)接口竟然无法正常工作!经过一番排查,…...
单传感器肌电假肢:DTW算法实现92%识别准确率
1. 项目概述肌电假肢技术在过去几十年里取得了显著进展,但传统多传感器系统的高成本和复杂性仍然是阻碍其普及的主要障碍。作为一名从事生物医学工程研究多年的从业者,我一直在寻找更经济高效的解决方案。这项研究提出了一种创新方法:仅使用单…...
phpenv故障排除终极指南:解决PHP版本管理中的10大常见问题
phpenv故障排除终极指南:解决PHP版本管理中的10大常见问题 【免费下载链接】phpenv Simple PHP version management 项目地址: https://gitcode.com/gh_mirrors/ph/phpenv phpenv是一款简单而强大的PHP版本管理工具,专为PHP开发者设计,…...
