当前位置: 首页 > news >正文

NAT(网络地址转换)逻辑图解+实验详解

原理

NAT(Network Address Translation,网络地址转换) 是一种网络技术,用于在IP数据包通过路由器或防火墙时,修改其源IP地址或目标IP地址,以实现不同网络之间的通信。

基础概念

  1. 本来NAT是来解决 IPv4 地址不够用的问题,但是后来被IPV6替代了
  2. NAT 设备通常是路由器或防火墙
  3. 基本NAT可分为静态 NAT 和动态 NAT

为什么需要NAT?

  1. 解决IPv4地址枯竭问题
  2. 保护内网安全

理解NAT,举个例子(不代表实际通信)

总的框架图
在这里插入图片描述

  1. PC2向 Server1 发送报文,网关是 10.0.0.254 ,源地址是 10.0.0.1 ,目的地址是
    211.134.180.2/24。
    在这里插入图片描述
  2. AR1 收到 IP 报文后,查找路由表,将 IP 报文转发至出接口,由于出接口上配置了 NAT ,因此 RT 需要将源地址
    10.0.0.1 转换为nat地址池的公网地址
    在这里插入图片描述
  3. AR1从地址池中查找第一个可用的公网地址 211.134.180.3 ,用这个地址替换数据包的源地址,转换后的数据包源地址为
    211.134.180.3 ,目的地址不变。同时 AR1 在自己的 NAT 表中添加一个表项,记录私有地址 10.0.0.1到 公网地址 211.134.180.3 的映射,RT 再将报文转发给目的地址211.134.180.2。
    在这里插入图片描述
  4. Server 收到报文后做相应处理
  5. Server 发送回应报文,报文的源地址是211.134.180.2 ,目的地址是211.134.180.3
    在这里插入图片描述
  6. AR1 收到报文,发现报文的目的地址 211.134.180.13 在 NAT 地址池内,于是检查 NAT表,找到对应表项后,使用私有地址 10.0.0.1 替换公网地址219.134.180.11,转换后的报文源地址不变,目的地址为10.0.0.1 ,RT在将报文转发给PC1。
    在这里插入图片描述
  7. PC1收到报文,地址转换过程结束
    在这里插入图片描述
    如果PC2也要访问 Server1 ,则AR1会从地址池中分配另一个可用公网地址211.134.180.4 ,并在 NAT 表中添加一个相应的表项,记录B的私有地址10.0.0.2 到公网地址 211.134.180.4 的映射关系。

NAT实验

eNSP拓扑框架图
在这里插入图片描述
目的与要求

  • 内网能够成功连接到sever1的网络

配置:

  • ip配置如上如,现在我们需要进行路由及nat配置

路由配置

  1. 在AR1(NAT)路由器上配置默认路由
    ip route-static 0.0.0.0 0 200.1.1.2
  2. 在AR2(ISP)路由器上配置回程路由
    ip route-static 192.168.1.0 24 200.1.1.1
  3. 在AR1(NAT)路由器上配置NAT
    nat static global 200.1.1.100 inside 192.168.1.100
  4. Server1的配置
    在这里插入图片描述
    这样,来回链路就配置完成了

连通性检测

在这里插入图片描述

抓包验证

  1. 内网接口抓包
    在这里插入图片描述
  2. 外网接口抓包
    在这里插入图片描述
    抓包验证成功

在这里插入图片描述

http://www.xdnf.cn/news/508681.html

相关文章:

  • 抖音视频怎么去掉抖音号水印
  • tomcat查看状态页及调优信息
  • 碎片笔记|PromptStealer复现要点(附Docker简单实用教程)
  • oracle 资源管理器的使用
  • C# String 格式说明符
  • python创建flask项目
  • 动态内存管理2+柔性数组
  • 5.18 day24
  • RabbitMq C++客户端的使用
  • QT聊天项目DAY11
  • 服务端HttpServletRequest、HttpServletResponse、HttpSession
  • 软件工具:批量图片区域识别+重命名文件的方法,发票识别和区域选择方法参考,基于阿里云实现
  • SuperYOLO:多模态遥感图像中的超分辨率辅助目标检测之论文阅读
  • 05 部署Nginx反向代理
  • Flink Table SQL
  • [SpringBoot]Spring MVC(4.0)
  • TASK03【Datawhale 组队学习】搭建向量知识库
  • 【图像处理基石】OpenCV中都有哪些图像增强的工具?
  • 护网行动——蓝队防守方案指南
  • AI写PPT可以用吗?我测试了3款AI写PPT工具,分享感受
  • Vue 3.0 中的slot及使用场景
  • 【通用智能体】Playwright:跨浏览器自动化工具
  • 微信小程序 地图 使用 射线法 判断目标点是否在多边形内部(可用于判断当前位置是否在某个区域内部)
  • C语言内存函数与数据在内存中的存储
  • ctr查看镜像
  • 掌握版本控制从本地到分布式
  • flat_map, flat_set, flat_multimap, flat_multimap
  • 深入理解位图(Bit - set):概念、实现与应用
  • python中http.cookiejar和http.cookie的区别
  • 深入解析Spring Boot与Kafka集成:构建高性能消息驱动应用