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

NAT原理与实验指南:网络地址转换技术解析与实践

NAT实验

NAT(Network Address Translation,网络地址转换):

  1. NAT技术的介绍:

    随着Internet用户的快速增长,以及地址分配不均等因素,IPv4地址(约40亿的空间地址)已经陷入不敷使用的窘境。为了解决这个问题,IETF 提出了 NAT 解决方案。IP地址分为公有地址(Global Address)和私有地址(Private Address)。公有地址由 IANA 统一分配,用于 Internet 通讯;私有地址可以自由分配,用于网络内部通讯。NAT技术的主要作用就是将私有地址转换成共有地址,使私有网络中的主机可以通过共享少量公有地址访问 Internet。

    NAT只是一种过渡技术,从根本上解决地址供需问题的方式是采用支持更大地址空间的下一代IP技术——IPv6 协议。

  2. NAT核心原理:

    • 出方向(私→公):将私网IP+端口映射为公网IP+端口。
    • 入方向(公→私):根据映射表将公网IP+端口还原为私网IP+端口。
    • 关键表项:设备动态维护 NAT Session表(记录映射关系)和 NAT地址池(公网地址资源)。
    • IPv4单播地址预留地址段(Private Address Space):
      • 10.0.0.0/8*(10.0.0.0 ~ 10.255.255.255)*
      • 172.16.0.0/12*(172.16.255.255 ~ 172.31.255.255)*
      • 192.168.0.0/16*(192.168.0.0 ~ 192.168.255.255)*
  3. NAT分类:

    • 静态NAT
      • 原理
        一个私网IP固定绑定一个公网IP(无端口转换),建立双向静态映射。
      • 特点
        • 公网IP永久独占,浪费地址资源
        • 支持入站访问(公网可直接访问私网主机)
        • 无会话超时机制
    • 基本NAT(动态NAT)
      • 原理
        私网IP动态分配公网IP(不转换端口),地址池耗尽时新连接失败。
      • 特点
        • 不支持端口复用,一个私网连接独占一个公网IP
        • 会话超时后地址回收
        • 不支持入站访问
    • NAPT(Network Address Port Translation)
      • 原理
        多个私网IP共享公网地址池,通过端口号区分不同会话(IP+端口同时转换)。
      • 特点
        • 高效利用IP(1个公网IP支持数万并发)
        • 仅支持出站访问
        • 需维护复杂Session表
    • Easy IP
      • 原理
        NAPT的特例,直接使用公网接口的IP作为转换地址(无需地址池)。
      • 特点
        • 节省配置(尤其适合动态获取公网IP的场景)
        • 单IP支撑整个私网出口
        • 家庭宽带/小型企业首选
    • NAT Server
      • 原理
        公网IP的指定端口静态映射到私网服务器的指定端口(支持协议类型)。
      • 特点
        • 精准控制入站流量
        • 支持端口重定向(如公网8080→私网80)
        • 与防火墙策略配合保障安全
  4. 决策图:

    在这里插入图片描述

实验:

一、实验拓扑

在这里插入图片描述

二、实验需求
  1. 按照图示配置 IP地址
  2. 在 R1 和 R3 上配置默认路由指向公网,使私网A、B接入互联网
  3. 私网A按照图示配置 VLAN ,通过R1单臂路由访问互联网
  4. 私网A通过在 R1 上配置 NAPT使 VLAN10 和 VLAN20 都使用 R1 的公网地址访问互联网
  5. 私网B通过在 R3 上配置 EASY IP 访问互联网
  6. 私网A配置 NAT SERVER 把 FTP-A 的 FTP 服务映射到公网,使用 PCB 访问 FTP-A 的 FTP 服务
三、实验步骤
  1. 按照图示配置 IP地址,略

  2. 在 R1 和 R3 上配置默认路由指向公网,使私网A、B接入互联网,略
    静态路由实验:配置简单的高安全低消耗的可控性强路由
    三个静态路由实验:一篇文章教会你怎么配置静态路由

  3. 私网A按照图示配置 VLAN ,通过R1单臂路由访问互联网,略
    单臂路由网络隔离与跨 VLAN 通信实验

  4. 私网A通过在 R1 上配置 NAPT使 VLAN10 和 VLAN20 都使用 R1 的公网地址访问互联网

    [R1]acl basic 2000
    [R1-acl-ipv4-basic-2000]rule permit source 192.168.1.0 0.0.0.255
    [R1-acl-ipv4-basic-2000]rule permit source 192.168.2.0 0.0.0.255
    [R1-acl-ipv4-basic-2000]qu
    
    [R1]nat add
    [R1]nat address-group 1
    [R1-address-group-1]address 100.1.1.1 100.1.1.1
    [R1-address-group-1]qu
    
    [R1]int g0/1
    [R1-GigabitEthernet0/1]nat outbound 2000 address-group 1
    [R1-GigabitEthernet0/1]qu
    
  5. 私网B通过在 R3 上配置 EASY IP 访问互联网

    [R3]acl basic 2000
    [R3-acl-ipv4-basic-2000]rule permit source 192.168.1.0 0.0.0.255
    [R3-acl-ipv4-basic-2000]qu
    
    [R3]int g0/0
    [R3-GigabitEthernet0/0]nat ou
    [R3-GigabitEthernet0/0]nat outbound 2000
    [R3-GigabitEthernet0/0]qu
    
  6. 在 FTP-A 上配置 FTP 服务,略
    实验环境下的网络协议比较:FTP文件传输、TELNET远程登录与SSH安全通信

  7. 私网A配置 NAT SERVER 把 FTP-A 的 FTP 服务映射到公网,使用 PCB 访问 FTP-A 的 FTP 服务

    [R1]int g0/1
    [R1-GigabitEthernet0/1]nat server protocol tcp global current-interface 20 21 in
    side 192.168.1.1 20 21
    [R1-GigabitEthernet0/1]qu
    
    <PCB>ftp 100.1.1.1
    Press CTRL+C to abort.
    Connected to 100.1.1.1 (100.1.1.1).
    220 FTP service ready.
    User (100.1.1.1:(none)): wiltjer
    331 Password required for wiltjer.
    Password: 
    530 Login authentication failed
    ftp: Login failed.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> 
    
http://www.dtcms.com/a/278594.html

相关文章:

  • 中国AI应用“三分天下”:国企成主力、中小企偏订阅、C端仍在观望
  • 使用axios向服务器请求信息并渲染页面
  • TCP心跳机制详解
  • 【Linux系统】进程切换 | 进程调度——O(1)调度队列
  • 如何在服务器上运行一个github项目
  • VMware 虚拟机 Ubuntu 无法主机与虚拟机之间复制粘贴的详细解决方案
  • ZLMediaKit流媒体服务器:不用docker -java源码部署Linux问题处理
  • day20 力扣235. 二叉搜索树的最近公共祖先 力扣701.二叉搜索树中的插入操作 力扣450.删除二叉搜索树中的节点
  • 8:从USB摄像头把声音拿出来--ALSA大佬登场!
  • Bash常见条件语句和循环语句
  • rk3588平台USB 3.0 -OAK深度相机适配方法
  • springboot 好处
  • [Nagios Core] 事件调度 | 检查执行 | 插件与进程
  • JAVA 设计模式 适配器
  • 八、nginx搭建,实现vue跳转nginx跳转gateway
  • Java设计模式(java design patterns)
  • 概率论与数理统计(二)
  • Maven+Spring
  • 在Maven多模块项目中进行跨模块的SpringBoot单元测试
  • 【橘子分布式】Thrift RPC(理论篇)
  • vscode 安装 esp ide环境
  • LeetCode-283. 移动零(Java)
  • 【STM32】什么在使能寄存器或外设之前必须先打开时钟?
  • Pandas-特征工程详解
  • 零基础入门Java虚拟机与单例模式:新手友好教程
  • Modbus 开发工具实战:ModScan32 与 Wireshark 抓包分析(二)
  • VSCODE 选中多行 需要同时按住alt键才可以
  • ShenYu实战、问题记录
  • 记字节前端面试一道简单的算法题
  • 注解@Autowired和@Resource的区别